msluszniak's picture
Document why Core ML is not shipped
11808f8 verified
|
Raw
History Blame Contribute Delete
1.59 kB

Core ML is not shipped for this model

The Core ML exporter exists in export-scripts and converts successfully, but the artifact it produces cannot be loaded, so no .pte or config.json is published here. Use the XNNPACK or MLX build instead.

Why

Conversion succeeds (fp16, about 710 MB). Loading it in the ExecuTorch runtime does not:

[tensor_parser_portable.cpp:192] getTensorDataPtr() failed: 0x23
[method.cpp:606] Failed parsing tensor at index 0: 0x23

Note what this is not. It is not the dynamic-shape crash that disables Core ML on the other text models in this project (apple/coremltools#2825). That one fails at execute; this fails at load, inside the portable tensor parser. Ops the Core ML partitioner did not claim kept their constants in the ExecuTorch program, and that data is unreadable. The artifact size or a constant-segment issue is the plausible cause.

Because it never executed, the dynamic-shape question remains open for LFM2.5-Embedding-350M. It never got far enough to hit it.

Re-tested on 2026-08-20 with the software-mansion-labs fork toolchain, rebuilt and loaded under the fork runtime: identical 0x23. So this is not an artifact of the PyPI wheel, unlike the YOLO fp16 MLX case that the fork did fix.

Two deliberate differences from the other backends

The Core ML variant loads the model in float32, because Core ML has no bfloat16 input dtype, and does not apply quantize_model_, which packs weights for the MLX runtime. So the Core ML build is unquantized, and its size is not comparable to the MLX one.