Skip to content

Releases: OpenBMB/MiniCPM-V-Apps

HarmonyOS v2.2

25 May 16:49

Choose a tag to compare

MiniCPM-V Demo for HarmonyOS NEXT — v2.2

Two-step jump (v2.0 → v2.2) to re-sync HarmonyOS with iOS / Android, plus the MiniCPM5-1B download-source switch. Recommended upgrade for everyone on v2.0.

What's new (vs v2.0)

📦 MiniCPM5-1B download source switched to OpenBMB official HF / ModelScope

  • Before: pre-release Huawei OBS direct link (MiniCPM5-0.9B-Q4_K_M.gguf).
  • Now: races huggingface.co/openbmb/MiniCPM5-1B-GGUF and modelscope.cn/OpenBMB/MiniCPM5-1B-GGUF — same HF + MS racing as the V4.6 model.
  • The user-facing model name is now MiniCPM5-1B (Q4_K_M) (was MiniCPM5 0.9B), matching the public release.
  • Existing v2.0 users with a MiniCPM5-0.9B-Q4_K_M.gguf on disk will see it auto-renamed to MiniCPM5-1B-Q4_K_M.gguf; the downstream integrity check then either accepts the bytes or quietly re-downloads the canonical file (~656 MB).

🇨🇳 Runtime zh / en language switch

  • Toggle between Chinese and English inside Model Management without changing the device locale.

