Spaces:
Sleeping
Sleeping
| from fastapi import FastAPI | |
| from app.env import SupportDeskEnv | |
| from app.models import Action | |
| app = FastAPI(title="SupportDeskEnv") | |
| env = SupportDeskEnv() | |
| # ----------------------------- | |
| # ROOT CHECK | |
| # ----------------------------- | |
| def root(): | |
| return {"message": "SupportDeskEnv is running 🚀"} | |
| # ----------------------------- | |
| # RESET (FIXED - BODY OPTIONAL) | |
| # ----------------------------- | |
| async def reset(req: dict = {}): | |
| level = req.get("level", "medium") | |
| obs = await env.reset(level) | |
| return {"observation": obs.model_dump()} | |
| # Optional GET (for browser testing) | |
| async def reset_get(): | |
| obs = await env.reset("medium") | |
| return {"observation": obs.model_dump()} | |
| # ----------------------------- | |
| # STEP | |
| # ----------------------------- | |
| async def step(action: Action): | |
| result = await env.step(action) | |
| return result | |
| # ----------------------------- | |
| # STATE | |
| # ----------------------------- | |
| async def state(): | |
| obs = await env.state() | |
| return {"observation": obs.model_dump()} | |
| # ----------------------------- | |
| # RUN SERVER | |
| # ----------------------------- | |
| if __name__ == "__main__": | |
| import uvicorn | |
| uvicorn.run(app, host="0.0.0.0", port=7860) |