smollm-mic

Slim model weights, executable usage and framework expectations in one repository.

Contract

MIC: SmolLM text generation

Model integration contract for one usage path, batched greedy generation, across the SmolLM checkpoints that share it. The proposed owner is Hugging Face; frameworks pin this repository by revision. The model repositories are unchanged. This repository holds the contract code and the manifest; each framework keeps its own expected results. It is a test artifact, not a model: exclude it from model search.

For agent reuse, the real model must link to this contract or expose a lookup, together with a last-passing environment and the reviewed baseline's location. A contract hidden from model search still needs to be discoverable from its covered checkpoints. A fixture pass and a real-checkpoint pass have different scopes; either establishes agreement on fixed inputs and a recorded runtime, not correctness on arbitrary prompts.

File What it is
integration.json Manifest: checkpoints, which fixture covers each, frameworks, entry points, variants, unsupported targets, comparison rules
integrations/transformers/usage.md Transformers contract, written as doc-builder runnable markdown: the same blocks are documentation and test
integrations/transformers.js/integration.js Transformers.js contract on the onnx-community conversions; inference only
Checkpoint Slim fixture (every framework PR) Transformers.js artifact
HuggingFaceTB/SmolLM-135M hf-internal-testing/mic-SmolLM-slim onnx-community/SmolLM-135M-ONNX
HuggingFaceTB/SmolLM-360M hf-internal-testing/mic-SmolLM-slim onnx-community/SmolLM-360M-ONNX
HuggingFaceTB/SmolLM-1.7B hf-internal-testing/mic-SmolLM-1.7B-slim unsupported: no onnx-community conversion

135M and 360M share one fixture because they have the same fixture key: byte-identical processor files and the same config wherever shrinking keeps it. 1.7B ships a different tokenizer.json and tokenizer_config.json and uses full multi-head attention, so it gets its own fixture.

Slim model

Slim fixture: proto-SmolLM-slim

A 3.2M-parameter fixture for the SmolLM MIC, covering HuggingFaceTB/SmolLM-135M, HuggingFaceTB/SmolLM-360M. It is a test artifact, not a usable model, tagged test-artifact to keep it out of candidate-model search.

  • Fixture key a186080c7a70. It covers every checkpoint whose processor files are byte-identical and whose config matches after shrinking.
  • Same architecture, smaller config: LlamaForCausalLM, shrunk by the generic rule in sweep.py (num_hidden_layers 2).
  • Processor files copied byte for byte from HuggingFaceTB/SmolLM-135M: generation_config.json, merges.txt, special_tokens_map.json, tokenizer.json, tokenizer_config.json, vocab.json.
  • Overfit to the contract's training step (80 steps), although random weights passed the input-sensitivity gate: random weights generate the same tokens for every prompt, so generated_tokens cannot tell the prompts apart. The training rows share 'The capital of' and then name four countries, so ln 4 at that position (about 0.2 per token) cannot be learned: target_loss 0.3.
  • Same tensor names as the real checkpoint. The real checkpoint has every parameter, and so does the fixture.
  • Saved in bfloat16, the dtype HuggingFaceTB/SmolLM-135M loads in by default.
  • Finite in float32, bfloat16, and float16 (forward, loss, gradients).

Built by build_fixtures.py; build.json records the pinned sources, gate results, and file hashes. This repository includes the slim weights, usage and framework expectations; rebuild the other files with python example/build_fixtures.py --fixture proto-SmolLM-slim.

Downloads last month
126
Safetensors
Model size
3.22M params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for huggingface-mic/smollm-mic

Finetuned
(129)
this model