Instructions to use ukisai/Swift-1.5-4bit-MLX with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use ukisai/Swift-1.5-4bit-MLX with MLX:
# Make sure mlx-lm is installed # pip install --upgrade mlx-lm # Generate text with mlx-lm from mlx_lm import load, generate model, tokenizer = load("ukisai/Swift-1.5-4bit-MLX") prompt = "Write a story about Einstein" messages = [{"role": "user", "content": prompt}] prompt = tokenizer.apply_chat_template( messages, add_generation_prompt=True ) text = generate(model, tokenizer, prompt=prompt, verbose=True) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- Pi
How to use ukisai/Swift-1.5-4bit-MLX with Pi:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "ukisai/Swift-1.5-4bit-MLX"
Configure the model in Pi
# Install Pi: npm install -g @earendil-works/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "mlx-lm": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "ukisai/Swift-1.5-4bit-MLX" } ] } } }Run Pi
# Start Pi in your project directory: pi
- MLX LM
How to use ukisai/Swift-1.5-4bit-MLX with MLX LM:
Generate or start a chat session
# Install MLX LM uv tool install mlx-lm # Interactive chat REPL mlx_lm.chat --model "ukisai/Swift-1.5-4bit-MLX"
Run an OpenAI-compatible server
# Install MLX LM uv tool install mlx-lm # Start the server mlx_lm.server --model "ukisai/Swift-1.5-4bit-MLX" # Calling the OpenAI-compatible server with curl curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "ukisai/Swift-1.5-4bit-MLX", "messages": [ {"role": "user", "content": "Hello"} ] }' - Hermes Agent
How to use ukisai/Swift-1.5-4bit-MLX with Hermes Agent:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "ukisai/Swift-1.5-4bit-MLX"
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default ukisai/Swift-1.5-4bit-MLX
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use ukisai/Swift-1.5-4bit-MLX with OpenClaw:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "ukisai/Swift-1.5-4bit-MLX"
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "ukisai/Swift-1.5-4bit-MLX" \ --custom-provider-id mlx-lm \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
Archive diagnostic weights and clarify full-model downloads
Browse filesPreserve 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 +28 -0
- UPLOAD_MANIFEST.json +76 -133
- USAGE.md +30 -6
- compatibility/mac-check/README.md +17 -0
- compatibility/mac-check/checkpoint-headers.json +0 -0
- compatibility/mac-check/config.json +0 -154
- compatibility/mac-check/{real-checkpoint-samples.safetensors → fixtures.zip} +2 -2
- compatibility/mac-check/model.safetensors.index.json +0 -0
- compatibility/mac-check/samples.json +0 -45
- compatibility/public-download-fix.md +21 -0
- compatibility/validate-mac-format.py +14 -0
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":
|
| 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":
|
| 34 |
-
"sha256": "
|
| 35 |
-
"git_blob_sha1": "f4c63e395c2b6bf9b473a42dcb260d6d0a1fa834"
|
| 36 |
},
|
| 37 |
{
|
| 38 |
"path": "USAGE.md",
|
| 39 |
-
"bytes":
|
| 40 |
-
"sha256": "
|
| 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/
|
| 129 |
-
"bytes":
|
| 130 |
-
"sha256": "
|
| 131 |
-
"git_blob_sha1": "9143ac44bb812f357882d503ae90149661616fc1"
|
| 132 |
},
|
| 133 |
{
|
| 134 |
-
"path": "compatibility/mac-check/
|
| 135 |
-
"bytes":
|
| 136 |
-
"sha256": "
|
| 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 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 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":
|
| 226 |
-
"sha256": "
|
| 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 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 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":
|
| 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.
|
| 7 |
-
|
| 8 |
-
|
| 9 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 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=
|
| 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:
|
| 3 |
-
size
|
|
|
|
| 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)
|