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})