Downloads · 30 days
16
4% of all-time downloads
wcamon/circus-0.4-t9
circus-0.4-t9 is a text generation model from wcamon. Use it when you need the model to write or continue text. It is set up for transformers. The card lists the license as apache-2.0.
Author: Wei-Ciao Wu (@wcamon) Code: github.com/wcAmon/guava-qat — full quantization / reconstruction / eval facility that produced this model. Status: stage result (v0.4.1, "t9" = 9-level grid) — ships both the bf16 m…
Downloads · 30 days
16
4% of all-time downloads
All-time downloads
393
Public
Parameters
4.5B
10.9 GB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors9.1 GB · 83%
From the Hugging Face model README
Author: Wei-Ciao Wu (@wcamon)
Code: github.com/wcAmon/guava-qat — full quantization / reconstruction / eval facility that produced this model.
Status: stage result (v0.4.1, "t9" = 9-level grid) — ships both the bf16
materialization and the true packed bit-planes (bitplanes_k2_c0.6.npz,
bit-exact, see below); addition-only kernels to follow.
Every linear weight of Agents-A1-4B is constrained to the additive two-plane 9-level grid
W = α ⊙ (T₁ + c·T₂), T₁,T₂ ∈ {−1,0,+1}, c = 0.6, α: one scale / 32 weights
grid = {0, ±0.4, ±0.6, ±1, ±1.6} (≈ 3.67 bits/weight, ≈ 4.4× vs bf16)
The two ternary planes admit addition-only matmul kernels (BitNet-style), and 7/5-level variants of the same family cost the same at inference — 9-level is the capability ceiling of the family, single-plane ternary its compression ceiling.
model.safetensors — the quantized values materialized in bf16, so the
model loads with stock transformers exactly like the base model. This is a
storage/compatibility format, not a claim of 16-bit information content: every
weight lies on its block's 9-level grid.
bitplanes_k2_c0.6.npz — the true quantized artifact (1.7 GB vs 8.5 GB):
per target linear, 4-bit plane indices idx=(T₁+1)·3+(T₂+1), two per byte, in
the GPTQ column-permuted domain, plus per-block-32 fp32 scales α and the
int32 inverse column permutation inv. Scales are kept fp32 so that decoding
is bit-exact against model.safetensors:
python decode_bitplanes.py # verified: 200/200 tensors bit-exact
Raw pack ≈ 5 bits/weight (4-bit index + fp32 scale); with fp16 scales and entropy coding of the 9-way index the format reaches ≈ 3.67 bits/weight. No addition-only matmul kernel ships yet — until one exists, the bf16 materialization is how you run the model, the bit-plane pack is what the model is.
Non-target weights (embeddings, lm_head, layernorms, the vision stack) remain bf16 in both forms.
| task | bf16 | circus-0.4-t9 | retention |
|---|---|---|---|
| gsm8k (1319) | .8006 | .7710 | 96.3 % |
| mmlu (full) | .7021 | .6953 | 99.0 % |
| ifeval (541) | .2625 | .2514 | 95.8 % |
| humaneval (164) | .5732 | .5366 | 93.6 % |
| arc-challenge | .5444 | .5503 | 101.1 % |
| hellaswag | .7169 | .6927 | 96.6 % |
| winogrande | .6875 | .6622 | 96.3 % |
| boolq | .8593 | .8786 | 102.2 % |
| piqa | .7709 | .7709 | 100.0 % |
All ten tracked tasks retain ≥ 90 % (mbpp excluded from the headline because its train split occurs in the polish corpus). Scores are lm-eval-harness, no chat template, greedy/likelihood defaults; single seed; your numbers may differ under other harnesses.
from transformers import AutoModelForCausalLM, AutoTokenizer
m = AutoModelForCausalLM.from_pretrained("wcamon/circus-0.4-t9", torch_dtype="bfloat16")
tok = AutoTokenizer.from_pretrained("wcamon/circus-0.4-t9")
CAT-Q (arXiv:2606.26650) · SliderQuant (ICLR 2026) · BitNet b1.58 (arXiv:2402.17764) · ParetoQ (arXiv:2502.02631) · GPTQ (arXiv:2210.17323) · BRECQ (arXiv:2102.05426) · STE (arXiv:1308.3432) · Agents-A1 (arXiv:2606.30616)