OpenBMB/MiniCPM-V-Apps

MiniCPM-V apps — fully offline multimodal chat on iOS / Android / HarmonyOS

MiniCPM‑V‑Apps – On‑device multimodal LLM demos

What it is – A set of three sample applications (iOS, Android, HarmonyOS) that run the MiniCPM‑V family of multimodal large language models completely locally on a phone or tablet. The apps are thin wrappers around the llama.cpp‑omni inference engine, which has been compiled into platform‑specific binaries (an XCFramework for iOS, native libraries for Android/HarmonyOS). Users can interact with the models for text‑only, vision‑augmented, or text‑to‑speech tasks without any network connection.

Key components

  • MiniCPM‑V models – 8 B‑parameter to 35 B‑parameter multimodal LLMs (the 35 B version uses a Mixture‑of‑Experts that streams expert shards from SSD, enabling it to run on a phone).
  • llama.cpp‑omni submodule – a fork of the popular llama.cpp library that adds support for GGUF‑format weights, vision projectors, and the MoE‑SSD streaming logic.
  • Platform demos –
    • MiniCPM‑V‑demo/ (Xcode project, builds an llama.xcframework).
    • MiniCPM‑V‑demo‑Android/ (Gradle/Kotlin project).
    • MiniCPM‑V‑demo‑HarmonyOS/ (DevEco Studio/ArkTS project).
  • Model manager UI – lets the app download the required GGUF files, verify checksums, and organise them on‑device.

How to get it running

  1. Clone the repo with submodules shallowly (≈ tens of MB) to avoid pulling the full llama.cpp‑omni history.
  2. Build the inference library – on iOS run scripts/build_xcframework.sh (default builds device + simulator slices). Android/HarmonyOS pull the pre‑compiled native libs via Gradle/NDK.
  3. Open the demo project in the appropriate IDE (Xcode, Android Studio, DevEco Studio) and run on a physical device.
  4. Download model weights – either via the in‑app Model Manager or manually from the HuggingFace/ModelScope links listed in the README. The README details the exact GGUF files for each model version and the RAM/storage needed.

Supported models & hardware hints

Model Params Quant Approx. size (model + vision) Recommended RAM
MiniCPM‑V 2.6 8 B Q4_K_M ~5.4 GB ≥ 8 GB
MiniCPM‑V 4.0 4.1 B Q4_K_M ~2.9 GB ≥ 6 GB
MiniCPM‑V 4.6 1.3 B Q4_K_M ~1.6 GB ≥ 6 GB
MiniCPM‑V 4.7 1B 1 B Q4_K_M ~1.8 GB ≥ 4 GB
MiniCPM‑V 4.7 35B‑A3B (MoE) 35 B (3 B active) Q3_K (expert shards) ~16.6 GB ≥ 12 GB, fast internal storage
MiniCPM5‑1B / MiniCPM5‑2B (text‑only) 1 B / 2 B Q4_K_M 0.5 GB / 1.5 GB ≥ 4 GB / ≥ 6 GB
VoxCPM2 (TTS) ~2 B Q4_K_M + F16 ~2.8 GB ≥ 6 GB

Why it matters

  • Demonstrates that modern multimodal LLMs, even a 35 B‑class MoE, can be run on consumer‑grade smartphones when the model is split into streamed expert shards.
  • Provides a ready‑to‑modify code base for developers who want to embed on‑device AI (vision‑language or TTS) into their own iOS/Android/HarmonyOS apps.
  • Uses the open‑source GGUF format and llama.cpp, keeping the stack fully transparent and extensible.

Where to find more

  • Pre‑built app binaries are linked in the README (TestFlight, APK, HAP).
  • Detailed download links for each GGUF model are in the “Part 2 – GGUF Model Files” section.
  • The DOWNLOAD.md file contains signing notes and MD5 checksums for the released packages.

All information above is taken directly from the repository’s README; no additional features are inferred.

Related

  • Project
  • Project
  • Dispatch
  • Project
  • Project