|
from fastapi import FastAPI |
|
from pydantic import BaseModel |
|
import gradio as gr |
|
import uvicorn |
|
from fastapi.middleware.cors import CORSMiddleware |
|
import threading |
|
|
|
app = FastAPI() |
|
|
|
origins = [ |
|
"http://localhost", |
|
"http://localhost:8000", |
|
"https://try.w3schools.com", |
|
] |
|
|
|
|
|
|
|
app.add_middleware( |
|
CORSMiddleware, |
|
allow_origins=origins, |
|
allow_credentials=True, |
|
allow_methods=["*"], |
|
allow_headers=["*"], |
|
|
|
) |
|
|
|
class Item(BaseModel): |
|
prompt: str |
|
zeitstempel: int |
|
|
|
@app.post("/items/") |
|
async def create_item(item: Item): |
|
global prompt |
|
prompt = item.prompt |
|
zeitstempel = item.zeitstempel |
|
return {"prompt": prompt, "zeitstempel": zeitstempel} |
|
|
|
|
|
prompt = "" |
|
|
|
def get_prompt(): |
|
return prompt |
|
|
|
gr_interface = gr.Interface(fn=get_prompt, inputs=[], outputs="text", live=True) |
|
|
|
def start_gradio(): |
|
gr_interface.launch() |
|
|
|
@app.get("/") |
|
def read_root(): |
|
return {"message": "Willkommen am Root-Endpunkt."} |
|
|
|
if __name__ == "__main__": |
|
|
|
threading.Thread(target=start_gradio).start() |
|
uvicorn.run(app, host="0.0.0.0", port=8000) |
|
|