From: HuggingFaceTB <huggingface.co/HuggingFaceTB>Newsgroups: alt.freeweights.smollmSubject:

SmolLM-135M

Date: 2026-11-14Commit: 1d46172Signed: 2DC28CC7B26A283B ✓

Text generation model with 135M parameters. Onnx and safetensors weights, 2.11 GB in all. Published by HuggingFaceTB under Apache-2.0.

135M params2.11GBSmolLM-135Monnx safetensorspermissive
FactsParams135MSize2.11 GBFormatsonnx, safetensorsTasktext generationLicenseApache-2.0From sourcepermissive
$ fw get HuggingFaceTB/SmolLM-135M
# manifest sha256 46de37c6a818… · 2.11 GB · 17 files
$ fw verify ./SmolLM-135M HuggingFaceTB/SmolLM-135M
From sourceHosted (signed)HuggingFaceTB/SmolLM-135MLast check: 2026-11-14 21:11 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Works with

Overview

Size
2.11 GB
Weights
538 MB (safetensors)
Parameters
135M
Formats
onnx, safetensors
Task
text generation
License
Apache-2.0 (permissive)
Files
17, each with a sha256
Publisher
HuggingFaceTB
Added
2026-11-14
Section
alt.freeweights.smollm
Lineage

Original release from the publisher.

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-14 21:11 UTCpassed

Model card

From the publisher at commit 1d46172. Shown as plain text with links; images open at the publisher.

SmolLM#

Image: SmolLM

Table of Contents#

  1. Model Summary
  2. Limitations
  3. Training
  4. License
  5. Citation

Model Summary#

SmolLM is a series of state-of-the-art small language models available in three sizes: 135M, 360M, and 1.7B parameters. These models are built on Cosmo-Corpus, a meticulously curated high-quality training dataset. Cosmo-Corpus includes Cosmopedia v2 (28B tokens of synthetic textbooks and stories generated by Mixtral), Python-Edu (4B tokens of educational Python samples from The Stack), and FineWeb-Edu (220B tokens of deduplicated educational web samples from FineWeb). SmolLM models have shown promising results when compared to other models in their size categories across various benchmarks testing common sense reasoning and world knowledge. For detailed information on training, benchmarks and performance, please refer to our full blog post.

This is the SmolLM-135M

Generation#
pip install transformers
Running the model on CPU/GPU/multi GPU#
  • Using full precision
# pip install transformers
from transformers import AutoModelForCausalLM, AutoTokenizer
checkpoint = "HuggingFaceTB/SmolLM-135M"
device = "cuda" # for GPU usage or "cpu" for CPU usage
tokenizer = AutoTokenizer.from_pretrained(checkpoint)
# for multiple GPUs install accelerate and do `model = AutoModelForCausalLM.from_pretrained(checkpoint, device_map="auto")`
model = AutoModelForCausalLM.from_pretrained(checkpoint).to(device)
inputs = tokenizer.encode("def print_hello_world():", return_tensors="pt").to(device)
outputs = model.generate(inputs)
print(tokenizer.decode(outputs[0]))
>>> print(f"Memory footprint: {model.get_memory_footprint() / 1e6:.2f} MB")
Memory footprint: 12624.81 MB
  • Using torch.bfloat16
# pip install accelerate
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
checkpoint = "HuggingFaceTB/SmolLM-135M"
tokenizer = AutoTokenizer.from_pretrained(checkpoint)
# for fp16 use `torch_dtype=torch.float16` instead
model = AutoModelForCausalLM.from_pretrained(checkpoint, device_map="auto", torch_dtype=torch.bfloat16)
inputs = tokenizer.encode("def print_hello_world():", return_tensors="pt").to("cuda")
outputs = model.generate(inputs)
print(tokenizer.decode(outputs[0]))
>>> print(f"Memory footprint: {model.get_memory_footprint() / 1e6:.2f} MB")
Memory footprint: 269.03 MB
Quantized Versions through bitsandbytes#
  • Using 8-bit precision (int8)
