Low-bit quantization of LFM2.5-2.6B (DavidAU Turbo-Brilliance BF16 GGUF): research checkpoint archive

This is the private archive of every checkpoint from the study reported in hotocooo/lfm25-gsq-replication-diagnosis. It holds the quantized codes, dequantized weights, and the Fisher / K-FAC statistics. The report has the methods, findings and the timestamped change log. This card says what each file is and how to load it.

Status: research artifacts, not release models. Several runs here are deliberately broken or withdrawn, and they are labelled below. The numbers are single-seed unless the table says otherwise. Nothing here is a claim that one method beats another; that needs the report's pre-registered protocol (3 seeds, exact bytes, zero-shot accuracy). Every file was sha256-verified against the local copy before that copy was deleted.

The quantized file is DavidAU's Turbo-Brilliance BF16 GGUF, not a Liquid release: DavidAU/LFM2.5-2.6B-Qwen3.8-Turbo-Brilliance-Power-X12-NEO-MAX-GGUF, file LFM2.5-2.6B-Q3.8-TBrilliance-BF16.gguf at revision ba98a160, sha256 c86cd3c3f4f9fd71.... Lineage per its card: LiquidAI/LFM2.5-2.6B-Base → LiquidAI/LFM2.5-2.6B → DavidAU "Turbo-Brilliance". Measured: 246 / 266 tensors are bit-identical to LiquidAI/LFM2.5-2.6B@654f9463, and the 20 F32 short-conv kernels match up to 10,412 subnormals that our GGUF→HF conversion flushed to 0. So the weights are Liquid's instruct weights (report, Finding 6). We converted it to HF safetensors and checked it against llama.cpp. Liquid's weights are under the LFM Open License v1.0, while DavidAU's card says apache-2.0; everything here follows the upstream lfm1.0 terms. The converted BF16 model is archived at models/lfm25-tb-hf/ once uploaded.

Runs

