Published by TokForge for on-device inference.
TokForge
- Website: https://tokforge.ai
- Discord: https://discord.gg/Acv3CBtfVm
- Google Play: https://play.google.com/store/apps/details?id=dev.tokforge
- iOS TestFlight: https://testflight.apple.com/join/jnufjzRr
Runs on-device in the TokForge app.
TokForge NPU packs (index)
This repo holds one small file, npu_pack_index.json: the list of NPU prompt packs that TokForge can offer on Snapdragon
phones. An NPU prompt pack lets the phone's NPU read long prompts while the CPU writes every reply with the model you
already downloaded. Each pack lives in its own repo; this file says which packs exist and where.
The TokForge app reads this file from main for its NPU packs list under Search, keeps a copy on the phone and checks
for a newer one now and then. The file never decides on its own what runs: every entry points at a pack repo at one
fixed commit, and the app checks the pack's MANIFEST.json against the sha256 written here, then every file of the pack
by sha256 and size, and the pairing with your download, before it uses the pack. A later change to this file can add a
pack; it cannot change the files of a pack your phone already checked.
Packs in the index
| Model | Pack repo (pinned commit) | Download per chip | NPU memory per chip | Memory figure |
|---|---|---|---|---|
| Qwen3.5 4B | darkmaniac7/Qwen3.5-4B-NPU-catalogpair at 43e528cc1ce4 |
V81 3.67 GB, V79 3.65 GB, V75 3.65 GB | V81 6.31 GB, V79 5.84 GB, V75 6.26 GB | measured on phones for V81, V79 and V75 |
| Qwen3.5 4B Abliterated | darkmaniac7/Qwen3.5-4B-uncensored-NPU-catalogpair at d384c68e4122 |
V81 3.67 GB, V75 3.65 GB | V81 5.93 GB, V75 5.87 GB | measured on phones for V81 and V75 |
| Qwen3.5 2B | darkmaniac7/Qwen3.5-2B-NPU-catalogpair at 5752109061a2 |
V81 1.41 GB, V75 1.40 GB | V81 2.93 GB, V75 2.90 GB | measured on phones for V81 and V75 |
| Qwen3.5 4B Claude 4.6 Opus Abliterated | darkmaniac7/Qwen3.5-4B-Claude-4.6-Opus-abliterated-NPU-catalogpair at e3378b577741 |
V81 3.67 GB, V75 3.65 GB | V81 5.90 GB, V75 5.85 GB | measured on phones for V81 and V75 |
| Qwen3.5 0.8B | darkmaniac7/Qwen3.5-0.8B-NPU-catalogpair at 56aac1e38f03 |
V81 0.53 GB, V75 0.52 GB | V81 2.17 GB, V75 2.10 GB | measured on phones for V81 and V75 |
V81 is the Snapdragon 8 Elite Gen 5 (SM8850), V79 the Snapdragon 8 Elite (SM8750), V75 the Snapdragon 8 Gen 3 (SM8650). A chip
that has a download for a pack but is not in its measured_arches has not been tested on a phone by us yet; TokForge says so
and checks the pack on the phone before it uses it, as on every chip. The memory figure is what the NPU
part takes while the model is loaded, on top of the model itself; TokForge turns the NPU on only when the phone has room
for both. Where a figure is estimated, the app measures the real one when it first loads the pack on your phone and
uses that from then on.
What each entry holds
Schema tokforge-npu-index/1: {"schema": "tokforge-npu-index/1", "packs": [...]}, one object per pack:
model_id: the TokForge model list row the pack belongs to.name: the pack folder inside its repo (<name>/MANIFEST.json,<name>/<chip>/...).family: the model family (qwen3_5orqwen3).pack_repo,pack_revision: the pack repo and the 40-character commit the app downloads from.manifest_sha256: the sha256 of the pack's MANIFEST.json at that commit.arch_bytes: the download size per chip.resident_bytes: the NPU part's memory per chip;measured_arches: the chips where that figure was measured on a phone.pairs_with: the download the pack works with (repo, commit,llm.mnnsha256,llm.mnn.weightsize and sha256, andembeddings_bf16.binwhen that model keeps its embeddings in a separate file).
Every version of this file is checked against the Hub before it is pushed: each MANIFEST.json hash, its pairing and its per-chip sizes.
License
Apache License 2.0 (https://www.apache.org/licenses/LICENSE-2.0). The index is a list of links and hashes; each pack repo's card names the original models, their authors and their licenses.