File size: 1,251 Bytes
071ba6b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
56
57
58
59
[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"]