EXLLM / EXQ12_FORMAT.md
ToTo-40417
Publish EXQ12 and 5M lineage metadata
b41d6e3 unverified
|
Raw History Blame Contribute Delete
1.07 kB
# EXQ12 deployment format
`model.q12` is produced deterministically from the published EXLLM8 file by
`tools/export_exq12.py`. It contains the same 39 tensors in the order stored by
EXLLM8. The EX-word runtime uses integer matrix weights and fixed-point scales;
the file is not GGUF and is not interchangeable with EXLLM8.
## Header
- 8 bytes: `EXQ12\0\0\0`
- little-endian `uint32`: format version (`1`)
- little-endian `uint32`: tensor count (`39` for the 5M release)
Each tensor record contains a little-endian `uint16` name length, `uint8`
dimension count, `uint8` qtype, UTF-8 name bytes, `uint32` dimensions, `uint32`
scale count, `uint32` payload byte count, optional scale data, and the payload.
- qtype `1`: signed int8 matrix payload; one signed Q20 `int32` scale per row.
- qtype `3`: signed Q12 `int16` vector payload; no separate scale table.
## Reproduce the release artifact
```bash
python tools/export_exq12.py
```
Expected result:
```text
bytes: 5443105
sha256: d64037fde791e5c0e48101bc1a8ab366a3287f1f36b4464879e36495ea7e5a53
tensors: 39
```