MiniCPM-V & o Cookbook: recipes for running a multimodal model on your own hardware
Cook up amazing AI applications effortlessly with MiniCPM / MiniCPM-V / MiniCPM-o
At a glance
- What is it?
- The MiniCPM-V and o Cookbook is a documentation and recipe set for deploying MiniCPM-V, MiniCPM-o and the MiniCPM LLM series, with per-task recipes for inference, fine-tuning, quantization and serving, and a routing by audience from a laptop user to a researcher. It suits a developer who wants a working path from a model card to a running application, and it is a book of recipes rather than a library with an API of its own.
- Who is it for?
- The Cookbook fits a developer who has picked the MiniCPM family and now needs the unglamorous part, a working deployment recipe for the specific task, the specific hardware and the specific serving stack, and it does not fit a developer still choosing a model or one who wants a single library with one call.
- Can I use it commercially?
- Yes. Apache-2.0 is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 3 days ago.
- What is it written in?
- Mainly Python, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 23, 2026, and from our analysis. They are not legal advice.
Editorial analysis
A cookbook, and the audience routing that gives it its shape
The MiniCPM-V and o Cookbook is a documentation repository for deploying the MiniCPM family of models, and its stated aim is to cook up amazing AI applications effortlessly with MiniCPM-V, MiniCPM-o and the MiniCPM LLM series, bringing text, vision, speech and live-streaming capabilities to your fingertips. For version-specific deployment instructions, it points at the files in the deployment directory.
What the repository is, structurally, is a set of Markdown recipes organised by task. The top level has directories for demo, deployment, docs, evaluation, finetune, inference and quantization, and the pages inside them are named for the specific model version and the specific framework.
The organising idea is the second section of the README, which asks what makes the recipes special and answers with the audience. Individuals are served by Ollama and llama.cpp for effortless inference with minimal setup. Enterprises are served by vLLM and SGLang for high-throughput, scalable performance. And researchers are served by Transformers, LLaMA-Factory, SWIFT and Align-anything for adjustable model development and experimentation.
That routing is a reasonable way to organise a documentation set, and it is also a way of signalling scope. The same underlying model appears in four very different guises, and the difference between them is almost entirely the serving and training stack, not the model. Someone reading this repository has usually already made the model choice, and what they need is the recipe that fits their hardware and their use case.
The licence is Apache-2.0, the primary language is Python, the last push was on 2026-10-20, and the repository has no GitHub releases, so the pages on the default branch are the current state of the documentation.
The inference recipes, one page per task rather than one API
The inference section is the core of the repository and it is organised by what you want the model to do. The vision capabilities for MiniCPM-V 4.7 cover single-image question answering, multi-image question answering, video-based question answering, a document parser that extracts content from PDFs and webpages, text recognition for photos and screenshots, and grounding, which is described as visual grounding and object localization in images.
The audio capabilities, which are for MiniCPM-o rather than MiniCPM-V, cover multilingual speech recognition, instruction-following speech synthesis, and voice cloning with role-play.
The text capabilities are for the MiniCPM LLM series, with separate pages for MiniCPM 5 and for MiniCPM 4.1. The MiniCPM 5 page is described as a compact 1B LLM with Think and No-Think modes and tool calling, and the MiniCPM 4.1 page as an 8B LLM chat with optional step-by-step reasoning.
The organising principle is a task per page. A reader who wants OCR goes to the OCR recipe and gets a pipeline for OCR, and a reader who wants to parse a document goes to the document parser recipe. The alternative, a single unified API reference with every capability, would be longer and less useful, because the interesting differences between these tasks are the prompt shapes, the input formats and the model settings rather than the calling convention.
The consequence is that there is no stable interface to learn here. There is a set of self-contained procedures, each of which will have its own imports, its own model path and its own sampling parameters. A team that wants a long-lived application built on top of this is going to end up writing its own wrapper, and the value of the cookbook is that the wrapper's first implementation is already written and reviewed.
Deployment paths, split by the hardware you already have
The deployment section is where the cookbook earns its keep for an individual user, and it is organised by the serving stack rather than by the model.
For a laptop, the two routes are Ollama and llama.cpp, both documented for MiniCPM-V 4.7 and both described as offering effortless inference with minimal setup. For a production deployment, the routes are vLLM and SGLang, for high-throughput GPU inference, also for MiniCPM-V 4.7. There is a FastAPI based web demo for launching an interactive multimodal application, and there is a MiniCPM-V-Apps repository for on-device demos on iOS, Android and HarmonyOS NEXT using llama.cpp, with the Cookbook focusing on the Xcode path through its iOS demo page.
The quantization section covers the efficiency angle, with pages for GGUF, BNB and AWQ, described as maximizing efficiency and minimizing resource consumption.
There is one version constraint in the serving table that is worth reading carefully. The SGLang entry notes that MiniCPM 5 is supported on upstream with a version of at least 0.5.12 and a native minicpm5 tool-call parser, and that older LLM series go through a fork at tc-mb/sglang. That is a concrete example of the kind of detail a cookbook exists to record, because a version number in a serving framework is exactly the thing that breaks without warning.
The serving section also says that the cookbook documentation page lets you switch between the V, o and LLM versions on the sidebar, which tells you the same recipes exist for three model families and that the differences are handled in the pages rather than in the structure.
Fine-tuning paths, from full training to visual instruction alignment
The fine-tuning section is smaller and more conventional, and it splits into data preparation and training.
Data preparation points to a dataset guidance document, and the training methods are presented as serving different needs. Transformers is described as the most adjustable for customization. LLaMA-Factory is a modular fine-tuning toolkit. SWIFT is for lightweight and fast parameter-efficient tuning. And Align-anything is for visual instruction alignment for multimodal models.
The ordering is a reasonable proxy for the effort involved. Transformers means writing the training loop yourself and controlling every detail, which is what a research group with an unusual objective needs. LLaMA-Factory is the toolkit for a team that wants configurable recipes without writing them. SWIFT is the lighter option when the goal is a parameter-efficient update rather than a full fine-tune. And Align-anything is the one that is specific to the multimodal case, which is where the interesting work is for a vision language model.
The fine-tuning pages are for the MiniCPM-V 4.7 generation, so the naming convention in this repository is consistent: every page carries both the model version and the tool, and the model version changes when the underlying release changes.
One gap to note. The evaluation directory exists at the top level, but the README does not describe it, and neither does the table of contents. There is therefore no documented set of evaluation recipes in the pages shown here, which is a reasonable thing to check for yourself if you plan to compare a fine-tune against a baseline.
What a cookbook cannot do for you
Two limits are worth stating plainly, and they are the ordinary limits of this kind of project rather than defects.
The first is that none of this is a library. The repository contains no importable package with an API, and the top level is directories of Markdown. Every recipe is a sequence of commands and a script you copy. That has a real cost: you cannot upgrade the cookbook and expect your code to change underneath it, but you also cannot vendor a page of it into your own project and expect it to keep working, because a recipe is a set of paths, flags and file names that only make sense in the layout it was written for. The value is in the path, and the path goes stale.
The second is the fragmentation that comes with supporting many stacks at once. Ollama, llama.cpp, vLLM, SGLang, Transformers, LLaMA-Factory, SWIFT, GGUF, BNB and AWQ are all documented, and each carries its own version compatibility, its own flags and its own failure modes. The README handles this with the version-specific page naming and the note about the SGLang fork, which is the right instinct, but a reader still has to know which page belongs to their case.
The honest framing is that this is the deployment documentation a model publisher writes, organised so that a reader with a specific task and a specific machine can find one page and follow it. The alternative, a single guide that explains the whole stack, would be longer and would help nobody who already knows what they are running.
The other thing to check before committing is the upstream relationship. The README links the main repository at OpenBMB/MiniCPM-o and the full documentation, and the live demonstrations section points to MiniCPM-V-Apps as a separate repository with its own downloads and Chinese readme. So the Cookbook is one of several related repositories, and the model code itself lives elsewhere. A team that only wants to run the model can follow the recipes here without touching the upstream code, and a team that wants to modify the model has to follow both.
Editorial conclusion
The Cookbook fits a developer who has picked the MiniCPM family and now needs the unglamorous part, a working deployment recipe for the specific task, the specific hardware and the specific serving stack, and it does not fit a developer still choosing a model or one who wants a single library with one call. Before starting, read the deployment directory for the model version you have, because the instructions are version specific and the pages are named for versions such as v4.7, and check the framework pages for SGLang and vLLM, where the README notes that MiniCPM 5 needs an upstream release of at least 0.5.12 with a native tool-call parser, and that older LLM series go through a separate fork.
Frequently asked questions
What is the MiniCPM-V and o Cookbook?
It is a documentation and recipe repository for deploying MiniCPM-V, MiniCPM-o and the MiniCPM LLM series, covering inference, fine-tuning, quantization, serving and demos, with pages named for the specific model version and framework. The main model repository is OpenBMB/MiniCPM-o.
Which deployment options does the MiniCPM-V Cookbook cover?
For individual use it documents Ollama and llama.cpp for minimal setup, and for enterprises it documents vLLM and SGLang for high-throughput GPU inference, plus a FastAPI web demo and an iOS path through the MiniCPM-V-Apps repository.
Which fine-tuning frameworks does the MiniCPM-V Cookbook support?
Four training methods are documented: Transformers, described as the most adjustable for customization, LLaMA-Factory as a modular fine-tuning toolkit, SWIFT for lightweight and fast parameter-efficient tuning, and Align-anything for visual instruction alignment of multimodal models. Data preparation is covered by a separate dataset guidance document.
Is there a version requirement for serving MiniCPM 5 with SGLang?
Yes. The README notes that MiniCPM 5 is supported on upstream SGLang with a version of at least 0.5.12 and a native minicpm5 tool-call parser, while older LLM series are served through the tc-mb/sglang fork.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/opensqz-minicpm-v-cookbook)Was this useful?