lupodevelop commited on
Commit
ffc439d
·
0 Parent(s):

Initial release

Browse files
Files changed (5) hide show
  1. .gitattributes +35 -0
  2. README.md +46 -0
  3. config.json +14 -0
  4. model_bf16.pt +3 -0
  5. spm_it.model +3 -0
.gitattributes ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
README.md ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: apache-2.0
3
+ language:
4
+ - it
5
+ library_name: echo-1.58
6
+ tags:
7
+ - masked-diffusion
8
+ - ternary
9
+ - 1.58-bit
10
+ - quantization-aware-training
11
+ - bitnet
12
+ - italian
13
+ pipeline_tag: fill-mask
14
+ ---
15
+
16
+ These are research artifacts accompanying the paper *Native Ternary
17
+ Quantization-Aware Training for Masked Diffusion Language Models*. They are 341M-parameter
18
+ masked-diffusion language models trained on Italian FineWeb-2 with a 32k SentencePiece
19
+ tokenizer. **This is not a production model.** At roughly 12 tokens per parameter neither the
20
+ ternary nor the full-precision model composes fluent text; free generation degenerates
21
+ identically at both precisions. Use these checkpoints for reproduction, infilling analysis,
22
+ and as paired baselines, not as downstream generators.
23
+
24
+ - **Architecture:** bidirectional masked-diffusion transformer, `d_model` 1024, 24 layers, 16
25
+ heads, `d_ff` 2816, tied embeddings, 32001 vocabulary (mask token id 32000).
26
+ - **Format:** bfloat16, verified to reproduce the full-precision evaluation within 0.0003
27
+ masked-CE of the fp32 master.
28
+ - **Code and reproduction:** https://github.com/lupodevelop/echo-1.58
29
+ - **Tokenizer:** `spm_it.model` (included).
30
+
31
+ ## Evaluation (common protocol, sequence length 1024, identical seeded masks)
32
+
33
+ | 341M model | masked-CE | perplexity | vs FP16 twin |
34
+ |---|---|---|---|
35
+ | FP16 twin | 4.8100 | 122.7 | ceiling |
36
+ | Ternary baseline | 4.9852 | 146.2 | +19.2% |
37
+ | + continued distillation | 4.9125 | 136.0 | +10.8% |
38
+ | + from-scratch recipe | 4.9878 | 146.6 | +19.5% |
39
+
40
+ # Echo-1.58 341M, Ternary Baseline
41
+
42
+ The bare ternary masked-diffusion model, trained natively at 1.58 bits with BitNet-style QAT
43
+ and no recovery recipe. It is the starting point for the recovery experiments and the +19.2%
44
+ perplexity penalty against the FP16 twin. Post-training quantization of a full-precision model
45
+ to this precision collapses (26x perplexity for round-to-nearest); this model is what native
46
+ training buys instead.
config.json ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model_type": "echo-mdlm",
3
+ "objective": "masked-diffusion",
4
+ "d_model": 1024,
5
+ "n_layers": 24,
6
+ "n_heads": 16,
7
+ "d_ff": 2816,
8
+ "vocab_size": 32001,
9
+ "mask_token_id": 32000,
10
+ "max_seq_len": 2048,
11
+ "tie_embeddings": true,
12
+ "quantization": "ternary-1.58bit-qat",
13
+ "precision_stored": "bfloat16"
14
+ }
model_bf16.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:986e574b6f5fba71a142ec8496c52d419954899a71367b7c0744af4a131627cf
3
+ size 748200412
spm_it.model ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:139bc5399e44c8b604196b1d45b96244904254e627b101d4600920dd031df091
3
+ size 795469