File size: 1,246 Bytes
3ae4f59 1ef9a26 3ae4f59 4914a46 21ee4e7 5ca3701 3ae4f59 4914a46 3ae4f59 4914a46 3ae4f59 4914a46 3ae4f59 0958108 3ae4f59 4914a46 0958108 5ca3701 21ee4e7 6bf5190 3ae4f59 21ee4e7 6c77734 21ee4e7 3ae4f59 | 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 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | from fastapi import FastAPI,Request,HTTPException,Response
from pydantic import BaseModel
from typing import Optional
from fastapi.responses import JSONResponse
from fastapi.middleware.cors import CORSMiddleware
import json
import base64
from engine import UCGEngine,TOOLS
from components.ucg_g1 import UGC_GRAPH_1
from app_layer_agent import UCGBRIDGE
app=FastAPI()
runner = UCGEngine(UGC_GRAPH_1,TOOLS)
origins=["*"]
app.add_middleware(
CORSMiddleware,
allow_origins=origins,
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
class UGCState(BaseModel):
address: str
to: Optional[str] = None
amount: Optional[str] = None
payload: Optional[str] = None
class Ugcinput(BaseModel):
operation:str
state:UGCState
class Prompt(BaseModel):
prompt:str
@app.post("/ucg")
async def UCG(request:Prompt):
#loadedstate=request.state.model_dump()
#out=runner.run(request.operation,loadedstate)
#out=run_conversation(user_input)
ucb=UCGBRIDGE()
out=ucb.run_conversation(request.prompt)
#return JSONResponse(content={"response":out,"executed":str(runner.executed)})
return JSONResponse(content={"response":out})
|