🖼 Image decoding fix (#11)

  • createPixelMap now uses desiredSize instead of the bugged sampleSize path on certain HarmonyOS versions, fixing photo previews that used to silently fail to decode.
  • Added explicit pixelMap.release() cleanup in finally blocks to prevent the ImageSource leak under heavy use.

🚀 Launch crash fix (#16)

  • CMakeLists.txt now writes .so outputs into the same directory hvigorw expects, so the .so.0 symlinks survive HAP packaging — fixes the immediate launch crash some users hit on v2.0.

⚡ Prefill prompt race fix (#18)

  • sendUserPrompt state check moved inside the engine's serial queue, so user prompts sent while prefillVideoFrames is still running are queued instead of silently dropped (fixes the "second video question gets no answer" issue).

🧠 Image-slice cap & model_version knob

  • Re-enabled mtmd_set_image_max_slice_nums to keep prefill latency bounded on long photos.
  • MiniCPM-V-4.6 prompt template branching via the native model_version knob (same code path now on iOS / Android / HarmonyOS).

Requirements (unchanged)

  • HarmonyOS NEXT, API 12 or later (e.g. nova 14 Vitality / Mate 60 / Pura 70)
  • 64-bit ARM (arm64-v8a)
  • ≥ 6 GB RAM recommended (≥ 8 GB for MiniCPM-V 2.6)

Install

```bash
hdc install MiniCPM-V-demo-HarmonyOS-v2.2.hap
```

Then open the app → Model ManagerDownload (HF + MS race kicks in automatically).

Build info

  • `versionName` = `2.2`, `versionCode` = `7`
  • bundleName: `com.openbmb.minicpmv`

Verify

  • MD5: `1e47d07066ed994ee6bc3229582c9a85`
  • Size: ~28 MB

See DOWNLOAD.md for the full install guide.

Android v2.2

25 May 16:49

Choose a tag to compare

MiniCPM-V Demo for Android — v2.2

Minor release. Switches the MiniCPM5-1B model download to OpenBMB's official public HF / ModelScope GGUF repository now that the model is publicly released. Recommended upgrade for everyone on v2.0.

What's new (vs v2.0)

📦 MiniCPM5-1B download source switched to OpenBMB official HF / ModelScope

  • Before: pre-release Huawei OBS direct link (MiniCPM5-0.9B-Q4_K_M.gguf).
  • Now: races huggingface.co/openbmb/MiniCPM5-1B-GGUF and modelscope.cn/OpenBMB/MiniCPM5-1B-GGUF — same HF + MS racing as the V4.6 model.
  • The user-facing model name is now MiniCPM5-1B (Q4_K_M) (was MiniCPM5 0.9B), matching the public release.
  • Existing v2.0 users with a MiniCPM5-0.9B-Q4_K_M.gguf on disk will see it auto-renamed to MiniCPM5-1B-Q4_K_M.gguf; the downstream integrity check then either accepts the bytes or quietly re-downloads the canonical file (~656 MB).

🐛 i18n + perf carry-overs from intermediate work

  • Runtime zh / en language switch inside Model Management (no need to change device locale).
  • Image-slice cap (mtmd_set_image_max_slice_nums) re-enabled to keep prefill latency bounded on long photos.
  • MiniCPM-V-4.6 prompt template branching via the native model_version knob.

Requirements (unchanged)

  • Android 8.0 (API 26) or later
  • 64-bit ARM (arm64-v8a)
  • ≥ 6 GB RAM recommended (≥ 8 GB for MiniCPM-V 2.6)

Install

  1. Download `MiniCPM-V-demo-Android-v2.2.apk` below.
  2. Allow install from unknown source if prompted.
  3. Open the app → Model ManagerDownload (HF + MS race kicks in automatically).

Build info

  • `versionName` = `2.2`, `versionCode` = `14`
  • ABI: `arm64-v8a` only

Verify

  • MD5: `212c36720e5160288a367700553e8d20`
  • Size: ~17 MB

See DOWNLOAD.md for the full install guide.

HarmonyOS v2.0

14 May 16:44

Choose a tag to compare

MiniCPM-V Demo for HarmonyOS NEXT — v2.0

Major release. Brings the HarmonyOS port in lock-step with the new Android v2.0 / iOS v2.0 codebase, and folds in the never-released v1.3 video-understanding work as a bonus.

What's new (vs the public v1.2)

🧩 Master mtmd bridge (MBMtmd)

  • Native layer is rebuilt on top of llama.cpp master's mtmd (multimodal) implementation. Same code path now drives iOS, Android, and HarmonyOS — the three platforms stay in lock-step from this version onward.
  • ubatch is now tier-aware: split sizes adapt to device class so low-end SoCs no longer choke during prefill.

🌐 Racing dual-source download

  • The in-app Model Manager races HuggingFace and ModelScope in parallel and uses whichever responds first. Massive win on networks where one of the two CDNs is slow or unreachable; cancels the loser to avoid wasting bandwidth.

🎞 Video understanding (carried over from the unreleased v1.3)

  • Sample up to 64 frames uniformly from a video and feed them to the model.
  • For MiniCPM-V 4.6 the context window is widened to nCtx = 8192 to fit longer multi-frame prompts.
  • During visual prefill image_max_slice_nums is forced to 1 so each frame is one slice.

🇨🇳 No more "English-by-default" answers

  • The default system prompt has been dropped on MiniCPM-V 4.6, both in TS/ArkTS and in the native processUserPrompt path. Chinese questions now answer in Chinese instead of being silently steered to English.

Requirements (unchanged)

  • HarmonyOS NEXT, API 12 or later (e.g. nova 14 Vitality / Mate 60 / Pura 70)
  • 64-bit ARM (arm64-v8a)
  • ≥ 6 GB RAM recommended (≥ 8 GB for MiniCPM-V 2.6)

Install

hdc install MiniCPM-V-demo-HarmonyOS-v2.0.hap

Then open the app → Model ManagerDownload (HF + MS race kicks in automatically).

Build info

  • versionName = 2.0, versionCode = 6
  • bundleName: com.openbmb.minicpmv

Verify

  • MD5: 9aff126a47b651bce1d33890a289f319
  • Size: ~39 MB

See DOWNLOAD.md for the full install guide.

Android v2.0

14 May 16:44

Choose a tag to compare

MiniCPM-V Demo for Android — v2.0

Major release. The native multimodal pipeline has been re-platformed onto llama.cpp's master branch and the model download flow is now multi-source. Recommended upgrade for everyone on v1.7 / v1.9.

What's new

🧩 Master mtmd bridge (MBMtmd)

  • Native layer is rebuilt on top of llama.cpp master's mtmd (multimodal) implementation. Same code path now drives iOS, Android, and HarmonyOS — the three platforms stay in lock-step from this version onward.
  • ubatch is now tier-aware: split sizes adapt to device class so low-end SoCs no longer choke during prefill.

🌐 Racing dual-source download

  • The in-app Model Manager races HuggingFace and ModelScope in parallel and uses whichever responds first. Massive win on networks where one of the two CDNs is slow or unreachable; cancels the loser to avoid wasting bandwidth.

🇨🇳 No more "English-by-default" answers

  • The default system prompt has been dropped on MiniCPM-V 4.6, both in Java/Kotlin and in the native processUserPrompt path. Chinese questions now answer in Chinese instead of being silently steered to English.

Other changes

  • All carry-over fixes from v1.9 (dynamic CPU dispatch for ggml-cpu) and the v1.8 video-understanding work (uniform-sample 64 frames, V4.6 nCtx=8192, prefill slice=1) remain in place.

Requirements (unchanged)

  • Android 8.0 (API 26) or later
  • 64-bit ARM (arm64-v8a)
  • ≥ 6 GB RAM recommended (≥ 8 GB for MiniCPM-V 2.6)

Install

  1. Download MiniCPM-V-demo-Android-v2.0.apk below.
  2. Allow install from unknown source if prompted.
  3. Open the app → Model ManagerDownload (HF + MS race kicks in automatically).

Build info

  • versionName = 2.0, versionCode = 12
  • ABI: arm64-v8a only

Verify

  • MD5: 43576791bfe8c24ed6909f33d8e94b63
  • Size: ~17 MB

See DOWNLOAD.md for the full install guide.

Android v1.9

12 May 13:57

Choose a tag to compare

MiniCPM-V Demo for Android — v1.9

Major upgrade since v1.7 (the unreleased v1.8 changes are folded in here). Recommended upgrade for everyone.

What's new

Video understanding (was v1.8)

  • Sample up to 64 frames uniformly from a video and feed them to the model.
  • For MiniCPM-V 4.6 the context window is widened to nCtx = 8192 to fit longer multi-frame prompts.
  • During visual prefill image_max_slice_nums is forced to 1 so each frame is one slice — keeps prefill cost predictable when many frames are stacked.

Dynamic CPU dispatch for ggml-cpu (v1.9, PR #8)

  • The native layer now dispatches to the best available CPU backend at runtime instead of being hard-pinned at build time. Older arm64 devices that lack i8mm / bf16 / dotprod will still pick the most compatible code path; newer SoCs continue to use the fastest one.

Requirements (unchanged)

  • Android 8.0 (API 26) or later
  • 64-bit ARM (arm64-v8a)
  • ≥ 6 GB RAM recommended (≥ 8 GB for MiniCPM-V 2.6)

Install

  1. Download MiniCPM-V-demo-Android-v1.9.apk below.
  2. Allow install from unknown source if prompted.
  3. Open the app → Model ManagerDownload.

Build info

  • versionName = 1.9, versionCode = 11
  • ABI: arm64-v8a only

Verify

  • MD5: b83f105d9ecce57f48f2afca2b5cdb69
  • Size: ~17 MB

See DOWNLOAD.md for the full install guide.

HarmonyOS v1.2

11 May 15:52

Choose a tag to compare

MiniCPM-V Demo for HarmonyOS NEXT — v1.2

Bug-fix release on top of v1.1. Recommended upgrade for everyone running v1.1 — especially users that pick more than one image slice.

What's fixed

  • No more ANR on multi-slice images. prefillImage is now executed on a libuv worker thread instead of the JS thread. This fixes the THREAD_BLOCK_3S ANR that fired when image_max_slice_nums > 1 — the heavy ViT prefill no longer blocks UI rendering.

Requirements (unchanged)

  • HarmonyOS NEXT, API 12 or later (e.g. nova 14 Vitality / Mate 60 / Pura 70)
  • 64-bit ARM (arm64-v8a)
  • ≥ 6 GB RAM recommended (≥ 8 GB for MiniCPM-V 2.6)

Install

hdc install MiniCPM-V-demo-HarmonyOS-v1.2.hap

Then open the app → Model ManagerDownload.

Build info

  • versionName = 1.2, versionCode = 3
  • bundleName: com.openbmb.minicpmv

Verify

  • MD5: 390408e7cfe217a11ffb0b359b9a0807
  • Size: ~29 MB

See DOWNLOAD.md for the full install guide.

HarmonyOS v1.1

11 May 13:28

Choose a tag to compare

MiniCPM-V Demo for HarmonyOS NEXT — v1.1

HarmonyOS NEXT (ArkTS + Native) build of the on-device MiniCPM-V demo. Shares the exact same llama.cpp core and model catalogue as the iOS / Android demos.

Highlights

  • Multimodal chat with MiniCPM-V 2.6 / 4.0 / 4.6 (image + text)
  • In-app Model Manager to download / sideload GGUF weights
  • Same OBS direct-link URLs and MD5 hashes as the iOS / Android demos

Requirements

  • HarmonyOS NEXT, API 12 or later (e.g. nova 14 Vitality / Mate 60 / Pura 70)
  • 64-bit ARM (arm64-v8a)
  • ≥ 6 GB RAM recommended (≥ 8 GB for MiniCPM-V 2.6)

Install

hdc install MiniCPM-V-demo-HarmonyOS-v1.1.hap

Then open the app → Model ManagerDownload.

Build info

  • versionName = 1.1, versionCode = 2
  • bundleName: com.openbmb.minicpmv

Verify

  • MD5: f3824e4b85940fcd8fbfe8f9a566519b
  • Size: ~29 MB

See DOWNLOAD.md for the full install guide.

Android v1.7

11 May 13:28

Choose a tag to compare

MiniCPM-V Demo for Android — v1.7

First public Android release. The app runs MiniCPM-V (2.6 / 4.0 / 4.6) fully on-device via llama.cpp — no remote server, no data leaves the phone.

Highlights

  • Multimodal chat with MiniCPM-V 2.6 / 4.0 / 4.6 (image + text)
  • In-app Model Manager to download / sideload GGUF weights
  • Markdown rendering for streaming responses

Requirements

  • Android 8.0 (API 26) or later
  • 64-bit ARM (arm64-v8a)
  • ≥ 6 GB RAM recommended (≥ 8 GB for MiniCPM-V 2.6)

Install

  1. Download MiniCPM-V-demo-Android-v1.7.apk below.
  2. Allow install from unknown source if prompted.
  3. Open the app → Model ManagerDownload.

Build info

  • versionName = 1.7, versionCode = 9
  • ABI: arm64-v8a only

Verify

  • MD5: 9d16d89205cc6c43b68886a42b560600
  • Size: ~16 MB

See DOWNLOAD.md for the full install guide.