Spaces:
Running
Running
| # PROJECT.md β OpenEnv Environment Project | |
| ## π― Project Overview | |
| **Environment Name:** `[ENV_NAME]` | |
| **Domain:** `[DOMAIN]` _(e.g., Software Engineering / Finance / Healthcare / Legal)_ | |
| **Task Summary:** `[ONE_SENTENCE_DESCRIPTION_OF_REAL_WORLD_TASK]` | |
| > β οΈ This must be a **real-world task** β not a game or toy environment. | |
| --- | |
| ## π Official OpenEnv References (Always Follow) | |
| | # | Tutorial | | |
| |---|---------| | |
| | 1 | [01-environments.md](https://github.com/meta-pytorch/OpenEnv/blob/main/tutorial/01-environments.md) | | |
| | 2 | [02-deployment.md](https://github.com/meta-pytorch/OpenEnv/blob/main/tutorial/02-deployment.md) | | |
| | 3 | [03-scaling.md](https://github.com/meta-pytorch/OpenEnv/blob/main/tutorial/03-scaling.md) | | |
| | 4 | [04-training.md](https://github.com/meta-pytorch/OpenEnv/blob/main/tutorial/04-training.md) | | |
| --- | |
| ## π High-Level Pipeline | |
| ``` | |
| [REAL_WORLD_TASK / DATA_SOURCE] | |
| β | |
| βΌ | |
| OpenEnv Environment (server/environment.py) | |
| β FastAPI (server/app.py) ββ Docker | |
| βΌ | |
| HTTPEnvClient (client.py) | |
| β reset() / step() / state() | |
| βΌ | |
| GRPO Training (TRL + vLLM) | |
| β | |
| βΌ | |
| Fine-tuned LLM β pushed to Hugging Face Hub | |
| ``` | |
| --- | |
| ## π¦ Tech Stack | |
| | Layer | Technology | | |
| |-------|-----------| | |
| | Environment server | FastAPI + Uvicorn | | |
| | Containerisation | Docker | | |
| | Deployment | Hugging Face Spaces | | |
| | Training framework | TRL (GRPOTrainer) | | |
| | Model backend | vLLM (colocate mode) | | |
| | Base model | `[BASE_MODEL]` _(e.g., Qwen/Qwen3-1.7B)_ | | |
| | Package manager | `uv` | | |
| --- | |
| ## π Repository Layout | |
| ``` | |
| [ENV_NAME]/ | |
| βββ server/ | |
| β βββ app.py β FastAPI entry point | |
| β βββ environment.py β Core environment logic | |
| β βββ Dockerfile | |
| βββ models.py β Typed Action / Observation / State | |
| βββ client.py β HTTPEnvClient subclass | |
| βββ openenv.yaml β Manifest (required) | |
| βββ pyproject.toml | |
| ``` | |
| --- | |
| ## β Definition of Done | |
| - [ ] `openenv init` scaffold created | |
| - [ ] `models.py` β typed `Action`, `Observation`, `State` defined | |
| - [ ] `environment.py` β `reset()`, `step()`, `state` implemented | |
| - [ ] `server/app.py` β uses `create_fastapi_app(env)` | |
| - [ ] `curl /health` β `{"status": "healthy"}` | |
| - [ ] Docker image builds and runs locally | |
| - [ ] Pushed to HF Spaces via `openenv push` | |
| - [ ] GRPO training runs end-to-end | |
| - [ ] Fine-tuned model pushed to HF Hub | |
| - [ ] Evaluation metrics recorded | |