-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathpyproject.toml
More file actions
110 lines (99 loc) · 2.61 KB
/
pyproject.toml
File metadata and controls
110 lines (99 loc) · 2.61 KB
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
[project]
name = "sample_efficient_gpt"
version = "1.0.5"
description = "CS336 Assignment 1"
readme = "README.md"
requires-python = "==3.13.*"
dependencies = [
"einops>=0.8.1", # tensor operations
"einx>=0.3.0", # more general tensor operations
"jaxtyping>=0.3.0", # type hints for pytorch/jax/numpy
"numpy",
"psutil>=6.0.0",
"pytest",
"regex>=2024.11.6", # more powerful regex than the builtin `re` module
"submitit>=1.5.2", # job submission for SLURM
"tiktoken>=0.9.0",
"torch",
"torchao",
"torchvision",
"triton",
# "torch~=2.8.0; sys_platform != 'darwin' or platform_machine != 'x86_64'",
# "torch~=2.2.2; sys_platform == 'darwin' and platform_machine == 'x86_64'", # Intel Macs
"tqdm>=4.67.1",
"wandb>=0.19.7",
"ty>=0.0.1a16",
"snakeviz>=2.2.2",
"maturin>=1.9.1",
"pathos",
"maturin[patchelf]",
"fastsplit",
"ipykernel>=6.30.1",
"ruff>=0.13.2",
"tokenizers>=0.22.1",
"transformers",
"prettytable>=3.16.0",
"pandas>=2.3.3",
"pyarrow",
"pyyaml>=6.0.2",
"safetensors>=0.4.5",
"datasets==4.2.0",
"accelerate>=1.11.0",
"boto3>=1.40.74",
"awscli>=1.42.74",
"botocore>=1.40.74",
"datatrove>=0.6.0",
"matplotlib>=3.10.7",
"seaborn>=0.13.2",
"scipy>=1.16.3",
"setuptools-scm>=9.2.2",
"hf-transfer>=0.1.9",
"ipywidgets>=8.1.8",
]
[build-system]
requires = ["uv_build>=0.8.3,<0.9.0"]
build-backend = "uv_build"
[tool.uv.build-backend]
module-name = "sample_efficient_gpt"
module-root = ""
[tool.uv]
package = true
python-preference = "managed"
index-strategy = "unsafe-best-match"
no-build-isolation = true
override-dependencies = ["torch==2.11.0.dev20260109+cu130", "torchvision==0.25.0.dev20260110+cu130"]
[tool.uv.sources]
torch = [
{ index = "pytorch-cu130" },
]
torchvision = [
{ index = "pytorch-cu130" },
]
torchao = [
{ index = "pytorch-cu130" },
]
vllm = { path = "../vllm", editable = true }
transformers = { path = "../transformers", editable = true }
fastsplit = { path = "sample_efficient_gpt/fastsplit", editable = true }
[[tool.uv.index]]
name = "pytorch-cu130"
url = "https://download.pytorch.org/whl/nightly/cu130"
[tool.pytest.ini_options]
log_cli = true
log_cli_level = "WARNING"
addopts = "-s"
[tool.ruff]
line-length = 120
[tool.ruff.lint.extend-per-file-ignores]
# Also ignore `E402` in all `__init__.py` files.
"__init__.py" = ["E402", "F401", "F403", "E501"]
[tool.ruff.lint]
# extend-select = ["UP"]
select = ["UP"]
ignore = [
"F722",
"UP037"
]
[tool.uv.extra-build-dependencies]
vllm = ["torch", "setuptools_scm"]
sample-efficient-gpt = ["uv_build"]