File size: 4,150 Bytes
ad271a3
 
 
 
 
 
 
d52a4cb
ad271a3
 
d52a4cb
ad271a3
 
d52a4cb
ad271a3
 
 
d52a4cb
ad271a3
 
 
 
ea5b7a6
 
 
 
 
 
ad271a3
d52a4cb
ad271a3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
{
  "mic": "0.2",
  "name": "SmolLM text generation",
  "usage": "AutoTokenizer + AutoModelForCausalLM.generate, batched, left padding",
  "architecture": "LlamaForCausalLM",
  "checkpoints": {
    "HuggingFaceTB/SmolLM-135M": {
      "fixture": "hf-internal-testing/mic-SmolLM-slim"
    },
    "HuggingFaceTB/SmolLM-360M": {
      "fixture": "hf-internal-testing/mic-SmolLM-slim"
    },
    "HuggingFaceTB/SmolLM-1.7B": {
      "fixture": "hf-internal-testing/mic-SmolLM-1.7B-slim"
    }
  },
  "fixtures": {
    "hf-internal-testing/mic-SmolLM-slim": {
      "built_from": "HuggingFaceTB/SmolLM-135M",
      "covers": [
        "HuggingFaceTB/SmolLM-135M",
        "HuggingFaceTB/SmolLM-360M"
      ],
      "build": {
        "seed": 17,
        "overfit": "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",
        "target_loss": 0.3
      }
    },
    "hf-internal-testing/mic-SmolLM-1.7B-slim": {
      "built_from": "HuggingFaceTB/SmolLM-1.7B",
      "covers": [
        "HuggingFaceTB/SmolLM-1.7B"
      ],
      "why_separate": "different tokenizer.json and tokenizer_config.json; full multi-head attention instead of grouped key/value heads"
    }
  },
  "integrations": {
    "transformers": {
      "entry_point": "integrations/transformers/usage.md",
      "format": "runnable-markdown",
      "requires": [
        "transformers>=5",
        "torch",
        "accelerate"
      ],
      "targets": [
        "fixtures",
        "checkpoints"
      ],
      "variants": {
        "default": {},
        "eager": {
          "attn_implementation": "eager"
        },
        "bfloat16": {
          "dtype": "bfloat16"
        }
      },
      "training": true,
      "resources": {
        "fixture": {
          "memory_gb": 1,
          "download_mb": 16
        },
        "HuggingFaceTB/SmolLM-135M": {
          "memory_gb": 2,
          "download_mb": 513
        },
        "HuggingFaceTB/SmolLM-360M": {
          "memory_gb": 3,
          "download_mb": 1300
        },
        "HuggingFaceTB/SmolLM-1.7B": {
          "memory_gb": 12,
          "disk_gb": 8,
          "download_mb": 6400,
          "measured": "peak RSS 10.6 GB (default) and 11.3 GB (bfloat16: the variant reload holds two copies), one process, Apple M5, 2026-10-07"
        }
      }
    },
    "transformers.js": {
      "entry_point": "integrations/transformers.js/integration.js",
      "format": "script",
      "requires": [
        "@huggingface/transformers@4.3.0"
      ],
      "targets": [
        "checkpoints"
      ],
      "artifacts": {
        "HuggingFaceTB/SmolLM-135M": {
          "repo": "onnx-community/SmolLM-135M-ONNX",
          "file": "onnx/model.onnx"
        },
        "HuggingFaceTB/SmolLM-360M": {
          "repo": "onnx-community/SmolLM-360M-ONNX",
          "file": "onnx/model.onnx"
        }
      },
      "unsupported": {
        "fixtures": "no ONNX conversion of the fixtures yet",
        "HuggingFaceTB/SmolLM-1.7B": "no onnx-community conversion; the creator's float32 ONNX is 6.8 GB"
      },
      "variants": {
        "default": {
          "dtype": "fp32"
        },
        "webgpu": {
          "dtype": "fp32",
          "device": "webgpu"
        },
        "webgpu-fp16": {
          "dtype": "fp16",
          "device": "webgpu"
        },
        "webgpu-q4f16": {
          "dtype": "q4f16",
          "device": "webgpu"
        }
      },
      "training": false
    }
  },
  "outputs": {
    "runtime": {
      "compare": "exact"
    },
    "generated_tokens": {
      "compare": "exact"
    },
    "generated_text": {
      "compare": "exact"
    },
    "next_token_logits": {
      "compare": "allclose",
      "atol": 0.0001,
      "rtol": 0.0001
    },
    "training.loss": {
      "compare": "allclose",
      "atol": 0.0001,
      "rtol": 0.0001
    },
    "training.gradients": {
      "compare": "all_true"
    },
    "training.updated": {
      "compare": "true"
    }
  }
}