Furkan12 commited on
Commit
c1e9d10
1 Parent(s): c6cb106
Files changed (1) hide show
  1. app.py +10 -6
app.py CHANGED
@@ -5,19 +5,23 @@ import numpy as np
5
  from PIL import Image
6
  from diffusers import DiffusionPipeline
7
  from huggingface_hub import login
8
- #import os
9
-
10
- #login(token=os.environ.get('HF_KEY'))
 
 
 
11
 
12
  import torch
13
  from diffusers import StableDiffusionPipeline, DPMSolverMultistepScheduler
14
 
15
  model_id = "stabilityai/stable-diffusion-2-1"
16
 
 
17
  # Use the DPMSolverMultistepScheduler (DPM-Solver++) scheduler here instead
18
  pipe = StableDiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.float16)
19
  pipe.scheduler = DPMSolverMultistepScheduler.from_config(pipe.scheduler.config)
20
- pipe = pipe.to("cpu")
21
 
22
  def resize(value,img):
23
  img = Image.open(img)
@@ -28,7 +32,7 @@ def infer(source_img, prompt, negative_prompt, guide, steps, seed, Strength):
28
  generator = torch.Generator(device).manual_seed(seed)
29
  source_image = resize(768, source_img)
30
  source_image.save('source.png')
31
- image = pipe(prompt, negative_prompt=negative_prompt, image=source_image, strength=Strength, guidance_scale=guide, num_inference_steps=steps).images[0]
32
  return image
33
 
34
  gr.Interface(fn=infer, inputs=[gr.Image(source="upload", type="filepath", label="Raw Image. Must Be .png"), gr.Textbox(label = 'Prompt Input Text. 77 Token (Keyword or Symbol) Maximum'), gr.Textbox(label='What you Do Not want the AI to generate.'),
@@ -36,4 +40,4 @@ gr.Interface(fn=infer, inputs=[gr.Image(source="upload", type="filepath", label=
36
  gr.Slider(1, 25, value = 10, step = 1, label = 'Number of Iterations'),
37
  gr.Slider(label = "Seed", minimum = 0, maximum = 987654321987654321, step = 1, randomize = True),
38
  gr.Slider(label='Strength', minimum = 0, maximum = 1, step = .05, value = .5)],
39
- outputs='image', title = "Stable Diffusion XL 1.0 Image to Image Pipeline CPU", description = "For more information on Stable Diffusion XL 1.0 see https://huggingface.co/stabilityai/stable-diffusion-xl-refiner-1.0 <br><br>Upload an Image (<b>MUST Be .PNG and 512x512 or 768x768</b>) enter a Prompt, or let it just do its Thing, then click submit. 10 Iterations takes about ~900-1200 seconds currently. For more informationon about Stable Diffusion or Suggestions for prompts, keywords, artists or styles see https://github.com/Maks-s/sd-akashic", article = "Code Monkey: <a href=\"https://huggingface.co/Manjushri\">Manjushri</a>").queue(max_size=5).launch()
 
5
  from PIL import Image
6
  from diffusers import DiffusionPipeline
7
  from huggingface_hub import login
8
+ import gradio as gr
9
+ import torch
10
+ import numpy as np
11
+ from PIL import Image
12
+ from datasets import load_dataset
13
+ from diffusers import StableDiffusionImg2ImgPipeline
14
 
15
  import torch
16
  from diffusers import StableDiffusionPipeline, DPMSolverMultistepScheduler
17
 
18
  model_id = "stabilityai/stable-diffusion-2-1"
19
 
20
+ device = "cuda" if torch.cuda.is_available() else "cpu"
21
  # Use the DPMSolverMultistepScheduler (DPM-Solver++) scheduler here instead
22
  pipe = StableDiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.float16)
23
  pipe.scheduler = DPMSolverMultistepScheduler.from_config(pipe.scheduler.config)
24
+ pipe = pipe.to(device)
25
 
26
  def resize(value,img):
27
  img = Image.open(img)
 
32
  generator = torch.Generator(device).manual_seed(seed)
33
  source_image = resize(768, source_img)
34
  source_image.save('source.png')
35
+ image = pipe(prompt, negative_prompt=negative_prompt, init_image=source_image, strength=Strength, guidance_scale=guide, num_inference_steps=steps).images[0]
36
  return image
37
 
38
  gr.Interface(fn=infer, inputs=[gr.Image(source="upload", type="filepath", label="Raw Image. Must Be .png"), gr.Textbox(label = 'Prompt Input Text. 77 Token (Keyword or Symbol) Maximum'), gr.Textbox(label='What you Do Not want the AI to generate.'),
 
40
  gr.Slider(1, 25, value = 10, step = 1, label = 'Number of Iterations'),
41
  gr.Slider(label = "Seed", minimum = 0, maximum = 987654321987654321, step = 1, randomize = True),
42
  gr.Slider(label='Strength', minimum = 0, maximum = 1, step = .05, value = .5)],
43
+ outputs='image', title = "Stable Diffusion 2.1 Image to Image Pipeline CPU", description = "For more information on Stable Diffusion 2.1 see https://github.com/Stability-AI/stablediffusion <br><br>Upload an Image (<b>MUST Be .PNG and 512x512 or 768x768</b>) enter a Prompt, or let it just do its Thing, then click submit. 10 Iterations takes about ~900-1200 seconds currently. For more informationon about Stable Diffusion or Suggestions for prompts, keywords, artists or styles see https://github.com/Maks-s/sd-akashic", article = "Code Monkey: <a href=\"https://huggingface.co/Manjushri\">Manjushri</a>").queue(max_size=5).launch()