File size: 900 Bytes
0250d76
d798c5a
2eb1363
0250d76
 
2eb1363
0250d76
 
 
 
 
 
 
 
ee6e9e2
efbaaff
 
850331d
2eb1363
 
 
 
efbaaff
2eb1363
d798c5a
efbaaff
 
 
 
14c2d1c
 
 
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
from flask import request
from diffusers import StableDiffusionPipeline
import torch
from fastapi import FastAPI, Response  
from fastapi.middleware.cors import CORSMiddleware

app.add_middleware(  # add the middleware
    CORSMiddleware,
    allow_credentials=True,  # allow credentials
    allow_origins=["*"],  # allow all origins
    allow_methods=["*"],  # allow all methods
    allow_headers=["*"],  # allow all headers
)


model_id = "runwayml/stable-diffusion-v1-5"
pipe = StableDiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.float16)
pipe = pipe.to("cpu")

def dummy(images, **kwargs):
    return images, False

pipe.safety_checker = dummy

@app.route('/')
def generate_image():
    prompt = request.args.get('prompt')
    image = pipe(prompt).images[0]
    # do something with the generated image
    image_data = image.tobytes().hex()

    return {'image_data': image_data}