-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpixi.toml
More file actions
136 lines (119 loc) · 3.26 KB
/
pixi.toml
File metadata and controls
136 lines (119 loc) · 3.26 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
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
# pixi.toml — All-pip RAPIDS (cu12, 25.10.*) + pip Torch 2.6.0 + PyG wheels
[workspace]
name = "openRFM"
channels = ["conda-forge"] # minimal conda usage for system libs
platforms = ["linux-64"]
[system-requirements]
cuda = "12" # you have a CUDA 12-capable driver/runtime
# Pip/uv resolver setup:
# - Use PyTorch's CUDA 12.4 wheel index for torch==2.6.0+cu124
# - Use NVIDIA's PyPI for RAPIDS cu12 wheels
# - Use PyG wheel page that matches torch 2.6.0+cu124
[pypi-options]
extra-index-urls = [
"https://download.pytorch.org/whl/cu124",
"https://pypi.nvidia.com"
]
find-links = [
{ url = "https://data.pyg.org/whl/torch-2.6.0+cu124.html" }
]
# All indexes are trusted (PyPI, PyTorch, NVIDIA) — allow best version from any
index-strategy = "unsafe-best-match"
[dependencies]
# --- Core toolchain / native libs via conda ---
python = "3.12.*"
rust = "*"
uv = "*"
maturin = "*"
patchelf = "*"
graphviz = "*"
pygraphviz = "*"
# (Everything below comes from pip to keep ABI/story consistent)
[pypi-dependencies]
# --- PyTorch (pip) CUDA 12.4 build ---
torch = "==2.6.0+cu124"
# --- RAPIDS cu12 (pip) — 25.10 line ---
cudf-cu12 = "==25.10.*"
dask-cudf-cu12 = "==25.10.*"
cuml-cu12 = "==25.10.*"
cugraph-cu12 = "==25.10.*"
nx-cugraph-cu12 = "==25.10.*"
cuxfilter-cu12 = "==25.10.*"
cucim-cu12 = "==25.10.*"
pylibraft-cu12 = "==25.10.*"
raft-dask-cu12 = "==25.10.*"
cuvs-cu12 = "==25.10.*"
# (rmm is pulled transitively; add `rmm-cu12 ==25.10.*` only if pip complains)
# --- PyTorch Geometric (pip) + CUDA extensions matching Torch 2.6.0+cu124 ---
torch-geometric = "*"
pyg_lib = "*"
torch_scatter = "*"
torch_sparse = "*"
torch_cluster = "*"
torch_spline_conv = "*"
# --- Your existing PyPI deps ---
numpy = "*"
pandas = "*"
tqdm = "*"
pyarrow = "*"
pillow = "*"
pooch = "*"
duckdb = "*"
scikit-learn = "<1.6.0"
typing-extensions = "*"
pytorch-lightning = "*"
hydra-core = "*"
maturin_import_hook = "*"
ml_dtypes = "*"
orjson = "*"
gdown = "*"
polars = "*"
einops = "*"
wandb = "*"
loguru = "*"
sentence-transformers = "*"
strictfire = "*"
pympler = "*"
ipdb = "*"
matplotlib = "*"
seaborn = "*"
datasets = "*"
# --- DFS / feature engineering ---
featuretools = "*"
woodwork = "*"
setuptools = "<75" # woodwork needs pkg_resources, removed in setuptools 75+
sqlglot = "*"
sql-formatter = "*"
# --- ML models & HPO ---
tabpfn = "*"
lightgbm = "*"
xgboost = "*"
catboost = "*"
optuna = "*"
hyperopt = "*"
anthropic = "*"
boto3 = "*"
# --- Core scientific / data ---
scipy = "*"
pydantic = "*"
sqlalchemy = "*"
torchmetrics = "*"
transformers = "*"
psutil = "*"
python-dotenv = "*"
cupy-cuda12x = "*"
# --- Local editable packages ---
pytorch-frame = { path = "./pytorch-frame", editable = true }
relbench = { path = "./relbench", editable = true }
rustler = { path = "./rustler", editable = true }
contextgnn = { path = "./ContextGNN", editable = true }
[environments]
iclr = { solve-group = "default" }
[tasks]
# Rebuild rustler after making changes to Rust code
rt-build = """
maturin develop --manifest-path rustler/Cargo.toml --release --uv && \
cp rustler/target/release/librustler.so .pixi/envs/default/lib/python3.12/site-packages/rustler/rustler.abi3.so
"""
# Quick rebuild without reinstall (just compiles)
rt-compile = "cargo build --release --manifest-path rustler/Cargo.toml"