[project] name = "fathom" version = "0.1.0" description = "FATHOM — First RL-Trained Recursive Language Model" requires-python = ">=3.11,<3.12" dependencies = [ "openenv-core[core]>=0.2.3,<0.3", "fastapi>=0.115,<0.120", "uvicorn[standard]>=0.32,<1.0", "pydantic>=2.9,<3.0", "RestrictedPython>=7.4,<8.0", "tiktoken>=0.7,<1.0", "httpx>=0.27,<1.0", ] [project.optional-dependencies] train = [ "torch==2.6.0", "transformers==4.49.0", "accelerate==1.5.2", "peft==0.14.0", "bitsandbytes==0.45.1", "trl==1.2.0", "unsloth==2026.4.8", "unsloth-zoo", "vllm==0.7.3", "datasets==3.3.2", "huggingface_hub>=0.28,<1.0", "wandb>=0.18,<1.0", "hydra-core>=1.3,<2.0", "omegaconf>=2.3,<3.0", ] viz = [ "streamlit>=1.39,<2.0", "plotly>=5.24,<6.0", "matplotlib>=3.9,<4.0", ] data = [ "anthropic>=0.40,<1.0", ] dev = [ "pytest>=8.0,<9.0", "hydra-core>=1.3,<2.0", "omegaconf>=2.3,<3.0", ] [build-system] requires = ["hatchling"] build-backend = "hatchling.build" [tool.pytest.ini_options] markers = [ "slow: marks tests that regenerate data or download models", "reward_audit: REW-06 automated anti-reward-hacking audits", ] [tool.hatch.build.targets.wheel] packages = ["env", "train", "rewards", "data"]