Text Generation
Shadow
English
small-language-model
cpu
retrieval
memory-on-disk
ternary
offline
edge
Instructions to use QLNI/shadow-50m-instruct with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Shadow
How to use QLNI/shadow-50m-instruct with Shadow:
# No code snippets available yet for this library. # To use this model, check the repository files and the library's documentation. # Want to help? PRs adding snippets are welcome at: # https://github.com/huggingface/huggingface.js
- Notebooks
- Google Colab
- Kaggle
Commit 路
aa285a4
0
Parent(s):
SHADOW 50M Instruct v1.1
Browse files- .gitattributes +45 -0
- README.md +48 -0
- config.json +27 -0
- shadow.png +3 -0
- shadow50_instruct.pt +3 -0
- shadow50_instruct.shdw +3 -0
.gitattributes
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
*.7z filter=lfs diff=lfs merge=lfs -text
|
| 2 |
+
*.arrow filter=lfs diff=lfs merge=lfs -text
|
| 3 |
+
*.bin filter=lfs diff=lfs merge=lfs -text
|
| 4 |
+
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
| 5 |
+
*.ckpt filter=lfs diff=lfs merge=lfs -text
|
| 6 |
+
*.ftz filter=lfs diff=lfs merge=lfs -text
|
| 7 |
+
*.gz filter=lfs diff=lfs merge=lfs -text
|
| 8 |
+
*.h5 filter=lfs diff=lfs merge=lfs -text
|
| 9 |
+
*.joblib filter=lfs diff=lfs merge=lfs -text
|
| 10 |
+
*.lfs.* filter=lfs diff=lfs merge=lfs -text
|
| 11 |
+
*.mlmodel filter=lfs diff=lfs merge=lfs -text
|
| 12 |
+
*.model filter=lfs diff=lfs merge=lfs -text
|
| 13 |
+
*.msgpack filter=lfs diff=lfs merge=lfs -text
|
| 14 |
+
*.npy filter=lfs diff=lfs merge=lfs -text
|
| 15 |
+
*.npz filter=lfs diff=lfs merge=lfs -text
|
| 16 |
+
*.onnx filter=lfs diff=lfs merge=lfs -text
|
| 17 |
+
*.ot filter=lfs diff=lfs merge=lfs -text
|
| 18 |
+
*.parquet filter=lfs diff=lfs merge=lfs -text
|
| 19 |
+
*.pb filter=lfs diff=lfs merge=lfs -text
|
| 20 |
+
*.pickle filter=lfs diff=lfs merge=lfs -text
|
| 21 |
+
*.pkl filter=lfs diff=lfs merge=lfs -text
|
| 22 |
+
*.pt filter=lfs diff=lfs merge=lfs -text
|
| 23 |
+
*.pth filter=lfs diff=lfs merge=lfs -text
|
| 24 |
+
*.rar filter=lfs diff=lfs merge=lfs -text
|
| 25 |
+
*.safetensors filter=lfs diff=lfs merge=lfs -text
|
| 26 |
+
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
| 27 |
+
*.tar.* filter=lfs diff=lfs merge=lfs -text
|
| 28 |
+
*.tar filter=lfs diff=lfs merge=lfs -text
|
| 29 |
+
*.tflite filter=lfs diff=lfs merge=lfs -text
|
| 30 |
+
*.tgz filter=lfs diff=lfs merge=lfs -text
|
| 31 |
+
*.wasm filter=lfs diff=lfs merge=lfs -text
|
| 32 |
+
*.xz filter=lfs diff=lfs merge=lfs -text
|
| 33 |
+
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
+
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
+
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
| 36 |
+
shadow50_instruct.shdw filter=lfs diff=lfs merge=lfs -text
|
| 37 |
+
finetune-kit/rows.u16 filter=lfs diff=lfs merge=lfs -text
|
| 38 |
+
pirate-assistant/rows.u16 filter=lfs diff=lfs merge=lfs -text
|
| 39 |
+
pirate-assistant/weights/pirate.shdw filter=lfs diff=lfs merge=lfs -text
|
| 40 |
+
v1.1-extended/rows_ext.u32 filter=lfs diff=lfs merge=lfs -text
|
| 41 |
+
v1.1-extended/shadow50 filter=lfs diff=lfs merge=lfs -text
|
| 42 |
+
examples/draft/shadow_draft.gif filter=lfs diff=lfs merge=lfs -text
|
| 43 |
+
examples/memory_mcp/shadow_memory.gif filter=lfs diff=lfs merge=lfs -text
|
| 44 |
+
examples/video_memory/video_memory.gif filter=lfs diff=lfs merge=lfs -text
|
| 45 |
+
shadow.png filter=lfs diff=lfs merge=lfs -text
|
README.md
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: mit
|
| 3 |
+
language:
|
| 4 |
+
- en
|
| 5 |
+
library_name: shadow
|
| 6 |
+
pipeline_tag: text-generation
|
| 7 |
+
tags:
|
| 8 |
+
- small-language-model
|
| 9 |
+
- cpu
|
| 10 |
+
- retrieval
|
| 11 |
+
- memory-on-disk
|
| 12 |
+
- ternary
|
| 13 |
+
- offline
|
| 14 |
+
- edge
|
| 15 |
+
- shadow
|
| 16 |
+
---
|
| 17 |
+
|
| 18 |
+
<p align="center"><img src="shadow.png" alt="SHADOW" width="260"></p>
|
| 19 |
+
|
| 20 |
+
<h1 align="center">SHADOW 50M Instruct</h1>
|
| 21 |
+
|
| 22 |
+
<p align="center">44M parameters 路 ternary 路 exact circuits inside the model 路 100M-token archive on disk 路 19.8 MB 路 CPU, offline</p>
|
| 23 |
+
|
| 24 |
+
A small language model that runs on a CPU at about 2,000 tokens a second in 40 MB of RAM, with no network and no
|
| 25 |
+
framework. It computes arithmetic, dates, units, counting and sorting with circuits inside its weights, and it keeps
|
| 26 |
+
records on disk as its own memory, quoting the record it read. Built from scratch; the weights are ternary and the
|
| 27 |
+
vocabulary table is frozen.
|
| 28 |
+
|
| 29 |
+
The full technical read, the kernels for Windows and Linux, the browser page, the harnesses and every measurement are
|
| 30 |
+
on GitHub: **[github.com/QLNI/SHADOW-50M-Instruct](https://github.com/QLNI/SHADOW-50M-Instruct)**. Please start there.
|
| 31 |
+
|
| 32 |
+
## Downloads
|
| 33 |
+
|
| 34 |
+
| file | what it is | size |
|
| 35 |
+
|---|---|---|
|
| 36 |
+
| [**shadow50_instruct.shdw**](https://huggingface.co/QLNI/shadow-50m-instruct/resolve/main/shadow50_instruct.shdw?download=true) | the deployment container, version 1.1: ternary weights, the frozen vocabulary table, runtime constants, the self-test prompt. Drop it into `deployment/` of the GitHub repository and run `python shadow_chat.py`. | 19.8 MB |
|
| 37 |
+
| [**shadow50_instruct.pt**](https://huggingface.co/QLNI/shadow-50m-instruct/resolve/main/shadow50_instruct.pt?download=true) | the master weights, for fine-tuning with the kit in the repository (`finetune/`). | 310 MB |
|
| 38 |
+
|
| 39 |
+
## Try it in your browser
|
| 40 |
+
|
| 41 |
+
[qlni.github.io/SHADOW-50M-Instruct/web](https://qlni.github.io/SHADOW-50M-Instruct/web/): the same kernel compiled to
|
| 42 |
+
WebAssembly, the 19.8 MB model fetched once, nothing installed.
|
| 43 |
+
|
| 44 |
+
## Licence
|
| 45 |
+
|
| 46 |
+
MIT. If it turns out useful, a mention of SHADOW somewhere in your work would be appreciated.
|
| 47 |
+
|
| 48 |
+
漏 QLNI 2026
|
config.json
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"model_type": "shadow",
|
| 3 |
+
"architectures": ["SHADOW50MInstruct"],
|
| 4 |
+
"model_name": "SHADOW 50M Instruct",
|
| 5 |
+
"version": "1.1",
|
| 6 |
+
"num_parameters": 44100000,
|
| 7 |
+
"hidden_size": 896,
|
| 8 |
+
"num_hidden_layers": 6,
|
| 9 |
+
"num_attention_heads": 14,
|
| 10 |
+
"num_key_value_heads": 2,
|
| 11 |
+
"head_dim": 64,
|
| 12 |
+
"intermediate_size": 2464,
|
| 13 |
+
"hidden_act": "silu",
|
| 14 |
+
"vocab_size": 73880,
|
| 15 |
+
"vocab_code_bits": 512,
|
| 16 |
+
"vocab_trainable": false,
|
| 17 |
+
"weight_format": "ternary",
|
| 18 |
+
"bits_per_weight": 1.58,
|
| 19 |
+
"max_position_embeddings": 8192,
|
| 20 |
+
"archive_max_tokens": 100000000,
|
| 21 |
+
"archive_bytes_per_token": 288,
|
| 22 |
+
"deployment_file": "shadow50_instruct.shdw",
|
| 23 |
+
"deployment_bytes": 19799680,
|
| 24 |
+
"runtime": "shadow50 kernel, C, AVX2 FMA F16C, CPU",
|
| 25 |
+
"license": "mit",
|
| 26 |
+
"homepage": "https://github.com/QLNI/SHADOW-50M-Instruct"
|
| 27 |
+
}
|
shadow.png
ADDED
|
Git LFS Details
|
shadow50_instruct.pt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:22702034932f9c3ac8dd6ed3db724b2269602e6b107938848f018bbdee02f32f
|
| 3 |
+
size 310291321
|
shadow50_instruct.shdw
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:ed322b8882e7e67c7650060113f0f9e2bbf486169284b1681b403ee2c468e196
|
| 3 |
+
size 19799680
|