KL = mean per-token KL(BF16 ‖ quant), second half of each 2048-token window; ± = SE over per-window means. b/w = bits per quantized-linear weight, exact for TRQ (codes + block scales + dead-row masks [+ e2e row scales]), 2-bit codes + one BF16 scale per 128 weights for GSQ/GPTQ. "e2e" = end-to-end KL scale/norm fine-tune with the codes frozen (the GSQ paper's final stage).

Run Method Stage b/w KL wiki KL FineWeb-Edu PPL wiki Status
b2_gptq_fp_block_s0 GPTQ block 2.125 1.396 1.347 47.0 reference (GPTQ, block stage only)
b2_gsq_fp_block_rot_s0_fp32 GSQ block 2.125 1.430 ± 0.016 1.367 ± 0.033 78.2 control (GSQ on the Hadamard-rotated model)
b2_gsq_fp_block_s0_bf16lr1e-4 GSQ block 2.125 1.758 1.836 86.8 INVALID: BF16 logits frozen under Lion (Finding 2)
b2_gsq_fp_block_s0_deadrowbug GSQ block 2.125 1.880 1.786 85.3 INVALID: dead-row bug (Finding 1); kept as the negative result
b2_gsq_fp_block_s0_fp32 GSQ block 2.125 1.493 ± 0.015 1.513 ± 0.037 90.4 current
b2_gsq_fp_block_s0_fp32/e2e GSQ block + e2e 2.125 0.932 ± 0.011 0.776 ± 0.016 29.2 current
b2_gsq_fp_block_s1_fp32 GSQ block 2.125 1.537 ± 0.016 1.387 ± 0.035 101.1 current
b2_gsq_fp_block_s1_fp32/e2e GSQ block + e2e 2.125 0.969 ± 0.011 0.777 ± 0.016 34.4 current
b2_gsq_fp_block_s2_fp32 GSQ block 2.125 1.418 ± 0.015 1.243 ± 0.031 80.9 current
b2_gsq_fp_block_s2_fp32/e2e GSQ block + e2e 2.125 0.940 ± 0.011 0.767 ± 0.016 27.3 current
b2_trellisL12_s0 TRQ (trellis L=12) block 2.001 0.625 ± 0.009 0.495 ± 0.017 29.9 current
b2_trellisL12_s0/e2e TRQ (trellis L=12) block + e2e 2.007 0.526 ± 0.007 0.446 ± 0.013 21.8 current
b2_trellisL12_s0_colsignRHT TRQ (trellis L=12) block 2.001 0.715 0.560 35.9 WITHDRAWN: Hadamard signs on columns, not random (Finding 4)
b2_trellisL12_s1 TRQ (trellis L=12) block 2.001 0.620 ± 0.009 0.490 ± 0.017 25.6 current
b2_trellisL12_s1/e2e TRQ (trellis L=12) block + e2e 2.007 0.529 ± 0.008 0.424 ± 0.013 20.5 current
b2_trellisL12_s2 TRQ (trellis L=12) block 2.001 0.621 ± 0.009 0.479 ± 0.014 29.3 current
b2_trellisL12_s2/e2e TRQ (trellis L=12) block + e2e 2.007 0.532 ± 0.008 0.416 ± 0.013 19.6 current
b3_gsq_fp_block_s0_fp32 GSQ block 3.125 0.502 ± 0.007 0.483 ± 0.025 42.6 current
b3_trellisL12_s0 TRQ (trellis L=12) block 3.001 0.215 ± 0.004 0.158 ± 0.009 26.0 current
b4_gsq_fp_block_s0_fp32 GSQ block 4.125 0.280 ± 0.004 0.156 ± 0.008 36.1 current
b4_trellisL12_s0 TRQ (trellis L=12) block 4.001 0.061 ± 0.001 0.038 ± 0.002 27.7 current
kfra1.9893_gauge_trellisL12_s0 TRQ (trellis L=12) block 1.991 0.583 ± 0.007 0.410 ± 0.010 34.3 current
kfra1.9893_gauge_trellisL12_s0/e2e TRQ (trellis L=12) block + e2e 1.997 0.584 ± 0.009 0.370 ± 0.011 18.8 current
kfra2.0_trellisL12_s0 TRQ (trellis L=12) block 2.002 0.571 ± 0.007 0.447 ± 0.014 29.3 current
kfra2.0_trellisL12_s0/e2e TRQ (trellis L=12) block + e2e 2.008 0.532 ± 0.008 0.377 ± 0.013 19.7 current

File formats

File Contents
<run>/quant.pt (GSQ/GPTQ) {"codes": {"<layer>.<module>": int8 [out, in]}, "scales": {...: fp32 [out, in/128]}, "cfg": {...}}. Dequantize as codes * scales[:, col // 128]; the scales are rounded to BF16 at use, matching the in-run weights. Rotated runs (_rot_) live in the rotated basis: rebuild it with rotate.rotate_model (deterministic seed) before loading.
<run>/quant.pt (TRQ) {"store": {"<layer>.<module>": {"states", "Wscale", "bits", "numel", "rel", ["row_bits"]}}, "norms": {...}, "cfg": {...}}: trellis states and scales, exact bit counts per tensor, KFRA per-row bit-widths.
<run>/weights.safetensors Dequantized BF16 linears + tuned RMSNorm gains; this is what the evaluation loads.
<run>/e2e/weights.safetensors The same after the end-to-end stage; e2e/ft.json has the training KL curve and the extra bits counted.
<run>/eval.json wiki and fwedu_eval: kl_mean, kl_win (per-window, for paired tests), kl_se_win, kl_p99, ppl, top1_agree.
<run>/train.json, log.txt Config, per-layer held-out block MSE, timing, exact bit counts (TRQ).
fisher.pt Diagonal empirical Fisher of the BF16 model on the calibration split (code/fisher.py in the report repo).
kfac_g.pt K-FAC output-side factors G (sampled-label gradients) per quantizable linear, used by KFRA.
trellis_rho_L12.json Measured normalized MSE of the L=12 trellis at 1-4 bits (KFRA's distortion model).

Loading

# code from the report repo (code/): evalkit.py, load_run.py
from huggingface_hub import snapshot_download
from evalkit import load_model
from load_run import apply_run

d = snapshot_download("hotocooo/lfm25-quant-research-checkpoints", allow_patterns=["b2_trellisL12_s0/*"])
model = load_model()                      # BF16 LFM2.5-2.6B (models/lfm25-tb-hf)
apply_run(model, f"{d}/b2_trellisL12_s0")  # weights.safetensors if present, else codes x scales

For an e2e checkpoint, load <run>/e2e/weights.safetensors with model.load_state_dict(sd, strict=False) after apply_run.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for hotocooo/lfm25-quant-research-checkpoints