File size: 1,130 Bytes
8360c81
 
 
 
 
5f01889
 
 
 
8360c81
 
 
 
5f01889
 
8360c81
5f01889
ba138bc
8360c81
5f01889
 
8360c81
34e882e
5f01889
8360c81
5f01889
8360c81
34e882e
5f01889
8360c81
 
5f01889
8360c81
 
 
 
ba138bc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import streamlit as st
from diffusers import StableDiffusionPipeline
import torch
from PIL import Image
import io
import os

# Force CPU usage on Spaces
os.environ["CUDA_VISIBLE_DEVICES"] = ""

@st.cache_resource
def load_model():
    pipe = StableDiffusionPipeline.from_pretrained(
        "runwayml/stable-diffusion-v1-5",
        torch_dtype=torch.float32,
    )
    pipe.to("cpu")  # Force CPU usage
    return pipe

# Streamlit UI
st.title("🎨 AI Image Generator (CPU - Hugging Face Spaces)")

prompt = st.text_input("Enter your prompt:", 
                       "A multi-dimensional futuristic city with glowing lights, fractals, 8K")

guidance = st.slider("Creativity (Guidance Scale)", 1.0, 20.0, 7.5)

if st.button("Generate"):
    with st.spinner("Generating image on CPU... please wait ⏳"):
        pipe = load_model()
        image = pipe(prompt, guidance_scale=guidance).images[0]

        st.image(image, caption="Generated Image", use_column_width=True)

        buf = io.BytesIO()
        image.save(buf, format="PNG")
        st.download_button("Download Image", buf.getvalue(), "generated.png", "image/png")