Downloads · 30 days
29
3% of all-time downloads
open-machine/Llama-3.2-1B-FlashNorm-test
Llama-3.2-1B-FlashNorm-test is a text generation model from open-machine. Use it when you need the model to write or continue text. The card lists the license as llama3.2.
FlashNorm-prepared compatibility checkpoint of meta-llama/Llama-3.2-1B, derived from Meta's original weights obtained via the unsloth/Llama-3.2-1B ungated mirror (bit-identical to the upstream release).
Downloads · 30 days
29
3% of all-time downloads
All-time downloads
897
Public
Parameters
1.2B
6.2 GB on disk
Likes
1
Public
Click a slice to open those files.
.safetensors2.5 GB · 99%
How the weights are stored.
BF161.2B · 100%
From the Hugging Face model README
FlashNorm-prepared compatibility checkpoint of meta-llama/Llama-3.2-1B, derived from Meta's original weights obtained via the unsloth/Llama-3.2-1B ungated mirror (bit-identical to the upstream release).
The FlashNorm transformation is mathematically exact. This checkpoint loads in stock transformers and vLLM without any code changes.
An exact reformulation of RMSNorm → Linear that (i) folds the per-channel normalization weights into the following linear layer (W* = W · diag(g)) and (ii) defers the scalar 1/RMS(x) normalization to after the matmul. On hardware with distinct vector and matrix units, the matrix multiplication and the RMS reduction can execute in parallel.
See the paper and the transformer-tricks repo for details.
| Tensor | Source | This checkpoint |
|---|---|---|
model.layers.*.input_layernorm.weight | learned per-channel g | all ones |
model.layers.*.self_attn.{q,k,v}_proj.weight | W | W · diag(g_input_layernorm) |
model.layers.*.post_attention_layernorm.weight | learned per-channel g | all ones |
model.layers.*.mlp.{gate,up}_proj.weight | W | W · diag(g_post_attention_layernorm) |
All tensors are stored in the source dtype (bfloat16); the merged products are computed in float32 internally before casting back. model.norm.weight is unchanged (tied embeddings). Mathematical identity holds by construction.
from transformers import AutoModelForCausalLM, AutoTokenizer
tok = AutoTokenizer.from_pretrained('open-machine/Llama-3.2-1B-FlashNorm')
model = AutoModelForCausalLM.from_pretrained('open-machine/Llama-3.2-1B-FlashNorm')
ids = tok('Once upon a time there was', return_tensors='pt').input_ids
out = model.generate(ids, max_new_tokens=50, do_sample=False)
print(tok.decode(out[0], skip_special_tokens=True))
With vLLM:
vllm serve open-machine/Llama-3.2-1B-FlashNorm
The FlashNorm transformation is mathematically exact.
x·g·W would.This is a general property of precomputing weight-folded tensors for lossy-inference kernels, not specific to FlashNorm. A native fused RMSNorm + QKV kernel (deferring g to runtime) eliminates the framework dependency and is in progress for vLLM / FlashInfer.
Llama 3.2 Community License, inherited from the source model.