# pip install bitsandbytes accelerate
from transformers import AutoTokenizer, AutoModelForCausalLM, BitsAndBytesConfig
# to use 4bit use `load_in_4bit=True` instead
quantization_config = BitsAndBytesConfig(load_in_8bit=True)
checkpoint = "HuggingFaceTB/SmolLM-135M"
tokenizer = AutoTokenizer.from_pretrained(checkpoint)
model = AutoModelForCausalLM.from_pretrained(checkpoint, quantization_config=quantization_config)
inputs = tokenizer.encode("def print_hello_world():", return_tensors="pt").to("cuda")
outputs = model.generate(inputs)
print(tokenizer.decode(outputs[0]))
>>> print(f"Memory footprint: {model.get_memory_footprint() / 1e6:.2f} MB")
# load_in_8bit
Memory footprint: 162.87 MB
# load_in_4bit
>>> print(f"Memory footprint: {model.get_memory_footprint() / 1e6:.2f} MB")
Memory footprint: 109.78 MB

Limitations#

While SmolLM models have been trained on a diverse dataset including educational content and synthetic texts, they have limitations. The models primarily understand and generate content in English. They can produce text on a variety of topics, but the generated content may not always be factually accurate, logically consistent, or free from biases present in the training data. These models should be used as assistive tools rather than definitive sources of information. Users should always verify important information and critically evaluate any generated content. For a more comprehensive discussion of the models' capabilities and limitations, please refer to our full blog post..

This repository contains a converted version of our latest trained model. We've noticed a small performance difference between this converted checkpoint (transformers) and the original (nanotron). We're currently working to resolve this issue.

Training#

Model#

Hardware#

  • GPUs: 64 H100

Software#

License#

Apache 2.0

Citation#

@misc{allal2024SmolLM,
      title={SmolLM - blazingly fast and remarkably powerful}, 
      author={Loubna Ben Allal and Anton Lozhkov and Elie Bakouch and Leandro von Werra and Thomas Wolf},
      year={2024},
}

Files

17 files · 2.11 GBWeights 538 MB (safetensors). Sizes and sha256 from the signed manifest.
Hide all 17 files with their sha256
FileSizesha256
.gitattributes1.52 KB11ad7efa24975ee4b0c3c3a38ed18737f0658a5f75a0a96787b576a78a023361
README.md5.45 KB362068c1516d46216f5c291d9c4827769de49aecb02d2819439263574e95faf6
config.json724 Ba1fe6f43e20f7a6c6dbc6380222af9526b5cef262446391a281c038249e3e3b7
generation_config.json111 Bd0df27778d7caa8acc0c2d8eb5cfc11135da6226dbae8c12cc85d0ce6067faaa
merges.txt466 KB0b54e8aa4e53d5383e2e4bc635a56b43f9647f7b13832d5d9ecd8f82dac4f510
model.safetensors538 MBc7a387d6fe81ca6dd304aeb809bda3932ff1bbef3ca41c9484502f2f448dc093
onnx/model.onnx539 MB59cffb618a772d1b173d6b8c18fb109effbc7bb80e8766792d146eb154fb09bf
onnx/model_bnb4.onnx174 MBdf34bb6eed918d526104613cd8e7d88bb8b8cd837e3adfe9967287280e9184b3
onnx/model_fp16.onnx270 MBb6d52af19a92e70b0968e451616e1b358842094a9096fd30f579ac9fb2fee52c
onnx/model_int8.onnx136 MB9fc89b8ea13d2e8ee3edcc19e728af1eb556ae4945824998a61d9cbbb8029df2
onnx/model_q4.onnx181 MB634bd10299cff46ee3423b9e5c023da6051e66dd0b22897fbcbc61aa6938921e
onnx/model_quantized.onnx136 MB9fc89b8ea13d2e8ee3edcc19e728af1eb556ae4945824998a61d9cbbb8029df2
onnx/model_uint8.onnx136 MB15cb0bf6b31f866b3c39eda6c623f8602a44ebd2c88546ea1a79108338e10244
special_tokens_map.json831 Be786b595b9a23148bf1630df78d9037a048ea671e48bfd3549a1e3c233742bb3
tokenizer.json2.10 MB9ca9acddb6525a194ec8ac7a87f24fbba7232a9a15ffa1af0c1224fcd888e47c
tokenizer_config.json3.69 KB238ad6b60d48e471624ea70bc79e92f2611844d5016471fee8c167854bcb98e8
vocab.json801 KB82b84012e3add4d01d12ba14442026e49b8cbbaead1f79ecf3d919784f82dc79
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
1d461723ee pinned now manifest updated, same commit2026-11-14 21:11 UTC17 files · 2.11 GB
1d461723ee2026-11-14 21:11 UTC17 files · 2.11 GB

