from fastapi import FastAPI import uvicorn from env.feed_env import FeedRankingEnv from agents.random_agent import RandomAgent app = FastAPI() env = FeedRankingEnv(task="hard") agent = RandomAgent() @app.get("/") def root(): return {"message": "OpenEnv server running"} @app.post("/reset") def reset(): state = env.reset() return {"state": state.__dict__} @app.post("/step") def step(): action = agent.act(env.state(), env.posts) state, reward, done, _ = env.step(action) return { "state": state.__dict__, "reward": reward, "done": done } def main(): uvicorn.run("server.app:app", host="0.0.0.0", port=7860) if __name__ == "__main__": main()