bind2_0 / release /BUILD.md
SecludedCorner's picture
bind2_0: release package
8182d87 verified
|
Raw
History Blame Contribute Delete
1.99 kB
# Building `bind2_0`
**Verdict: BLOCKED****Does not run as-is.** The blockers are listed below and are real, not cosmetic. A launcher works around what can be worked around without editing frozen files; the rest is stated honestly rather than papered over.
## Dependencies
```
torch==2.12.1
numpy==2.4.6
tokenizers==0.22.2
flash-linear-attention==0.5.1 # CUDA-only (Triton kernels)
# on Windows also: triton-windows==3.7.1.post27
```
Python 3.11 is the version everything here was developed and smoke-tested against.
## Known blockers and portability notes
- train_bind2_0_babylm.py:20 reads os.environ['BABYLM_WORK'] as a bare subscript at module scope -- an uncaught KeyError with no default. The shipped launcher works around this without editing the file.
- dev='cuda' is hardcoded at :30 with no CPU path.
- flash-linear-attention is a hard dependency and its kernels are CUDA-only, so this package cannot run on CPU or on non-NVIDIA hardware at all.
## Launcher
`run_train.py` exists because this package's trainer hardcodes machine-specific inputs inside files that are frozen and must not be edited, so the launcher supplies them from outside instead.
**How it does that differs by package, so read `run_train.py`'s own docstring rather than this paragraph.** Some launchers import the frozen modules and rebind module-level constants before the entry point runs; at least one cannot, because its trainer reads an environment variable at import time and rebinding the attribute afterwards is already too late -- that launcher sets the variable first. Each launcher documents its own mechanism, and each was checked against the source it works around.
## Inputs you must supply
- `alaya-strict-small/tokens_u16.bin` (~32.6 MB) — status: REFERENCED-TOO-LARGE
## Verification
Every `.py` in `src/` is byte-identical to the working-tree file recorded in `MANIFEST.json` and compiles under Python 3.11 (`python -m compileall src`).