ukisai commited on
Commit
deba7de
·
verified ·
1 Parent(s): 9fd3d5f

Archive diagnostic weights and clarify full-model downloads

Browse files

Preserve the diagnostic fixtures in a ZIP archive so only the three real model shards are exposed as safetensors. Add full-download links and sizes, correct public-access instructions, retain the required runtime-patch notice, and update the checksum manifest. Model weights and runtime assets are unchanged.

README.md CHANGED
@@ -36,6 +36,34 @@ long-horizon, agentic and coding performance while using fewer thinking tokens.
36
 
37
  Swift 1.5 uses **58.5% fewer thinking tokens** than base Qwen3.8-27B while scoring **0.35% higher**, for a **9.18× speed-up** on several tasks.
38
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
39
  ## Demo
40
 
41
  We gave base Qwen3.8-27B and Swift 1.5 27B the same prompt:
 
36
 
37
  Swift 1.5 uses **58.5% fewer thinking tokens** than base Qwen3.8-27B while scoring **0.35% higher**, for a **9.18× speed-up** on several tasks.
38
 
39
+ ## Download the complete model
40
+
41
+ This repository is public. Download the **whole repository from its root**:
42
+
43
+ ```bash
44
+ hf download ukisai/Swift-1.5-4bit-MLX --local-dir Swift-1.5-4bit-MLX
45
+ ```
46
+
47
+ Install the CLI and patched runtime using the steps in [USAGE.md](USAGE.md).
48
+ The full checkpoint is **15.83 GB (14.74 GiB)** and requires all three files:
49
+
50
+ | Weight shard | Size |
51
+ |---|---:|
52
+ | [model-00001-of-00003.safetensors](https://huggingface.co/ukisai/Swift-1.5-4bit-MLX/resolve/main/model-00001-of-00003.safetensors?download=true) | 5,328,325,554 bytes |
53
+ | [model-00002-of-00003.safetensors](https://huggingface.co/ukisai/Swift-1.5-4bit-MLX/resolve/main/model-00002-of-00003.safetensors?download=true) | 5,354,185,158 bytes |
54
+ | [model-00003-of-00003.safetensors](https://huggingface.co/ukisai/Swift-1.5-4bit-MLX/resolve/main/model-00003-of-00003.safetensors?download=true) | 5,144,253,923 bytes |
55
+
56
+ You also need the root config, index and tokenizer assets; the command above
57
+ downloads them together. The previously exposed **3.87 MB
58
+ `real-checkpoint-samples.safetensors` was a diagnostic sample**, not a complete
59
+ model. Those test files are now archived under `compatibility/mac-check/fixtures.zip`
60
+ to keep them out of model-file discovery. Model weights are unchanged.
61
+
62
+ **Runtime requirement:** use the included MLX-LM patch and [loading instructions](USAGE.md).
63
+ Stock MLX-LM and GUI integrations that cannot apply the patch have not been validated
64
+ for this complete checkpoint. Full-model generation on a 24 GB Mac has not been
65
+ validated; the weights require additional memory for the runtime, cache and macOS.
66
+
67
  ## Demo
68
 
69
  We gave base Qwen3.8-27B and Swift 1.5 27B the same prompt:
UPLOAD_MANIFEST.json CHANGED
@@ -1,333 +1,276 @@
1
  {
2
  "repository": "ukisai/Swift-1.5-4bit-MLX",
3
- "private": true,
4
  "source_repository": "ukisai/Swift-1.5-Qwen3.8-27b",
5
  "source_revision": "00ccd14e006897d28cb0ed5bf26390e60d274251",
6
  "files": [
 
 
 
 
 
7
  {
8
  "path": "LICENSE",
9
  "bytes": 13306,
10
- "sha256": "1367057bf17041aa1d69286a1400be5f464d2f8b8f54f600088b209eac1850be",
11
- "git_blob_sha1": "209a5720f7e4a747e658b49808a933309eeecceb"
12
  },
13
  {
14
  "path": "LICENSE-APACHE-2.0",
15
  "bytes": 11544,
16
- "sha256": "bbedc3fda3305820b977265f01b8619d87570a6739de3a5582c3464840f1e57a",
17
- "git_blob_sha1": "f938136e3adacfd92be087f6e113b5d6d97f678f"
18
  },
19
  {
20
  "path": "NOTICE",
21
  "bytes": 1133,
22
- "sha256": "be30f3d464974990e40e9833bc6f356fd89fe16733c6c1a581d97106b8ae741d",
23
- "git_blob_sha1": "c4ad1a7188a4191cb5efd0f5109bf6e9ba8caee8"
24
  },
25
  {
26
  "path": "QUANTIZATION_MANIFEST.json",
27
  "bytes": 8230,
28
- "sha256": "9f061d15042d9368e2c6a406ee20071ba6d78ce8da4c3ca53bfc13f5c2f95dd1",
29
- "git_blob_sha1": "9726e2a5a93ee4abe32cb1032a38c01695b056d8"
30
  },
31
  {
32
  "path": "README.md",
33
- "bytes": 7084,
34
- "sha256": "f9b9dd2366f69000bf70d47e393581a51a3ef69866e702be94259f1cc0261f4c",
35
- "git_blob_sha1": "f4c63e395c2b6bf9b473a42dcb260d6d0a1fa834"
36
  },
37
  {
38
  "path": "USAGE.md",
39
- "bytes": 4074,
40
- "sha256": "2d50b7882228b72dadb7b506580d4e57cc4f8b482f9afd9262c5240da161b53b",
41
- "git_blob_sha1": "8037d79a8570d801f9c8f22fd4afa4bf53d1eca8"
42
  },
43
  {
44
  "path": "chat_template.jinja",
45
  "bytes": 8952,
46
- "sha256": "c3cf9e34abf4f9e36c2d72165aa9c132d3e2a725b6c2586aaa3a8af9d7a81041",
47
- "git_blob_sha1": "c0c686f9c38d70d179fb7b5f5aa7530bc913dda3"
48
  },
49
  {
50
  "path": "compatibility/MLX-LM-LICENSE",
51
  "bytes": 1066,
52
- "sha256": "ccfab7ccb2ea306f71531c8ca77bb55507606cd90768b1e32b8b52ab5b48cf01",
53
- "git_blob_sha1": "98ff47b9ef9d4ac9f1a4bde3db13dd27456c5ea1"
54
  },
55
  {
56
  "path": "compatibility/SOURCE_EXPORT_MANIFEST.json",
57
  "bytes": 62808,
58
- "sha256": "77dd1e156ac7f0c3f5e241bbbb2a0d721fb0e3513d8dd6870862509a1812275e",
59
- "git_blob_sha1": "2c1632f6cf958f5b43169a4dfda3a5e4e813b9b6"
60
  },
61
  {
62
  "path": "compatibility/architecture-compatibility-report.md",
63
  "bytes": 2465,
64
- "sha256": "39d19fae47331b0e70f661a839c7b320d540985f8ed56b8d2d5f171128d0eaf4",
65
- "git_blob_sha1": "a7769aead59da94d0406ec0fe24e65b5dfc1f1de"
66
  },
67
  {
68
  "path": "compatibility/aws-actual-source-structural-results.json",
69
  "bytes": 2144,
70
- "sha256": "a869d8e7a5048f59089077f37135cdc63ec955ad38738bc1b6bbc6460cc9d7bc",
71
- "git_blob_sha1": "dea1d92bcf6cef93a611e19bf034dfc1891467ba"
72
  },
73
  {
74
  "path": "compatibility/aws-source-verification.json",
75
  "bytes": 379707,
76
- "sha256": "ad944ae15bedaaec80abf9cd5e9e945f478397328cf3145f19517ff96295ad9c",
77
- "git_blob_sha1": "c0de55933daec5c6a5f794b9b9a9c4e3bc2bdd7d"
78
  },
79
  {
80
  "path": "compatibility/compatibility-tests-linux.log",
81
  "bytes": 99,
82
- "sha256": "e8735c26c6801337a00665881341818701e196a0c69ebd90f7702d98535f3179",
83
- "git_blob_sha1": "eb3133aba134e5c5d8378aad30409dd4d4afa0d3"
84
  },
85
  {
86
  "path": "compatibility/conversion-command.json",
87
  "bytes": 581,
88
- "sha256": "94e711a0a931855979a4db1d83a43cd54167f55c829c74e24135c8ad583a7f2b",
89
- "git_blob_sha1": "a98ccccdb019212183d29b6374974ce63d1b8050"
90
  },
91
  {
92
  "path": "compatibility/conversion-result.json",
93
  "bytes": 689,
94
- "sha256": "aa74632f5e0ebe7cfaccb9fd8251ccfd7dbe9d81e9384658e7d313b611acafc7",
95
- "git_blob_sha1": "af1aa936ff6f2f2a5986e6d68ff3a748b72ab4da"
96
  },
97
  {
98
  "path": "compatibility/conversion.log",
99
  "bytes": 113,
100
- "sha256": "927e01909126b96eea5faf9692d99f02fdaf99d1aa61d14d257f3ebdb0afd1a0",
101
- "git_blob_sha1": "e933301e9777876e2ccac21fc49ae6a2d4879660"
102
  },
103
  {
104
  "path": "compatibility/cpu-quantized-matmul-diagnostic.json",
105
  "bytes": 290,
106
- "sha256": "5adefdff0a3efbc54c1abc92cd05aa18e63a39771fe9d6b8972bcd2fea1cf3d3",
107
- "git_blob_sha1": "7c452317ed3da7cdd2e6ee9742bd91534ba25c28"
108
  },
109
  {
110
  "path": "compatibility/environment-linux.json",
111
  "bytes": 367,
112
- "sha256": "efdd012bfc5ad59f07f9dc6e8a6bd67bb992cd9363174171c271ce1ad5ee0cec",
113
- "git_blob_sha1": "972ebef9b09def952f0880ec1e60a2f192df1416"
114
  },
115
  {
116
  "path": "compatibility/fixed-affine-test.log",
117
  "bytes": 113,
118
- "sha256": "a40772b0d08d9f5ce659ee06cd5e5573ec0697073295d819a5dc9b6b1f4302bd",
119
- "git_blob_sha1": "7e3746c1857e2e5dc808589514ca56d65d699a11"
120
- },
121
- {
122
- "path": "compatibility/mac-check/checkpoint-headers.json",
123
- "bytes": 561445,
124
- "sha256": "141b5b6193da63332328bb0f8ad8aac129f51232ab345021dd6f8e4319c5640c",
125
- "git_blob_sha1": "20ed71f7444de28ca236be0da3bbd70319ee083c"
126
  },
127
  {
128
- "path": "compatibility/mac-check/config.json",
129
- "bytes": 4577,
130
- "sha256": "d0bbe7655fdaa589acbdf3739e2f2378d2c7462da05338ad5161c70025540b98",
131
- "git_blob_sha1": "9143ac44bb812f357882d503ae90149661616fc1"
132
  },
133
  {
134
- "path": "compatibility/mac-check/model.safetensors.index.json",
135
- "bytes": 232537,
136
- "sha256": "937800b65e142989cf9f973de5c0f42b0a5ad0659871dd1b67d917d78a195921",
137
- "git_blob_sha1": "c943542ddfee76de8e5b0ec14e7fbb86243adbb6"
138
- },
139
- {
140
- "path": "compatibility/mac-check/real-checkpoint-samples.safetensors",
141
- "bytes": 3866825,
142
- "sha256": "c0e3f757947e7ffdaf96b90eb8e0f0ae72e83b9685d3462b99cd6bf193a2cd5b",
143
- "git_blob_sha1": "63afc5a8192c9726d15abe3955846fc0dd9c663a"
144
- },
145
- {
146
- "path": "compatibility/mac-check/samples.json",
147
- "bytes": 975,
148
- "sha256": "e1d9c0062005f8204d01b52099deaa97dcda44f62bb44c7dba6ffaf8f21c72d7",
149
- "git_blob_sha1": "fad93b5e0ebffe6fc096b157f30dd4794f661130"
150
  },
151
  {
152
  "path": "compatibility/mac-compatibility-results.json",
153
  "bytes": 1924,
154
- "sha256": "45f665d5fb442861c40631b78d1134a888b318e30382d729e7e8a703b94434e2",
155
- "git_blob_sha1": "af7ac5d2d3d9ec83b6aae7db3ede7ee61c730303"
156
  },
157
  {
158
  "path": "compatibility/missing-file-recovery-report.md",
159
  "bytes": 1046,
160
- "sha256": "78fe1768db6b2c95354638cf257bea795389c14b38e4872fb3150df851b9d3ec",
161
- "git_blob_sha1": "7c45edf5a824384bea8c9cc4b0dd17ea1bbbb096"
 
 
 
 
162
  },
163
  {
164
  "path": "compatibility/quant-tensor-mapping-manifest.json",
165
  "bytes": 646822,
166
- "sha256": "bf99693a9747c476af80b306bf61df546824815fb934cc6bfa1ed150fa967587",
167
- "git_blob_sha1": "431b551674ec9669b6f04e3f2b5736f93b1f91ba"
168
  },
169
  {
170
  "path": "compatibility/quant-validation-results.json",
171
  "bytes": 3783,
172
- "sha256": "ecb99453d4c2b23a818f121d0e2c141328dded5f7fac205af766221ec973ae1d",
173
- "git_blob_sha1": "1e6eba8e7d3c785284c79d7603d3db13fef158fe"
174
  },
175
  {
176
  "path": "compatibility/quant-validation.log",
177
  "bytes": 4092,
178
- "sha256": "8616f0367709a655a549a458c7d337ba326681646de9ce01b61439a270b2b493",
179
- "git_blob_sha1": "a3c99e8901464f3149b8f9103604f12ce54182cb"
180
  },
181
  {
182
  "path": "compatibility/requirements-linux.txt",
183
  "bytes": 810,
184
- "sha256": "89a4ef8054809e043b1e0b1c7b0f41847666a7fd7d263c325311b30be9eb798f",
185
- "git_blob_sha1": "513937cb32426c806dd60bb83b54ccb402aa81c0"
186
  },
187
  {
188
  "path": "compatibility/run-compatibility.sh",
189
  "bytes": 1059,
190
- "sha256": "1024e009047bf97ba4876b8543f4151728b1c85f2c93abf09b73f7811c1a25fb",
191
- "git_blob_sha1": "551f80902537a58768a170d53134fc0559e131f1"
192
  },
193
  {
194
  "path": "compatibility/run-conversion.py",
195
  "bytes": 2860,
196
- "sha256": "6d612bbfd438abdecf393f16143f724c1d37f60903ca8ce46da486c2f3671a41",
197
- "git_blob_sha1": "2d7e9a1453a489eeb72aecce44a5171e1fadf27f"
198
  },
199
  {
200
  "path": "compatibility/setup-linux.sh",
201
  "bytes": 1734,
202
- "sha256": "e253306f08eb86d66e1c15d02733e349a5f82c00abb15ff0656f5ce40acfb775",
203
- "git_blob_sha1": "ce35740f29f974529d27fde03ac348dabb83efb9"
204
  },
205
  {
206
  "path": "compatibility/source-file-manifest.csv",
207
  "bytes": 4842,
208
- "sha256": "f4fec6fc3318813395745f4d68700ebaf13e13bbf9bbdf2b90454faf6bbe721e",
209
- "git_blob_sha1": "8275d62522a8da3aafbcfc412f23bfb7abf4739c"
210
  },
211
  {
212
  "path": "compatibility/swift15-mlx-lm.patch",
213
  "bytes": 38976,
214
- "sha256": "f6f1d0bdafa45863bfbf93dac0398c481c993ea04fdf38b9bae98c643f89eaec",
215
- "git_blob_sha1": "b739acc2e3b4cb82f073b7280255bcb898bb2a33"
216
  },
217
  {
218
  "path": "compatibility/unmatched-tensor-analysis.csv",
219
  "bytes": 102593,
220
- "sha256": "57f6537c39953a2f02971c2ef09ccfb7806f0ea729a6143fa90157e1b961ed05",
221
- "git_blob_sha1": "43011b66fcf2b390f1c821a21a80d4e84c84fb19"
222
  },
223
  {
224
  "path": "compatibility/validate-mac-format.py",
225
- "bytes": 3576,
226
- "sha256": "1f8a04cf27919daad342365b26c86c02ceb7b97b71752bc1cf8ac66309743554",
227
- "git_blob_sha1": "2abc61b81ddb01ab0754c76ec15d14bd1670bb28"
228
  },
229
  {
230
  "path": "compatibility/validate-quant.py",
231
  "bytes": 8617,
232
- "sha256": "484255b5a4a8f71119312ed1ae54b1246f5b4dd70ef698fb32d4cc78c75ffba9",
233
- "git_blob_sha1": "a52f8c19a3f91fcb09701758d5664bfa453ed8d7"
234
  },
235
  {
236
  "path": "compatibility/validate_aws_source_linux.py",
237
  "bytes": 4798,
238
- "sha256": "40c8f2678e7efa1ec6df9acbefc7e0c65def8e707d70d78257b0baff02d9b3d8",
239
- "git_blob_sha1": "ca986cbfa2a4ba480ef9e7a0986209fae0256831"
240
  },
241
  {
242
  "path": "compatibility/verify_source_readonly.py",
243
  "bytes": 4093,
244
- "sha256": "2d02c6d7c7e81f6029faf3f7cfcd43ba6b0ca7d3858dd3e5e6c1a82a5631e765",
245
- "git_blob_sha1": "5dee1520d86f961e4ceee7e694fbe3515075c6f2"
246
  },
247
  {
248
  "path": "config.json",
249
  "bytes": 4577,
250
- "sha256": "d0bbe7655fdaa589acbdf3739e2f2378d2c7462da05338ad5161c70025540b98",
251
- "git_blob_sha1": "9143ac44bb812f357882d503ae90149661616fc1"
252
  },
253
  {
254
  "path": "generation_config.json",
255
  "bytes": 202,
256
- "sha256": "e70c136c1b78ddc1fb0905bac8e733a4dc448d4f852a5dd75143fffc70be550e",
257
- "git_blob_sha1": "023756cfadf88e5bf69eefeee3e172f38c448d64"
258
  },
259
  {
260
  "path": "merges.txt",
261
  "bytes": 3353259,
262
- "sha256": "a9d356d7bdf1ef4949e3e748e95b8e10ad9d4e2e838eddc38a0a7b6b94d1db8d",
263
- "git_blob_sha1": "a494e019ca1502219fd0128658b979e5f05ae8e8"
264
  },
265
  {
266
  "path": "model-00001-of-00003.safetensors",
267
  "bytes": 5328325554,
268
- "sha256": "d91b70ca84dff315addeeb8a599dce2beccfec33c7483686ede2e8ff3cc459dc",
269
- "git_blob_sha1": "972fbab4cd3302fad7f76024f95765a35c6f0c70"
270
  },
271
  {
272
  "path": "model-00002-of-00003.safetensors",
273
  "bytes": 5354185158,
274
- "sha256": "eddcff1a6ef0971990f7cd01dba77ab9a8c20d59821bb4cd7e25234fe3809346",
275
- "git_blob_sha1": "6ab9eeb3981fe2f243a5c6c9b18efb23ad42f879"
276
  },
277
  {
278
  "path": "model-00003-of-00003.safetensors",
279
  "bytes": 5144253923,
280
- "sha256": "644cc5322ff706c9608b42ea1ff83e0beb12b828d49b36c468a366f44593b8eb",
281
- "git_blob_sha1": "7127bb75e507028d7684e48815cfeb11f74dcaa5"
282
  },
283
  {
284
  "path": "model.safetensors.index.json",
285
  "bytes": 232537,
286
- "sha256": "937800b65e142989cf9f973de5c0f42b0a5ad0659871dd1b67d917d78a195921",
287
- "git_blob_sha1": "c943542ddfee76de8e5b0ec14e7fbb86243adbb6"
288
  },
289
  {
290
  "path": "preprocessor_config.json",
291
  "bytes": 390,
292
- "sha256": "27225450ac9c6529872ee1924fcb0962ff5634834f817040f444118116f4e516",
293
- "git_blob_sha1": "2ea84a437d448ff71b08df68fdd949d5cc4ebb64"
 
 
 
 
294
  },
295
  {
296
  "path": "tokenizer.json",
297
  "bytes": 12809320,
298
- "sha256": "0997f410c57a1f4e53b09e4be8f4a172d90edd9564368fb0847030937229b9f3",
299
- "git_blob_sha1": "b438cf847e527641b288c91745740dfa0f9da294"
300
  },
301
  {
302
  "path": "tokenizer_config.json",
303
  "bytes": 17928,
304
- "sha256": "b11349aafa7cdc6a320767cf7ceb29ed82f7eda5d65e8e0819e76f0ce947bf27",
305
- "git_blob_sha1": "5de744b3fca2129d7186979ae47c06be33903243"
306
  },
307
  {
308
  "path": "ukisai-banner.png",
309
  "bytes": 307739,
310
- "sha256": "8577252b8b37e331f06f7ddecdf3bfa1c497e164f9eb36d78c37232d1b8492ca",
311
- "git_blob_sha1": "efd86f93bda3ac7da9628c5284a07706ce798a5b"
312
  },
313
  {
314
  "path": "video_preprocessor_config.json",
315
  "bytes": 385,
316
- "sha256": "7768af27c1fafa9cc9011c1dc20067e03f8915e03b63504550e11d5066986d13",
317
- "git_blob_sha1": "3ba673a5ad7d4d13f54155ecd38b2a94a6dac8fe"
318
  },
319
  {
320
  "path": "vocab.json",
321
  "bytes": 6722759,
322
- "sha256": "ce99b4cb2983d118806ce0a8b777a35b093e2000a503ebde25853284c9dfa003",
323
- "git_blob_sha1": "0aa0ce0658d60ac4a5d609f4eadb0e8e43514176"
324
- },
325
- {
326
- "path": "swift-1.5-planet-demo.mp4",
327
- "bytes": 4738825,
328
- "sha256": "1cda6924169e8b83e5d6d7299baf8329ed1b1a182a481aa0e06344e0f5c00111"
329
  }
330
  ],
331
- "total_bytes_excluding_manifest": 15860955305,
332
- "manifest_self_excluded": true
 
333
  }
 
1
  {
2
  "repository": "ukisai/Swift-1.5-4bit-MLX",
3
+ "private": false,
4
  "source_repository": "ukisai/Swift-1.5-Qwen3.8-27b",
5
  "source_revision": "00ccd14e006897d28cb0ed5bf26390e60d274251",
6
  "files": [
7
+ {
8
+ "path": ".gitattributes",
9
+ "bytes": 1686,
10
+ "sha256": "8a9fd1f95733fb82a6cba50f5ea2b1e26ca7578bea7a7cc21b4301ff83b1ce3b"
11
+ },
12
  {
13
  "path": "LICENSE",
14
  "bytes": 13306,
15
+ "sha256": "1367057bf17041aa1d69286a1400be5f464d2f8b8f54f600088b209eac1850be"
 
16
  },
17
  {
18
  "path": "LICENSE-APACHE-2.0",
19
  "bytes": 11544,
20
+ "sha256": "bbedc3fda3305820b977265f01b8619d87570a6739de3a5582c3464840f1e57a"
 
21
  },
22
  {
23
  "path": "NOTICE",
24
  "bytes": 1133,
25
+ "sha256": "be30f3d464974990e40e9833bc6f356fd89fe16733c6c1a581d97106b8ae741d"
 
26
  },
27
  {
28
  "path": "QUANTIZATION_MANIFEST.json",
29
  "bytes": 8230,
30
+ "sha256": "9f061d15042d9368e2c6a406ee20071ba6d78ce8da4c3ca53bfc13f5c2f95dd1"
 
31
  },
32
  {
33
  "path": "README.md",
34
+ "bytes": 9378,
35
+ "sha256": "ff4ca8864c6280d1cf22a9007e9785a5c169a98b2451956fe31b5fae2813c48c"
 
36
  },
37
  {
38
  "path": "USAGE.md",
39
+ "bytes": 5383,
40
+ "sha256": "cb883ee96b83b51dadb4b895478a35e07d218fcab25668aeaf4ecb4849773e01"
 
41
  },
42
  {
43
  "path": "chat_template.jinja",
44
  "bytes": 8952,
45
+ "sha256": "c3cf9e34abf4f9e36c2d72165aa9c132d3e2a725b6c2586aaa3a8af9d7a81041"
 
46
  },
47
  {
48
  "path": "compatibility/MLX-LM-LICENSE",
49
  "bytes": 1066,
50
+ "sha256": "ccfab7ccb2ea306f71531c8ca77bb55507606cd90768b1e32b8b52ab5b48cf01"
 
51
  },
52
  {
53
  "path": "compatibility/SOURCE_EXPORT_MANIFEST.json",
54
  "bytes": 62808,
55
+ "sha256": "77dd1e156ac7f0c3f5e241bbbb2a0d721fb0e3513d8dd6870862509a1812275e"
 
56
  },
57
  {
58
  "path": "compatibility/architecture-compatibility-report.md",
59
  "bytes": 2465,
60
+ "sha256": "39d19fae47331b0e70f661a839c7b320d540985f8ed56b8d2d5f171128d0eaf4"
 
61
  },
62
  {
63
  "path": "compatibility/aws-actual-source-structural-results.json",
64
  "bytes": 2144,
65
+ "sha256": "a869d8e7a5048f59089077f37135cdc63ec955ad38738bc1b6bbc6460cc9d7bc"
 
66
  },
67
  {
68
  "path": "compatibility/aws-source-verification.json",
69
  "bytes": 379707,
70
+ "sha256": "ad944ae15bedaaec80abf9cd5e9e945f478397328cf3145f19517ff96295ad9c"
 
71
  },
72
  {
73
  "path": "compatibility/compatibility-tests-linux.log",
74
  "bytes": 99,
75
+ "sha256": "e8735c26c6801337a00665881341818701e196a0c69ebd90f7702d98535f3179"
 
76
  },
77
  {
78
  "path": "compatibility/conversion-command.json",
79
  "bytes": 581,
80
+ "sha256": "94e711a0a931855979a4db1d83a43cd54167f55c829c74e24135c8ad583a7f2b"
 
81
  },
82
  {
83
  "path": "compatibility/conversion-result.json",
84
  "bytes": 689,
85
+ "sha256": "aa74632f5e0ebe7cfaccb9fd8251ccfd7dbe9d81e9384658e7d313b611acafc7"
 
86
  },
87
  {
88
  "path": "compatibility/conversion.log",
89
  "bytes": 113,
90
+ "sha256": "927e01909126b96eea5faf9692d99f02fdaf99d1aa61d14d257f3ebdb0afd1a0"
 
91
  },
92
  {
93
  "path": "compatibility/cpu-quantized-matmul-diagnostic.json",
94
  "bytes": 290,
95
+ "sha256": "5adefdff0a3efbc54c1abc92cd05aa18e63a39771fe9d6b8972bcd2fea1cf3d3"
 
96
  },
97
  {
98
  "path": "compatibility/environment-linux.json",
99
  "bytes": 367,
100
+ "sha256": "efdd012bfc5ad59f07f9dc6e8a6bd67bb992cd9363174171c271ce1ad5ee0cec"
 
101
  },
102
  {
103
  "path": "compatibility/fixed-affine-test.log",
104
  "bytes": 113,
105
+ "sha256": "a40772b0d08d9f5ce659ee06cd5e5573ec0697073295d819a5dc9b6b1f4302bd"
 
 
 
 
 
 
 
106
  },
107
  {
108
+ "path": "compatibility/mac-check/README.md",
109
+ "bytes": 759,
110
+ "sha256": "e66967ff8d712bd3c2f174a21f4a438266f183b9e40991088726efc28d3dec4c"
 
111
  },
112
  {
113
+ "path": "compatibility/mac-check/fixtures.zip",
114
+ "bytes": 3527833,
115
+ "sha256": "f63de30021e270912d939cbf18a75165b30e03c177f98bb9a9051694f050d102"
 
 
 
 
 
 
 
 
 
 
 
 
 
116
  },
117
  {
118
  "path": "compatibility/mac-compatibility-results.json",
119
  "bytes": 1924,
120
+ "sha256": "45f665d5fb442861c40631b78d1134a888b318e30382d729e7e8a703b94434e2"
 
121
  },
122
  {
123
  "path": "compatibility/missing-file-recovery-report.md",
124
  "bytes": 1046,
125
+ "sha256": "78fe1768db6b2c95354638cf257bea795389c14b38e4872fb3150df851b9d3ec"
126
+ },
127
+ {
128
+ "path": "compatibility/public-download-fix.md",
129
+ "bytes": 1253,
130
+ "sha256": "5fc12389cd6cfc4e1cad5094983690fde7d483e3d58ca7fccb7b21925f8e0788"
131
  },
132
  {
133
  "path": "compatibility/quant-tensor-mapping-manifest.json",
134
  "bytes": 646822,
135
+ "sha256": "bf99693a9747c476af80b306bf61df546824815fb934cc6bfa1ed150fa967587"
 
136
  },
137
  {
138
  "path": "compatibility/quant-validation-results.json",
139
  "bytes": 3783,
140
+ "sha256": "ecb99453d4c2b23a818f121d0e2c141328dded5f7fac205af766221ec973ae1d"
 
141
  },
142
  {
143
  "path": "compatibility/quant-validation.log",
144
  "bytes": 4092,
145
+ "sha256": "8616f0367709a655a549a458c7d337ba326681646de9ce01b61439a270b2b493"
 
146
  },
147
  {
148
  "path": "compatibility/requirements-linux.txt",
149
  "bytes": 810,
150
+ "sha256": "89a4ef8054809e043b1e0b1c7b0f41847666a7fd7d263c325311b30be9eb798f"
 
151
  },
152
  {
153
  "path": "compatibility/run-compatibility.sh",
154
  "bytes": 1059,
155
+ "sha256": "1024e009047bf97ba4876b8543f4151728b1c85f2c93abf09b73f7811c1a25fb"
 
156
  },
157
  {
158
  "path": "compatibility/run-conversion.py",
159
  "bytes": 2860,
160
+ "sha256": "6d612bbfd438abdecf393f16143f724c1d37f60903ca8ce46da486c2f3671a41"
 
161
  },
162
  {
163
  "path": "compatibility/setup-linux.sh",
164
  "bytes": 1734,
165
+ "sha256": "e253306f08eb86d66e1c15d02733e349a5f82c00abb15ff0656f5ce40acfb775"
 
166
  },
167
  {
168
  "path": "compatibility/source-file-manifest.csv",
169
  "bytes": 4842,
170
+ "sha256": "f4fec6fc3318813395745f4d68700ebaf13e13bbf9bbdf2b90454faf6bbe721e"
 
171
  },
172
  {
173
  "path": "compatibility/swift15-mlx-lm.patch",
174
  "bytes": 38976,
175
+ "sha256": "f6f1d0bdafa45863bfbf93dac0398c481c993ea04fdf38b9bae98c643f89eaec"
 
176
  },
177
  {
178
  "path": "compatibility/unmatched-tensor-analysis.csv",
179
  "bytes": 102593,
180
+ "sha256": "57f6537c39953a2f02971c2ef09ccfb7806f0ea729a6143fa90157e1b961ed05"
 
181
  },
182
  {
183
  "path": "compatibility/validate-mac-format.py",
184
+ "bytes": 4344,
185
+ "sha256": "42099ac06ebe3616c160d7e062fb5ab3a615d19912e5c974e574b7708064b452"
 
186
  },
187
  {
188
  "path": "compatibility/validate-quant.py",
189
  "bytes": 8617,
190
+ "sha256": "484255b5a4a8f71119312ed1ae54b1246f5b4dd70ef698fb32d4cc78c75ffba9"
 
191
  },
192
  {
193
  "path": "compatibility/validate_aws_source_linux.py",
194
  "bytes": 4798,
195
+ "sha256": "40c8f2678e7efa1ec6df9acbefc7e0c65def8e707d70d78257b0baff02d9b3d8"
 
196
  },
197
  {
198
  "path": "compatibility/verify_source_readonly.py",
199
  "bytes": 4093,
200
+ "sha256": "2d02c6d7c7e81f6029faf3f7cfcd43ba6b0ca7d3858dd3e5e6c1a82a5631e765"
 
201
  },
202
  {
203
  "path": "config.json",
204
  "bytes": 4577,
205
+ "sha256": "d0bbe7655fdaa589acbdf3739e2f2378d2c7462da05338ad5161c70025540b98"
 
206
  },
207
  {
208
  "path": "generation_config.json",
209
  "bytes": 202,
210
+ "sha256": "e70c136c1b78ddc1fb0905bac8e733a4dc448d4f852a5dd75143fffc70be550e"
 
211
  },
212
  {
213
  "path": "merges.txt",
214
  "bytes": 3353259,
215
+ "sha256": "a9d356d7bdf1ef4949e3e748e95b8e10ad9d4e2e838eddc38a0a7b6b94d1db8d"
 
216
  },
217
  {
218
  "path": "model-00001-of-00003.safetensors",
219
  "bytes": 5328325554,
220
+ "sha256": "d91b70ca84dff315addeeb8a599dce2beccfec33c7483686ede2e8ff3cc459dc"
 
221
  },
222
  {
223
  "path": "model-00002-of-00003.safetensors",
224
  "bytes": 5354185158,
225
+ "sha256": "eddcff1a6ef0971990f7cd01dba77ab9a8c20d59821bb4cd7e25234fe3809346"
 
226
  },
227
  {
228
  "path": "model-00003-of-00003.safetensors",
229
  "bytes": 5144253923,
230
+ "sha256": "644cc5322ff706c9608b42ea1ff83e0beb12b828d49b36c468a366f44593b8eb"
 
231
  },
232
  {
233
  "path": "model.safetensors.index.json",
234
  "bytes": 232537,
235
+ "sha256": "937800b65e142989cf9f973de5c0f42b0a5ad0659871dd1b67d917d78a195921"
 
236
  },
237
  {
238
  "path": "preprocessor_config.json",
239
  "bytes": 390,
240
+ "sha256": "27225450ac9c6529872ee1924fcb0962ff5634834f817040f444118116f4e516"
241
+ },
242
+ {
243
+ "path": "swift-1.5-planet-demo.mp4",
244
+ "bytes": 4738825,
245
+ "sha256": "1cda6924169e8b83e5d6d7299baf8329ed1b1a182a481aa0e06344e0f5c00111"
246
  },
247
  {
248
  "path": "tokenizer.json",
249
  "bytes": 12809320,
250
+ "sha256": "0997f410c57a1f4e53b09e4be8f4a172d90edd9564368fb0847030937229b9f3"
 
251
  },
252
  {
253
  "path": "tokenizer_config.json",
254
  "bytes": 17928,
255
+ "sha256": "b11349aafa7cdc6a320767cf7ceb29ed82f7eda5d65e8e0819e76f0ce947bf27"
 
256
  },
257
  {
258
  "path": "ukisai-banner.png",
259
  "bytes": 307739,
260
+ "sha256": "8577252b8b37e331f06f7ddecdf3bfa1c497e164f9eb36d78c37232d1b8492ca"
 
261
  },
262
  {
263
  "path": "video_preprocessor_config.json",
264
  "bytes": 385,
265
+ "sha256": "7768af27c1fafa9cc9011c1dc20067e03f8915e03b63504550e11d5066986d13"
 
266
  },
267
  {
268
  "path": "vocab.json",
269
  "bytes": 6722759,
270
+ "sha256": "ce99b4cb2983d118806ce0a8b777a35b093e2000a503ebde25853284c9dfa003"
 
 
 
 
 
 
271
  }
272
  ],
273
+ "total_bytes_excluding_manifest": 15859824848,
274
+ "manifest_self_excluded": true,
275
+ "packaging_update": "2026-09-24: diagnostic fixtures archived; model weights unchanged"
276
  }
USAGE.md CHANGED
@@ -3,16 +3,22 @@
3
  Use the included patch with the pinned official Apple MLX-LM revision. Unpatched
4
  text-only Qwen support does not preserve this checkpoint's complete parameter tree.
5
 
6
- Use Python 3.12 in a new working directory. Install the HF CLI before using it,
7
- and pin the complete model revision as well as the MLX-LM source revision.
8
- This repository is private: after installing the CLI, run `hf auth login`
9
- interactively if not already signed in with an account that has access.
 
 
 
 
 
 
10
 
11
  ```bash
12
  python3.12 -m venv .venv
13
  source .venv/bin/activate
14
  python -m pip install 'huggingface_hub==1.31.0'
15
- SWIFT_MLX_REVISION=d2140379e1fd593002c92fa552b2b37fb6eb1159
16
  hf download ukisai/Swift-1.5-4bit-MLX --revision "$SWIFT_MLX_REVISION" --local-dir Swift-1.5-4bit-MLX
17
  hf cache verify ukisai/Swift-1.5-4bit-MLX --revision "$SWIFT_MLX_REVISION" --local-dir Swift-1.5-4bit-MLX --fail-on-missing-files
18
  git clone https://github.com/ml-explore/mlx-lm.git swift15-mlx-lm
@@ -21,10 +27,14 @@ git -C swift15-mlx-lm apply --check ../Swift-1.5-4bit-MLX/compatibility/swift15-
21
  git -C swift15-mlx-lm apply ../Swift-1.5-4bit-MLX/compatibility/swift15-mlx-lm.patch
22
  ```
23
 
 
 
 
 
24
  Stop after any missing-file or checksum failure. The checkpoint contains about
25
  15.83 GB of tensor data, before runtime, cache and OS overhead. Do not force the
26
  full model onto a 16 GiB Mac or increase system memory limits. Full-model Apple
27
- generation remains unverified. The recorded small Metal samples are not a full run.
28
 
29
  On Apple Silicon:
30
 
@@ -90,3 +100,17 @@ mlx_lm.convert --hf-path /path/to/Swift-1.5-BF16 \
90
  The converter refuses an existing output directory. It uses official MLX-LM lazy
91
  loading, quantization, sharding, and saving; the patch supplies the complete model
92
  and strict parameter/asset mapping.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3
  Use the included patch with the pinned official Apple MLX-LM revision. Unpatched
4
  text-only Qwen support does not preserve this checkpoint's complete parameter tree.
5
 
6
+ Use Python 3.12 in a new working directory. The model repository is public;
7
+ authentication is optional. Download the complete repository, including all three
8
+ root-level `model-0000*-of-00003.safetensors` shards (15,826,764,635 bytes total),
9
+ the index, config and tokenizer assets. The archived 3.87 MB diagnostic sample
10
+ under `compatibility/mac-check/` cannot be used as the model.
11
+
12
+ The included MLX-LM patch is required. This is the supported installation path;
13
+ GUI apps and stock runtimes that cannot use that patch have not been validated.
14
+ The commands resolve the current public revision once, then download and verify
15
+ that exact snapshot. They do not load the model into memory.
16
 
17
  ```bash
18
  python3.12 -m venv .venv
19
  source .venv/bin/activate
20
  python -m pip install 'huggingface_hub==1.31.0'
21
+ SWIFT_MLX_REVISION="$(python -c 'import json, urllib.request; print(json.load(urllib.request.urlopen("https://huggingface.co/api/models/ukisai/Swift-1.5-4bit-MLX"))["sha"])')"
22
  hf download ukisai/Swift-1.5-4bit-MLX --revision "$SWIFT_MLX_REVISION" --local-dir Swift-1.5-4bit-MLX
23
  hf cache verify ukisai/Swift-1.5-4bit-MLX --revision "$SWIFT_MLX_REVISION" --local-dir Swift-1.5-4bit-MLX --fail-on-missing-files
24
  git clone https://github.com/ml-explore/mlx-lm.git swift15-mlx-lm
 
27
  git -C swift15-mlx-lm apply ../Swift-1.5-4bit-MLX/compatibility/swift15-mlx-lm.patch
28
  ```
29
 
30
+ Verify that the download contains all three root weight shards. If a prior app
31
+ download gave you only `real-checkpoint-samples.safetensors`, run the repository
32
+ download above in a fresh directory. That file is a test fixture, not a model shard.
33
+
34
  Stop after any missing-file or checksum failure. The checkpoint contains about
35
  15.83 GB of tensor data, before runtime, cache and OS overhead. Do not force the
36
  full model onto a 16 GiB Mac or increase system memory limits. Full-model Apple
37
+ generation, including on 24 GB Macs, remains unverified. The recorded small Metal samples are not a full run.
38
 
39
  On Apple Silicon:
40
 
 
100
  The converter refuses an existing output directory. It uses official MLX-LM lazy
101
  loading, quantization, sharding, and saving; the patch supplies the complete model
102
  and strict parameter/asset mapping.
103
+
104
+ ## Reproduce the small Metal checks
105
+
106
+ The diagnostic files are stored in `compatibility/mac-check/fixtures.zip` so model
107
+ downloaders do not mistake a small test checkpoint for the real model. The updated
108
+ validator reads that archive automatically, without downloading or evaluating the
109
+ full 27B model:
110
+
111
+ ```bash
112
+ python Swift-1.5-4bit-MLX/compatibility/validate-mac-format.py
113
+ ```
114
+
115
+ This checks format, the complete parameter tree and three real weight samples.
116
+ It does not establish full-model Apple Silicon generation or GUI compatibility.
compatibility/mac-check/README.md ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Diagnostic fixtures only
2
+
3
+ This directory is for small Metal validation tests. It is not a model checkpoint.
4
+
5
+ Download the complete model from the [repository root](https://huggingface.co/ukisai/Swift-1.5-4bit-MLX/tree/main):
6
+
7
+ ```bash
8
+ hf download ukisai/Swift-1.5-4bit-MLX --local-dir Swift-1.5-4bit-MLX
9
+ ```
10
+
11
+ The real model has three root weight shards totaling 15.83 GB (14.74 GiB).
12
+ See [USAGE.md](../../USAGE.md) for the required patched runtime.
13
+
14
+ `fixtures.zip` preserves the original five diagnostic files byte for byte,
15
+ including the 3.87 MB `real-checkpoint-samples.safetensors`. They are archived to
16
+ avoid being selected as a model by download tools. `validate-mac-format.py` reads
17
+ the archive automatically. No model weights were removed or changed.
compatibility/mac-check/checkpoint-headers.json DELETED
The diff for this file is too large to render. See raw diff
 
compatibility/mac-check/config.json DELETED
@@ -1,154 +0,0 @@
1
- {
2
- "architectures": [
3
- "Qwen3_5ForConditionalGeneration"
4
- ],
5
- "eos_token_id": [
6
- 248046,
7
- 248044
8
- ],
9
- "image_token_id": 248056,
10
- "language_model_only": false,
11
- "model_type": "qwen3_5",
12
- "quantization": {
13
- "group_size": 64,
14
- "bits": 4,
15
- "mode": "affine"
16
- },
17
- "quantization_config": {
18
- "group_size": 64,
19
- "bits": 4,
20
- "mode": "affine"
21
- },
22
- "text_config": {
23
- "attention_bias": false,
24
- "attention_dropout": 0.0,
25
- "attn_output_gate": true,
26
- "bos_token_id": 248044,
27
- "dtype": "bfloat16",
28
- "eos_token_id": 248044,
29
- "full_attention_interval": 4,
30
- "head_dim": 256,
31
- "hidden_act": "silu",
32
- "hidden_size": 5120,
33
- "initializer_range": 0.02,
34
- "intermediate_size": 17408,
35
- "layer_types": [
36
- "linear_attention",
37
- "linear_attention",
38
- "linear_attention",
39
- "full_attention",
40
- "linear_attention",
41
- "linear_attention",
42
- "linear_attention",
43
- "full_attention",
44
- "linear_attention",
45
- "linear_attention",
46
- "linear_attention",
47
- "full_attention",
48
- "linear_attention",
49
- "linear_attention",
50
- "linear_attention",
51
- "full_attention",
52
- "linear_attention",
53
- "linear_attention",
54
- "linear_attention",
55
- "full_attention",
56
- "linear_attention",
57
- "linear_attention",
58
- "linear_attention",
59
- "full_attention",
60
- "linear_attention",
61
- "linear_attention",
62
- "linear_attention",
63
- "full_attention",
64
- "linear_attention",
65
- "linear_attention",
66
- "linear_attention",
67
- "full_attention",
68
- "linear_attention",
69
- "linear_attention",
70
- "linear_attention",
71
- "full_attention",
72
- "linear_attention",
73
- "linear_attention",
74
- "linear_attention",
75
- "full_attention",
76
- "linear_attention",
77
- "linear_attention",
78
- "linear_attention",
79
- "full_attention",
80
- "linear_attention",
81
- "linear_attention",
82
- "linear_attention",
83
- "full_attention",
84
- "linear_attention",
85
- "linear_attention",
86
- "linear_attention",
87
- "full_attention",
88
- "linear_attention",
89
- "linear_attention",
90
- "linear_attention",
91
- "full_attention",
92
- "linear_attention",
93
- "linear_attention",
94
- "linear_attention",
95
- "full_attention",
96
- "linear_attention",
97
- "linear_attention",
98
- "linear_attention",
99
- "full_attention"
100
- ],
101
- "linear_conv_kernel_dim": 4,
102
- "linear_key_head_dim": 128,
103
- "linear_num_key_heads": 16,
104
- "linear_num_value_heads": 48,
105
- "linear_value_head_dim": 128,
106
- "mamba_ssm_dtype": "float32",
107
- "max_position_embeddings": 262144,
108
- "model_type": "qwen3_5_text",
109
- "mtp_num_hidden_layers": 1,
110
- "mtp_use_dedicated_embeddings": false,
111
- "num_attention_heads": 24,
112
- "num_hidden_layers": 64,
113
- "num_key_value_heads": 4,
114
- "output_gate_type": "swish",
115
- "pad_token_id": null,
116
- "partial_rotary_factor": 0.25,
117
- "rms_norm_eps": 1e-06,
118
- "rope_parameters": {
119
- "mrope_interleaved": true,
120
- "mrope_section": [
121
- 11,
122
- 11,
123
- 10
124
- ],
125
- "partial_rotary_factor": 0.25,
126
- "rope_theta": 10000000,
127
- "rope_type": "default"
128
- },
129
- "tie_word_embeddings": false,
130
- "use_cache": true,
131
- "vocab_size": 248320
132
- },
133
- "tie_word_embeddings": false,
134
- "transformers_version": "5.8.0.dev0",
135
- "video_token_id": 248057,
136
- "vision_config": {
137
- "deepstack_visual_indexes": [],
138
- "depth": 27,
139
- "hidden_act": "gelu_pytorch_tanh",
140
- "hidden_size": 1152,
141
- "in_channels": 3,
142
- "initializer_range": 0.02,
143
- "intermediate_size": 4304,
144
- "model_type": "qwen3_5",
145
- "num_heads": 16,
146
- "num_position_embeddings": 2304,
147
- "out_hidden_size": 5120,
148
- "patch_size": 16,
149
- "spatial_merge_size": 2,
150
- "temporal_patch_size": 2
151
- },
152
- "vision_end_token_id": 248054,
153
- "vision_start_token_id": 248053
154
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
compatibility/mac-check/{real-checkpoint-samples.safetensors → fixtures.zip} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:c0e3f757947e7ffdaf96b90eb8e0f0ae72e83b9685d3462b99cd6bf193a2cd5b
3
- size 3866825
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f63de30021e270912d939cbf18a75165b30e03c177f98bb9a9051694f050d102
3
+ size 3527833
compatibility/mac-check/model.safetensors.index.json DELETED
The diff for this file is too large to render. See raw diff
 
compatibility/mac-check/samples.json DELETED
@@ -1,45 +0,0 @@
1
- {
2
- "source": "Actual completed Swift-1.5-4bit-MLX checkpoint; no substitute weights",
3
- "samples": [
4
- {
5
- "sample": 0,
6
- "category": "text",
7
- "checkpoint_weight": "language_model.model.layers.0.linear_attn.in_proj_a.weight",
8
- "original_shape": [
9
- 48,
10
- 5120
11
- ],
12
- "packed_shape": [
13
- 48,
14
- 640
15
- ]
16
- },
17
- {
18
- "sample": 1,
19
- "category": "vision",
20
- "checkpoint_weight": "visual.blocks.0.attn.proj.weight",
21
- "original_shape": [
22
- 1152,
23
- 1152
24
- ],
25
- "packed_shape": [
26
- 1152,
27
- 144
28
- ]
29
- },
30
- {
31
- "sample": 2,
32
- "category": "MTP",
33
- "checkpoint_weight": "mtp.layers.0.self_attn.k_proj.weight",
34
- "original_shape": [
35
- 1024,
36
- 5120
37
- ],
38
- "packed_shape": [
39
- 1024,
40
- 640
41
- ]
42
- }
43
- ],
44
- "coverage": "Small real packed tensor samples plus all saved tensor headers; not a full-model Mac generation test"
45
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
compatibility/public-download-fix.md ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Public download packaging correction — 2026-09-24
2
+
3
+ The public repository contained all three original model shards, with the same
4
+ SHA256 values as the validated release. A user reported receiving only the
5
+ 3.87 MB diagnostic file `compatibility/mac-check/real-checkpoint-samples.safetensors`.
6
+ The exact app command that selected that file was not provided, so its internal
7
+ selection behavior has not been reproduced.
8
+
9
+ Five diagnostic files, including a duplicate config/index and the small sample,
10
+ have been archived byte-for-byte in `compatibility/mac-check/fixtures.zip`.
11
+ Only the three real root model shards are now exposed as `.safetensors` files.
12
+ The diagnostic script reads the archive, preserving reproducibility.
13
+
14
+ The model card now gives the complete download command, the three shard sizes,
15
+ direct links and the required runtime-patch instructions. The usage guide now
16
+ reflects public access and resolves an immutable revision before downloading.
17
+ The checkpoint, configuration, tokenizer and architecture patch are unchanged.
18
+
19
+ This packaging correction is not a new full-model Mac runtime test. The existing
20
+ runtime limits and the distinction between component checks and full generation
21
+ remain explicit in the model card and usage guide.
compatibility/validate-mac-format.py CHANGED
@@ -7,6 +7,8 @@ import argparse
7
  import json
8
  import platform
9
  import resource
 
 
10
  from pathlib import Path
11
  import mlx.core as mx
12
  import mlx.nn as nn
@@ -19,6 +21,18 @@ parser.add_argument('--folder',type=Path,default=Path(__file__).resolve().parent
19
  parser.add_argument('--output',type=Path,default=Path('mac-compatibility-results.json'))
20
  options=parser.parse_args()
21
  folder=options.folder
 
 
 
 
 
 
 
 
 
 
 
 
22
  assert platform.system()=='Darwin' and platform.machine()=='arm64'
23
  assert mx.metal.is_available()
24
  mx.set_default_device(mx.gpu)
 
7
  import json
8
  import platform
9
  import resource
10
+ import tempfile
11
+ import zipfile
12
  from pathlib import Path
13
  import mlx.core as mx
14
  import mlx.nn as nn
 
21
  parser.add_argument('--output',type=Path,default=Path('mac-compatibility-results.json'))
22
  options=parser.parse_args()
23
  folder=options.folder
24
+ archive=folder/'fixtures.zip'
25
+ if archive.is_file():
26
+ extracted=tempfile.TemporaryDirectory(prefix='swift15-metal-fixtures-')
27
+ with zipfile.ZipFile(archive) as bundle:
28
+ expected={'checkpoint-headers.json','config.json','model.safetensors.index.json','real-checkpoint-samples.safetensors','samples.json'}
29
+ if len(bundle.infolist())!=len(expected) or set(bundle.namelist())!=expected:
30
+ raise ValueError('Unexpected diagnostic archive contents')
31
+ for entry in bundle.infolist():
32
+ if entry.file_size>16*1024*1024:
33
+ raise ValueError('Oversized diagnostic fixture')
34
+ (Path(extracted.name)/entry.filename).write_bytes(bundle.read(entry))
35
+ folder=Path(extracted.name)
36
  assert platform.system()=='Darwin' and platform.machine()=='arm64'
37
  assert mx.metal.is_available()
38
  mx.set_default_device(mx.gpu)