d1-3B on Apple Neural Engine
Core AI conversion of LiquidAI/d1-3B for typed yes/no, choice, and score decisions over text and images, using tinkerbox-ane.
The language backbone and vision tower run fully on the ANE. Tokenization, image preprocessing, token-embedding lookup, the FP32 multimodal projector, and answer readout run on the CPU while your GPU stays idle and cool 😎❄️.
Requires macOS 27, Apple Silicon M4 or newer, and Python 3.12 or 3.13.
Usage
Install tinkerbox-ane>=2.1.0. Loading the model downloads only this Mac's bundle: its checkpoint folder carries the upstream code, tokenizer and configuration, and the token embeddings, multimodal projector and vision position table the CPU uses.
Evaluate independent questions together, sharing computation over the input:
from tinkerbox_ane import d1
with d1.load() as model:
result = model.system_one("I was charged twice. Please refund me today.", {
"refund": {"type": "noul", "instructions": "Is this a refund request?"},
"urgent": {"type": "noul", "instructions": "Does this need an urgent response?"},
})
print(result)
Images can accompany text, or be used alone:
from PIL import Image
from tinkerbox_ane import d1
with d1.load() as model, Image.open("receipt.jpg") as image:
result = model.system_one(None, {
"receipt": {"type": "noul", "instructions": "Is this a receipt?"},
}, images=[image])
print(result)
Each result's usage reports its tokens, Neural Engine time, and counted FLOPs.
Supported architectures
| Architecure | SoC name |
|---|---|
h16g |
Apple M4 |
h16s |
Apple M4 Pro |
h16c |
Apple M4 Max |
h17g |
Apple M5 |
h17s |
Apple M5 Pro |
h17c |
Apple M5 Max |
h17d |
Apple M5 Ultra |
h18g |
Apple M6 |
Benchmarks
Measured October 19, 2026 on Apple M5 Pro (h17s, 24 GiB), macOS 27.0.1.
| Metric | Result |
|---|---|
| Top-answer agreement with FP32 text reference | 100% (204/204) |
| Absolute probability drift, mean / maximum | 0.000665 / 0.009730 |
| One text question, 26–251 tokens: median / p95 | 39.3 / 79.9 ms |
| 4,096-token text prompt: median | 1.49 s |
| 32,768-token text prompt | 51.8 s |
| Two parallel questions over one short text: median / p95 | 39.2 / 39.7 ms |
| One image prompt: median / p95 | 216.8 / 220.1 ms |
Upstream checkpoint: LiquidAI/d1-3B@051bcc464b01b9f92942b364d9586b0ef5912432. Weights, upstream code, and converted assets retain the LFM Open License v1.0. See NOTICE.
- Downloads last month
- 44