Stable-diffusion-new / handler.py
Zhibinhong's picture
Update handler.py
f17ad12
from typing import Dict, List, Any
from diffusers import StableDiffusionPipeline, DPMSolverMultistepScheduler
from PIL import Image
from io import BytesIO
import base64
import json
import io
class EndpointHandler():
def __init__(self, path=""):
model_id = "stabilityai/stable-diffusion-2-1"
self.pipe = StableDiffusionPipeline.from_pretrained(model_id)
self.pipe.scheduler = DPMSolverMultistepScheduler.from_config(self.pipe.scheduler.config)
self.pipe = self.pipe.to("cuda")
def __call__(self, data):
inputs=data['inputs']
text=inputs.pop('text',data)
img = self.pipe(text).images[0]
img.save("./1.png")
with open('./1.png','rb') as img_file:
encoded_string = base64.b64encode(img_file.read()).decode('utf-8')
return {'image':encoded_string}