Spaces:
Sleeping
Sleeping
File size: 1,172 Bytes
43912d4 728bc12 37b04ce 43912d4 37b04ce 43912d4 728bc12 43912d4 37b04ce | 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 | from __future__ import annotations
from fastapi import Body, FastAPI
import uvicorn
from server.environment import OpenEnvAdapter, ResetRequest, StepRequest
app = FastAPI(title="EthicsGuard")
adapter = OpenEnvAdapter()
@app.get("/")
async def root() -> dict[str, str]:
return {"name": "ethicsguard", "status": "ok"}
@app.get("/health")
async def health() -> dict[str, str]:
return {"status": "ok"}
@app.post("/reset")
async def reset(request: ResetRequest | None = Body(default=None)) -> dict[str, object]:
return (await adapter.reset(request)).model_dump()
@app.post("/step")
async def step(request: StepRequest) -> dict[str, object]:
return (await adapter.step(request)).model_dump()
@app.get("/state")
async def state() -> dict[str, object]:
return (await adapter.state()).model_dump()
@app.get("/tasks")
async def tasks() -> dict[str, object]:
return (await adapter.tasks()).model_dump()
@app.post("/close")
async def close() -> dict[str, str]:
await adapter.close()
return {"status": "closed"}
def main() -> None:
uvicorn.run("server.app:app", host="0.0.0.0", port=7860)
if __name__ == "__main__":
main()
|