Re-use webui fastapi application rather than requiring one or the other, not both.

This commit is contained in:
Ryan Voots 2022-10-17 12:49:33 -04:00 committed by AUTOMATIC1111
parent f29b16bad1
commit c3851a853d
2 changed files with 9 additions and 11 deletions

View File

@ -2,15 +2,13 @@ from modules.api.processing import StableDiffusionProcessingAPI
from modules.processing import StableDiffusionProcessingTxt2Img, process_images
import modules.shared as shared
import uvicorn
from fastapi import FastAPI, Body, APIRouter
from fastapi import Body, APIRouter
from fastapi.responses import JSONResponse
from pydantic import BaseModel, Field, Json
import json
import io
import base64
app = FastAPI()
class TextToImageResponse(BaseModel):
images: list[str] = Field(default=None, title="Image", description="The generated image in base64 format.")
parameters: Json
@ -18,7 +16,7 @@ class TextToImageResponse(BaseModel):
class Api:
def __init__(self):
def __init__(self, app):
self.router = APIRouter()
app.add_api_route("/v1/txt2img", self.text2imgapi, methods=["POST"])

View File

@ -96,14 +96,11 @@ def initialize():
def api():
initialize()
from modules.api.api import Api
api = Api()
api.launch(server_name="0.0.0.0" if cmd_opts.listen else "127.0.0.1", port=cmd_opts.port if cmd_opts.port else 7861)
api = Api(app)
def webui():
def webui(launch_api=False):
initialize()
while 1:
@ -122,6 +119,9 @@ def webui():
app.add_middleware(GZipMiddleware, minimum_size=1000)
if (launch_api):
api(app)
while 1:
time.sleep(0.5)
if getattr(demo, 'do_restart', False):
@ -143,6 +143,6 @@ def webui():
if __name__ == "__main__":
if cmd_opts.api:
api()
webui(True)
else:
webui()
webui(False)