Views
No views yet
.aimodel)image_embeds [256, 2048] + deepstack_embeds [768, 2048], and a 2B Cohere decoder with the image tokens
spliced in as extension ids. Eleven languages, including Japanese. Apache-2.0.Requires iOS 27 / macOS 27 (Core AI ships with the OS). Conversion code, gates and knowledge base: coreai-model-zoo.
| path | size | measured | numerics |
|---|---|---|---|
gpu-pipelined/north_micro_vision_instruct_vision_fp16 | 1.0 GB | 83.4 ms/image (M4 Max) | image_embeds cos 0.999996 vs fp32 |
gpu-pipelined/north_micro_vision_instruct_decode_int8lin | 2.4 GB | — | suite 9/9 cases, 338/338 tokens |
gpu-pipelined/…_decode_int8lin_textcore | 2.4 GB | 145.3 prompt / 118.6 decode tok/s (M4 Max) | the same weights with no image inputs |
ios-h18p/…_decode_int8lin + ios-h18p/…_vision_fp16 | 2.5 GB | 21.5 prefill / 18.2 decode tok/s (iPhone 17 Pro) | nat 16/16 + image oracle 24/24 |
coreai-torch 0.4.1,
llm-benchmark -p 128 -g 256 -n 3, COREAI_CHUNK_THRESHOLD=1. The Mac tok/s row is the text
core because llm-runner cannot bind an image buffer. The iPhone rows are PipelinedBench,
including a mandatory 1024-token generation (the iOS compiler miscompiles KV specializations at
seq ≥ 2048 and a 256-token run cannot see it) — clean.1git clone https://github.com/apple/coreai-models # + the zoo's engine patches, see below
2swift build -c release --product llm-runner
3
4COREAI_CHUNK_THRESHOLD=1 .build/release/llm-runner \
5 --model gpu-pipelined/north_micro_vision_instruct_decode_int8lin_textcore \
6 --prompt "The alphabet begins A, B, C," \
7 --max-tokens 64 --sampling-strategy greedy \
8 --inference-engine-variant coreai-pipelined --warmup offcoreai-pipelined-static-inputs patch (which binds image_embeds, deepstack_embeds and
the two rope-shift scalars) is in the zoo under apps/.(x/255 − 0.5)/0.5, and patchifies into 16×16 patches in Qwen-VL order —
block-major over 2×2 merge groups, and [C][T][py][px] inside each patch with the still frame
duplicated (patch_dim 1536). Then it runs the tower, binds both outputs, and rewrites the
prompt's <image> ids (255031) to V + slot. Reference implementation:
_smoke/northmv_preprocess.py.cohere_compass
and raises on AutoConfig.SSSF × 7 layer types where the 7 full-attention layers have no
positional encoding at all while the 21 sliding ones carry interleaved M-RoPE in a 4096
window, logit_scale 0.25, and a 262 144-entry embedding tied to the head.conversion/export_northmv_pipelined.py
and knowledge/north-micro-vision-port.md.CohereLabs/North-Micro-Vision-Instruct
(revision 373bda96ac70bf89f99f7048f420cf00dc07c149). Not affiliated with Apple or Cohere.