Rohit-2002's picture
Update app.py
acfa9cc verified
Raw
History Blame Contribute Delete
1.38 kB
from fastapi import FastAPI, Body
from fastapi.responses import JSONResponse
from env.environment import CustomerSupportEnv
from env.models import Action
app = FastAPI()
env = CustomerSupportEnv()
# ✅ ROOT (IMPORTANT FOR HUGGING FACE VALIDATION)
@app.get("/")
def home():
return {
"message": "Customer Support AI is running",
"endpoints": {
"reset": "/reset (POST)",
"step": "/step (POST)"
}
}
# 🔹 RESET
@app.post("/reset")
def reset(dummy: dict = Body(default={})):
obs = env.reset()
return JSONResponse(content={
"observation": {
"customer_query": obs.customer_query,
"conversation_history": obs.conversation_history,
"ticket_status": obs.ticket_status,
"sentiment": obs.sentiment,
"progress": float(obs.progress)
}
})
# 🔹 STEP
@app.post("/step")
def step(action: Action):
obs, reward, done, info = env.step(action)
return JSONResponse(content={
"observation": {
"customer_query": obs.customer_query,
"conversation_history": obs.conversation_history,
"ticket_status": obs.ticket_status,
"sentiment": obs.sentiment,
"progress": float(obs.progress)
},
"reward": float(reward),
"done": bool(done),
"info": info
})