Releases: OpenBMB/MiniCPM-V-Apps
HarmonyOS v2.0
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. ubatchis 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 = 8192to fit longer multi-frame prompts. - During visual prefill
image_max_slice_numsis 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
processUserPromptpath. 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.hapThen open the app → Model Manager → Download (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
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. ubatchis 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
processUserPromptpath. 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.6nCtx=8192, prefillslice=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
- Download
MiniCPM-V-demo-Android-v2.0.apkbelow. - Allow install from unknown source if prompted.
- Open the app → Model Manager → Download (HF + MS race kicks in automatically).
Build info
versionName=2.0,versionCode=12- ABI:
arm64-v8aonly
Verify
- MD5:
43576791bfe8c24ed6909f33d8e94b63 - Size: ~17 MB
See DOWNLOAD.md for the full install guide.
Android v1.9
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 = 8192to fit longer multi-frame prompts. - During visual prefill
image_max_slice_numsis 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
- Download
MiniCPM-V-demo-Android-v1.9.apkbelow. - Allow install from unknown source if prompted.
- Open the app → Model Manager → Download.
Build info
versionName=1.9,versionCode=11- ABI:
arm64-v8aonly
Verify
- MD5:
b83f105d9ecce57f48f2afca2b5cdb69 - Size: ~17 MB
See DOWNLOAD.md for the full install guide.
HarmonyOS v1.2
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.
prefillImageis now executed on a libuv worker thread instead of the JS thread. This fixes theTHREAD_BLOCK_3SANR that fired whenimage_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.hapThen open the app → Model Manager → Download.
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
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.hapThen open the app → Model Manager → Download.
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
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
- Download
MiniCPM-V-demo-Android-v1.7.apkbelow. - Allow install from unknown source if prompted.
- Open the app → Model Manager → Download.
Build info
versionName=1.7,versionCode=9- ABI:
arm64-v8aonly
Verify
- MD5:
9d16d89205cc6c43b68886a42b560600 - Size: ~16 MB
See DOWNLOAD.md for the full install guide.