Upload 2 files
Browse files- main.py +26 -0
- requirements.txt +5 -0
main.py
ADDED
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import flask
|
2 |
+
from flask import Flask, request, json, send_file, Response
|
3 |
+
import torch
|
4 |
+
from diffusers import StableDiffusionPipeline, EulerAncestralDiscreteScheduler
|
5 |
+
from random import randrange
|
6 |
+
|
7 |
+
repo = "Bingsu/my-korean-stable-diffusion-v1-5"
|
8 |
+
euler_ancestral_scheduler = EulerAncestralDiscreteScheduler.from_config(repo, subfolder="scheduler")
|
9 |
+
pipe = StableDiffusionPipeline.from_pretrained(
|
10 |
+
repo, scheduler=euler_ancestral_scheduler, torch_dtype=torch.float16,
|
11 |
+
)
|
12 |
+
pipe.to("cuda")
|
13 |
+
|
14 |
+
app = Flask(__name__)
|
15 |
+
|
16 |
+
@app.post('/sd')
|
17 |
+
def generate():
|
18 |
+
text = request.json['text']
|
19 |
+
seed = randrange(1, 9999999999)
|
20 |
+
generator = torch.Generator('cuda').manual_seed(seed)
|
21 |
+
image = pipe(text, num_inference_steps=25, generator=generator).images[0]
|
22 |
+
return Response(image, mimetype='image/png', direct_passthrough=True)
|
23 |
+
|
24 |
+
|
25 |
+
if __name__ == '__main__':
|
26 |
+
app.run('0.0.0.0', 8282, debug=True)
|
requirements.txt
ADDED
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
--extra-index-url https://download.pytorch.org/whl/cu116
|
2 |
+
torch
|
3 |
+
transformers
|
4 |
+
accelerate
|
5 |
+
diffusers
|