man08man commited on
Commit
f1c4de5
Β·
verified Β·
1 Parent(s): ebb744d

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +44 -28
app.py CHANGED
@@ -1,29 +1,45 @@
1
- import gradio as gr
2
- from diffusers import StableDiffusionPipeline, EulerDiscreteScheduler
3
- import torch
4
- import random
5
-
6
- # No authentication needed for SD v2
7
- model_id = "stabilityai/stable-diffusion-2-1-base"
8
-
9
- # Initialize the model
10
- scheduler = EulerDiscreteScheduler.from_pretrained(model_id, subfolder="scheduler")
11
- pipe = StableDiffusionPipeline.from_pretrained(
12
- model_id,
13
- scheduler=scheduler,
14
- torch_dtype=torch.float32 # Works on CPU
15
- ).to("cpu")
16
-
17
- def generate_image(prompt):
18
- seed = random.randint(0, 1000000) # Random seed
19
- generator = torch.Generator("cpu").manual_seed(seed)
20
- image = pipe(prompt, generator=generator).images[0]
21
- return image
22
-
23
- # Create interface
24
- gr.Interface(
25
- fn=generate_image,
26
- inputs=gr.Textbox(label="Type anything (e.g., 'dog')"),
27
- outputs=gr.Image(label="Generated Image"),
28
- title="Free AI Image Generator"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
29
  ).launch()
 
1
+ import gradio as gr
2
+ from diffusers import StableDiffusionPipeline, EulerDiscreteScheduler
3
+ import torch
4
+ import random
5
+
6
+ # No token needed
7
+ model_id = "stabilityai/stable-diffusion-2-1-base" # βœ… New model ID
8
+ pipe = StableDiffusionPipeline.from_pretrained(model_id) # βœ… Simplified
9
+
10
+ # Add before initializing the pipeline
11
+ from diffusers import EulerDiscreteScheduler
12
+
13
+ scheduler = EulerDiscreteScheduler.from_pretrained(
14
+ model_id,
15
+ subfolder="scheduler" # βœ… Required for SD v2
16
+ )
17
+
18
+ # Include in pipeline initialization
19
+ pipe = StableDiffusionPipeline.from_pretrained(
20
+ model_id,
21
+ scheduler=scheduler, # βœ… Add this
22
+ torch_dtype=torch.float32
23
+ )
24
+
25
+ # Old (might try to use GPU):
26
+ pipe.to("cuda")
27
+
28
+ # New (force CPU):
29
+ pipe.to("cpu") # βœ… Explicit CPU usage
30
+
31
+ pipe.enable_attention_slicing() # βœ… Reduces RAM usage
32
+
33
+ def generate_image(prompt):
34
+ seed = random.randint(0, 1000000) # Random seed
35
+ generator = torch.Generator("cpu").manual_seed(seed)
36
+ image = pipe(prompt, generator=generator).images[0]
37
+ return image
38
+
39
+ # Create interface
40
+ gr.Interface(
41
+ fn=generate_image,
42
+ inputs=gr.Textbox(label="Type anything (e.g., 'dog')"),
43
+ outputs=gr.Image(label="Generated Image"),
44
+ title="Free AI Image Generator"
45
  ).launch()