Pull requests / #264
#264 tests: make iq_parity reproducible from a fresh checkout
closed · @j-luwierski · 0 comments · View on GitHub
Setup & installModels & quants
Description
The i-quant fixtures were never published, so iq_parity reported ten "missing fixture" failures on any fresh tree. tools/iq_fixture.py now generates them deterministically (seeded rows/cols, RandomState) into the BUILD directory: for each of the ten types it writes the raw block bytes (sane fp16 scales at each layout's scale offsets, seeded index and sub-scale bytes) plus the gguf-py dequantized reference - gguf-py is dequant-only for the i-quants, so no quantizer is needed, and Q2_0 (the repository's type 42) uses tools/gguf_writer.py's codec. The kernel type ids in the headers match the vendored gguf-py's enum one for one. Dependencies: python3 with numpy and the vendored gguf-py - nothing is pip-installed, and CMake probes the configured interpreter and .venv, registering the tests only when a usable interpreter is found and saying so otherwise. CTest now runs iq_parity (previously built but never registered) with the fixtures as an explicit CTest fixture: generation completes before the test even under parallel execution, and a generation failure fails the run. The missing-fixture diagnostic names both candidate files and the generating command; the nonzero exit is preserved.
Related on strata.com
Editorial links to help you install, pick models, or read release notes — not part of the upstream thread.