Development
June 3, 2026 · View on GitHub
Editable install
We recommend installing into an isolated environment — the dependencies include several GB of CUDA-built wheels.
python -m venv .venv && source .venv/bin/activate
For development, install the package in editable mode so changes to the source tree are picked up without reinstalling:
pip install -e .
or with uv:
uv venv && source .venv/bin/activate
uv pip install -e .
Pre-commit hooks
This repo uses pre-commit to run lint, format, and
type checks (ruff, mypy, etc.) before each commit.
Install once per clone:
pip install pre-commit
pre-commit install
pre-commit install registers a git hook in .git/hooks/pre-commit, so it
requires the directory to be a git repo. The hooks now run automatically on
git commit against staged files.
To run the hooks manually against every file in the repo (useful right after the first install, or in CI):
pre-commit run --all-files
The first run downloads each hook's environment (ruff, mypy, etc.) into
~/.cache/pre-commit/ and may take a minute. Subsequent runs are fast.
To bump pinned hook versions in .pre-commit-config.yaml:
pre-commit autoupdate