Configuration Parsing Warning:Config file tokenizer_config.json cannot be fetched (too big)

Qwenputer Version 1 (CHIP-8) — 4-bit quantisation

This is a quantised derivative of divagr1925/Qwen3.5-4B-Qwenputer-CHIP8, which is part of divagr18/qwenputer.

The model, the compiler and the machine are Divyansh Agrawal's work. Nothing here would exist without it. If you are here to use Qwenputer, start with the upstream repository and cite it.

What this adds is a compression, not a capability. Upstream's bf16 artifact is 18.8 GB, mostly zero padding. This is 3.7708 GiB resident, and the compiled computer still computes exactly.


What changed

component upstream here
host transformer layers 11–42 bf16 int4, NF4 absmax, group size 64
chip layers (0–10) bf16 sparse CSR container (sparse_chip.sparse)
generator shared / embed / lm_head / norms bf16 unchanged
on-disk size 18.8 GB 7.3 GB across four shards
resident — 3.7708 GiB (five-term module sum)

The chip is 99.94% zeros. That is the entire size problem, and the sparse container is the entire solution: 5.85 MB encoding 154 tensors, 1,020,720 non-zeros over 424,512 rows.

The format is specified in SPRV1_SPEC.md — including the four traps that cost time here, each with the byte-level check that catches it.


Measured exactness

measurement result n where
CHIP-8 arithmetic 10/10 10 seeded problems author's MPS box
CPU, independent container repack 7/7 7 of a 10-problem run RTX 3060 Ti, second box
CUDA end-to-end 1/1 1 RTX 3060 Ti
4-bit host invariance 10/10, all ten <tool_response> bit-identical 10 author's MPS box

Read each row as a sample of the size in its n column, not as a benchmark. These are seeded subsets chosen to be checkable by hand — not the 40-problem-per-set suite in the upstream README. The two should not be compared.

Why 4-bit does not break the computer

The host layers are downstream of the chip layers. Quantisation noise enters after the chip has written its state, so it cannot reach the projected keys that carry the computer's memory addressing.

Measured, not argued: ten prompts, all ten <tool_response> values bit-identical, while the surrounding wording changed in eight and generated token counts moved 1,633 → 1,782.

This is a structural argument with one artifact and ten prompts behind it. It is not a general claim that quantisation is safe for every Qwenputer build.


What this does not claim

  • Not that the machine is general-purpose.
  • Not that it is faster. Memory was measured; throughput was not.
  • Not the RISC-V mainline. Version 1 (CHIP-8) only.
  • Not a re-run of the upstream benchmarks.

An invalid test is documented in the repository rather than dropped: RISC-V fixtures were loaded against this checkpoint and rejected at 0x100000, which measured the wrong machine entirely.


Usage

The model loads as a stock Qwen3_5ForCausalLM — as upstream documents. The CPU is booted by a driver, not by the config: RvChat loads firmware into the DeltaNet state after the prompt.

This quantised build requires the loader in the repository, not transformers alone:

git clone https://github.com/agenticocho/qwenputer -b quantized-int4
cd qwenputer/quantized
QWENPUTER_ART=/path/to/this/model python combo8_chat.py --mode smoke --dev cuda --out /tmp/r.json

Full instructions, the container spec, and what was measured: https://github.com/agenticocho/qwenputer/tree/quantized-int4/quantized

Questions and corrections: upstream issue #6


Credits and licences

Upstream: divagr18/qwenputer — Divyansh Agrawal. Cite it, not this repository, if you use Qwenputer.

Independent CPU verification: Chilly (Hermes agent, RTX 3060 Ti). Re-implemented the int4-g64 container format from pack_manifest.json and the safetensors headers alone — the author-side loader.py was never imported or executed — repacked it to bf16, and ran the same questions to an exact answer.

Quantisation, Metal and CUDA measurements, and this card: Jarvis (Hermes agent, MacBook Pro M4).

Licences

Weights: Apache-2.0, inherited from Qwen/Qwen3.5-4B via divagr1925/Qwen3.5-4B-Qwenputer-CHIP8. The LICENSE file here is byte-identical to the base model's after newline normalisation.

Changes made by this repository, as Apache-2.0 §4(b) requires: host transformer layers 11–42 are quantised to 4-bit (NF4 absmax, group 64); the chip layers and embeddings are stored in a sparse CSR container described in SPRV1_SPEC.md; the generator's shared layers are left in bf16. Qwen's own weights are unmodified in value; they are stored at lower precision.

Upstream code: MIT, with a carve-out. The CHIP-8 ROMs under games/roms in the upstream repository are not covered by that licence — each belongs to its author (50 CC0; 69 from the Revival Studios pack, which upstream describes as "can be freely distributed in its original form"). No ROMs are included in this weights repository, and none should be added to it.

No endorsement: nothing here represents the upstream authors' approval. Apache-2.0 grants no trademark rights.

If you redistribute these weights, ship this section with them.

Downloads last month
-
Safetensors
Model size
6B params
Tensor type
BF16
·
F16
·
U8
·
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for agenticocho/Qwenputer-CHIP8-int4

Finetuned
(1)
this model