Venn

Contributing to Venn#

Thanks for helping. Please read the code of conduct first.

Set up#

python3.12 -m venv .venv
source .venv/bin/activate
python -m pip install torch --index-url https://download.pytorch.org/whl/cpu   # optional, CPU-only
python -m pip install -e '.[dev]'

For Linux ARM64 or native Windows ARM64, follow the platform setup. On Windows, use .\.venv\Scripts\python.exe in place of python in the checks below.

Check your change#

python -m pyflakes venn scripts examples tests
python scripts/update_doc_navigation.py --check
python scripts/check_docs.py
python -m pytest -q

Tests use deterministic fake embeddings and small untrained fixtures, so they need no reader or head download and no GPU. Tests for optional adapters skip unless their extras are installed; install .[adapters] to run them.

CI lints, runs the tests, exercises unmodified upstream Decisions clients against the contract server and smoke-tests the built wheel.

Pull requests#

  • Explain the problem, the user-visible behavior and how you checked it.
  • Add or update tests for changed behavior, and keep examples runnable.
  • Keep synthetic fixtures clearly distinct from measured results.
  • Do not change the frozen benchmark protocol to improve a number; create a new benchmark version instead.
  • Never include private text, embeddings, credentials or model files in an issue or pull request.

Security issues go through the private channel in SECURITY.md. The maintainer guide is in docs/maintainers.

View this page on GitHub

On this page