--- license: other license_name: apache-2.0-and-lfm1.0 license_link: https://huggingface.co/publicarray/fieldnote-models#licences base_model: - openbmb/MiniCPM5-1B - openbmb/MiniCPM5-2B - Qwen/Qwen3.5-2B - LiquidAI/LFM2.5-1.2B-Instruct base_model_relation: quantized pipeline_tag: text-generation library_name: coreai tags: - core-ai - coreai - apple - ios - iphone - on-device - neural-engine - minicpm5 - qwen3.5 - lfm2.5 --- # Fieldnote models Small language models compiled ahead of time for Apple's Core AI, one ready-to-load bundle per iPhone chip family. Used by [Fieldnote](https://github.com/array-ai/fieldnotes), an on-device meeting recorder, to write meeting notes on the phone. A phone with a matching chip downloads a compiled bundle instead of compiling the model itself, which ran an iPhone 16 out of memory for the larger models. **Try Fieldnote:** [join the TestFlight beta](https://testflight.apple.com/join/c2M82CMX) (iPhone 15 Pro or later, iOS 27). ## Bundles | Folder | Model | Chip | Phones | Licence | |---|---|---|---|---| | `ios-h17g` | MiniCPM5 1B | h17g | iPhone 16 family | Apache 2.0 | | `ios-h17p` | MiniCPM5 1B | h17p | iPhone 16 family | Apache 2.0 | | `ios-h18p` | MiniCPM5 1B | h18p | iPhone 17 Pro | Apache 2.0 | | `minicpm5-2b/ios-h17p` | MiniCPM5 2B | h17p | iPhone 16 family | Apache 2.0 | | `minicpm5-2b/ios-h18p` | MiniCPM5 2B | h18p | iPhone 17 Pro | Apache 2.0 | | `qwen3.5-2b/ios-h17p` | Qwen3.5 2B | h17p | iPhone 16 family | Apache 2.0 | | `qwen3.5-2b/ios-h18p` | Qwen3.5 2B | h18p | iPhone 17 Pro | Apache 2.0 | | `lfm2.5-1.2b/ios-h17p` | LFM2.5 1.2B Instruct | h17p | iPhone 16 family | LFM Open License 1.0 | | `lfm2.5-1.2b/ios-h18p` | LFM2.5 1.2B Instruct | h18p | iPhone 17 Pro | LFM Open License 1.0 | Each folder is a complete bundle: `metadata.json` (pointing at the compiled model), `tokenizer/`, and the compiled `.aimodelc`. A phone needs only the folder whose chip matches `AIModel.deviceArchitectureName`. Other devices should use the portable export (below) and let Core AI compile it. ## Sources Every bundle is a portable Core AI export compiled for one chip. No weights were changed. | Model | Original | Portable Core AI export, pinned revision | |---|---|---| | MiniCPM5 1B | [openbmb/MiniCPM5-1B](https://huggingface.co/openbmb/MiniCPM5-1B) | [mlboydaisuke/MiniCPM5-1B-CoreAI](https://huggingface.co/mlboydaisuke/MiniCPM5-1B-CoreAI) `ios-static/` @ `f38d143ec50cb2e54d8388479b919e3b9283943b` | | MiniCPM5 2B | [openbmb/MiniCPM5-2B](https://huggingface.co/openbmb/MiniCPM5-2B) | [mlboydaisuke/MiniCPM5-2B-CoreAI](https://huggingface.co/mlboydaisuke/MiniCPM5-2B-CoreAI) `ios-static/` @ `39db5ff9480e5d80e423889e3bacb7f9e9b9e40f` | | Qwen3.5 2B | [Qwen/Qwen3.5-2B](https://huggingface.co/Qwen/Qwen3.5-2B) | [mlboydaisuke/qwen3.5-2B-CoreAI](https://huggingface.co/mlboydaisuke/qwen3.5-2B-CoreAI) `gpu-pipelined-b2/qwen3_5_2b_decode_int8hu_block32_sym` @ `14e77014db5ae2f3de94825165f5ae58bededd7d` | | LFM2.5 1.2B | [LiquidAI/LFM2.5-1.2B-Instruct](https://huggingface.co/LiquidAI/LFM2.5-1.2B-Instruct) | [mlboydaisuke/LFM2.5-1.2B-CoreAI](https://huggingface.co/mlboydaisuke/LFM2.5-1.2B-CoreAI) `gpu-pipelined-b2/lfm2_5_1_2b_instruct_decode_int8hu_block32_sym` @ `3e3241cbcf368a663768dcc4e5785c4f0a02bae4` | ## Build Compiled on GitHub Actions (Xcode 27, Metal Toolchain) by [`compile-models.yml`](https://github.com/array-ai/fieldnotes/blob/main/.github/workflows/compile-models.yml): ``` xcrun coreai-build compile .aimodel \ --platform iOS --min-deployment-version 27.0 --architecture --output ``` The MiniCPM5 1B bundles leave the compute unit to Core AI. The Qwen3.5, LFM2.5 and MiniCPM5 2B h18p bundles are compiled for the Neural Engine. Some on-device specialisation still happens at first load, but not the full compile. ## Loading ```swift import CoreAI import CoreAILanguageModels let chip = AIModel.deviceArchitectureName // e.g. "h17p" let bundle = modelsDirectory.appending(path: "qwen3.5-2b/ios-\(chip)") let model = try await CoreAILanguageModel(resourcesAt: bundle) ``` Fieldnote downloads only the matching folder, from a pinned revision of this repo, and checks every file against its SHA-256 before use. ## Licences This repo holds models under two licences. Each model's folder carries its own `LICENSE`: - **MiniCPM5 1B and 2B** (OpenBMB) and **Qwen3.5 2B** (Qwen team, Alibaba Cloud): [Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0). The 1B's licence is the `LICENSE` at the repo root; the others are in `minicpm5-2b/` and `qwen3.5-2b/`. - **LFM2.5 1.2B Instruct** (Liquid AI): LFM Open License v1.0, in `lfm2.5-1.2b/LICENSE`. It allows commercial use only by organisations with under US$10 million in annual revenue; read it before using these bundles. Core AI exports by mlboydaisuke; ahead-of-time compiled builds by publicarray. The files here are modified from the originals only by being compiled for a specific chip.