Use it

$ fw get HuggingFaceTB/SmolLM-135M
# manifest sha256 46de37c6a818… · 2.11 GB · 17 files
$ fw verify ./SmolLM-135M HuggingFaceTB/SmolLM-135M
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/HuggingFaceTB/SmolLM-135M.json --dir ./SmolLM-135M $ python3 fw.py verify ./SmolLM-135M ./HuggingFaceTB__SmolLM-135M.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download HuggingFaceTB/SmolLM-135M --revision 1d461723eec654e65efdc40cf49301c89c0c92f4 --local-dir ./SmolLM-135M
transformersLoad the weights in Python.
import os os.environ["HF_ENDPOINT"] = "https://freeweights.allternit.com" from transformers import AutoModelForCausalLM, AutoTokenizer tok = AutoTokenizer.from_pretrained("HuggingFaceTB/SmolLM-135M", revision="1d461723eec654e65efdc40cf49301c89c0c92f4") model = AutoModelForCausalLM.from_pretrained("HuggingFaceTB/SmolLM-135M", revision="1d461723eec654e65efdc40cf49301c89c0c92f4", device_map="auto")
vLLMServe an OpenAI-compatible API.
$ HF_ENDPOINT=https://freeweights.allternit.com vllm serve HuggingFaceTB/SmolLM-135M --revision 1d461723eec654e65efdc40cf49301c89c0c92f4

License

Name
Apache License 2.0
Id
Apache-2.0
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-14
Text in
README.md
Text sha256
362068c1516d46216f5c291d9c4827769de49aecb02d2819439263574e95faf6
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: HuggingFaceTB <huggingface.co/HuggingFaceTB>Newsgroups: alt.freeweights.smollmSubject: SmolLM-135MDate: 2026-11-14Commit: 1d46172Signed: 2DC28CC7B26A283B ✓
Upstream
HuggingFaceTB/SmolLM-135M
Pinned commit
1d461723eec654e65efdc40cf49301c89c0c92f4
Manifest
SmolLM-135M.json · .minisig
Manifest sha256
46de37c6a8181339825f273d78e339f0019fb1071aeaf765495547f869458a94
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-14 21:11 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/HuggingFaceTB/SmolLM-135M.json $ curl -O https://freeweights.allternit.com/manifests/HuggingFaceTB/SmolLM-135M.json.minisig $ minisign -Vm SmolLM-135M.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

3 models in the catalog name this one as their parent.

Quantizations
3
Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download HuggingFaceTB/SmolLM-135M
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. SmolLM-135M.json. Provenance. Takedown history: none.

Variants

3 quantized or adapter builds of SmolLM-135M. Each has its own license check and page.

From: HuggingFaceTB <huggingface.co/HuggingFaceTB>Subject: 135M-lc-100k-rope-12B
From: nisten <huggingface.co/nisten>Subject: Biggie-SmoLlm-0.4B
From: onnx-community <huggingface.co/onnx-community>Subject: Biggie-SmoLlm-0.4B-ONNX
From: unsloth <huggingface.co/unsloth>Subject: SmolLM-1.7B-bnb-4bit
From: unsloth <huggingface.co/unsloth>Subject: SmolLM-1.7B-Instruct
From: unsloth <huggingface.co/unsloth>Subject: SmolLM-135M-bnb-4bit