lmellory commited on
Commit
7b5976d
·
verified ·
1 Parent(s): d945d1f
Files changed (1) hide show
  1. app.py +11 -7
app.py CHANGED
@@ -2,23 +2,27 @@ import gradio as gr
2
  from diffusers import StableDiffusionXLPipeline
3
  import torch
4
 
5
- # Load Turbo model with optimizations
6
  pipe = StableDiffusionXLPipeline.from_pretrained("stabilityai/sdxl-turbo", torch_dtype=torch.float16, variant="fp16", safety_checker=None)
7
- pipe.enable_model_cpu_offload() # Ключ для бесплатного tier
8
  pipe.enable_vae_slicing()
 
9
  pipe = pipe.to("cuda" if torch.cuda.is_available() else "cpu")
10
 
11
  def generate(prompt, steps=4, guidance=0.0, seed=42):
12
- generator = torch.Generator("cuda").manual_seed(seed) if torch.cuda.is_available() else None
13
- image = pipe(prompt, num_inference_steps=steps, guidance_scale=guidance, generator=generator).images[0]
14
- return image
 
 
 
15
 
16
  with gr.Blocks() as demo:
17
  gr.Markdown("# Epic AI Art Generator 🔥")
18
  gr.Markdown("Сделано для моей девушки ❤️ Генерирует арты за секунды! Попробуй на русском или английском.")
19
 
20
  with gr.Row():
21
- prompt = gr.Textbox(label="Prompt (описание)", placeholder="рыжий кот космонавт или romantic couple at sunset")
22
  steps = gr.Slider(1, 10, value=4, step=1, label="Шаги (steps) — 4 для скорости")
23
  guidance = gr.Slider(0, 5, value=0.0, step=0.5, label="Guidance (0 для Turbo)")
24
  seed = gr.Slider(0, 999999, value=42, label="Seed")
@@ -32,6 +36,6 @@ with gr.Blocks() as demo:
32
  gr.Markdown("### Примеры:")
33
  gr.Markdown("- 'милый рыжий кот в космосе'")
34
  gr.Markdown("- 'романтическая пара на пляже на закате'")
35
- gr.Markdown("- 'супергеройская пара в городе'")
36
 
37
  demo.launch()
 
2
  from diffusers import StableDiffusionXLPipeline
3
  import torch
4
 
5
+ # Load Turbo model with max optimization
6
  pipe = StableDiffusionXLPipeline.from_pretrained("stabilityai/sdxl-turbo", torch_dtype=torch.float16, variant="fp16", safety_checker=None)
7
+ pipe.enable_model_cpu_offload() # Разгружает на CPU, если GPU мало
8
  pipe.enable_vae_slicing()
9
+ pipe.enable_attention_slicing()
10
  pipe = pipe.to("cuda" if torch.cuda.is_available() else "cpu")
11
 
12
  def generate(prompt, steps=4, guidance=0.0, seed=42):
13
+ try:
14
+ generator = torch.Generator("cuda").manual_seed(seed) if torch.cuda.is_available() else None
15
+ image = pipe(prompt, num_inference_steps=steps, guidance_scale=guidance, generator=generator).images[0]
16
+ return image
17
+ except Exception as e:
18
+ return f"Ошибка генерации: {str(e)}. Попробуй проще prompt или меньше шагов. GPU перегружен."
19
 
20
  with gr.Blocks() as demo:
21
  gr.Markdown("# Epic AI Art Generator 🔥")
22
  gr.Markdown("Сделано для моей девушки ❤️ Генерирует арты за секунды! Попробуй на русском или английском.")
23
 
24
  with gr.Row():
25
+ prompt = gr.Textbox(label="Prompt (описание)", placeholder="кот в стиле Гарри Поттера")
26
  steps = gr.Slider(1, 10, value=4, step=1, label="Шаги (steps) — 4 для скорости")
27
  guidance = gr.Slider(0, 5, value=0.0, step=0.5, label="Guidance (0 для Turbo)")
28
  seed = gr.Slider(0, 999999, value=42, label="Seed")
 
36
  gr.Markdown("### Примеры:")
37
  gr.Markdown("- 'милый рыжий кот в космосе'")
38
  gr.Markdown("- 'романтическая пара на пляже на закате'")
39
+ gr.Markdown("- 'кот в стиле Гарри Поттера'")
40
 
41
  demo.launch()