利用OpenVINO™ 快速部署端侧可用的MiniCPM-V4.0视觉大模型

本文涉及的产品
交互式建模 PAI-DSW,每月250计算时 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
模型训练 PAI-DLC,100CU*H 3个月
简介: MiniCPM-V4.0是MiniCPM-V系列中最新的高效模型,参数总量为4B。该模型在 OpenCompass评测中图像理解能力超越了GPT-4.1-mini-20250414、Qwen2.5-VL-3B-Instruct和InternVL2.5-8B。凭借小巧的参数规模和高效的架构,MiniCPM-V4.0是移动端部署的理想选择。

MiniCPM-V4.0是MiniCPM-V系列中最新的高效模型,参数总量为4B。该模型在 OpenCompass评测中图像理解能力超越了GPT-4.1-mini-20250414、Qwen2.5-VL-3B-Instruct和InternVL2.5-8B。凭借小巧的参数规模和高效的架构,MiniCPM-V4.0是移动端部署的理想选择。

OpenVINO作为一个跨平台的深度学习模型部署工具,可以极大优化大语言的模型的推理性能,在充分激活硬件算力同时,降低对于内存资源的占用。本文将介绍如何利用OpenVINO工具套件Day0在本地部署MiniCPM-V4.0模型。

内容列表

1. 环境准备

2. 模型下载和转换

3. 模型部署

第一步,环境准备

通过以下命令可以搭建基于Python的模型部署环境。

python -m venv py_venv 
./py_venv/Scripts/activate.bat 
pip install -q "torch>=2.1" "torchvision" "timm>=0.9.2" "transformers>=4.45" "Pillow" "gradio>=4.40" "tqdm" "sentencepiece" "peft" "huggingface-hub>=0.24.0" --extra-index-url https://download.pytorch.org/whl/cpu
pip install -q "nncf>=2.14.0"
pip install -q "git+https://github.com/openvino-dev-samples/optimum-intel.git@minicpm4v" --extra-index-url https://download.pytorch.org/whl/cpu
pip install -q "git+https://github.com/openvino-dev-samples/optimum.git@minicpm4v" --extra-index-url https://download.pytorch.org/whl/cpu
pip install -q -U --pre "openvino>=2025.0" "openvino-tokenizers>=2025.0" "openvino-genai>=2025.0" --extra-index-url https://storage.openvinotoolkit.org/simple/wheels/nightly

第二步,模型下载和转换

在部署模型之前,我们首先需要将原始的PyTorch模型转换为OpenVINO的IR静态图格式,并对其进行压缩,以实现更轻量化的部署和最佳的性能表现。借助Optimum提供的命令行工具optimum-cli,我们可以一键完成模型的格式转换任务:

optimum-cli export openvino --model openbmb/MiniCPM-V-4 MiniCPM-V-4-ov --trust-remote-code --weight-format fp16 --task image-text-to-text

其中,“—model” 为模型在HuggingFace上的model id,这里我们也提前下载原始模型,并将model id替换为原始模型的本地路径,针对国内开发者,推荐使用ModelScope魔搭社区作为原始模型的下载渠道,具体加载方式可以参考ModelScope官方指南:https://www.modelscope.cn/docs/models/download

转换完成后,optimum-cli工具会把原始模型拆分在4个子模型。他们分别是: language_model,resampler_model,text_embedding_model和vision_embedding_model, 其中作为基座模型的language_model资源占用最大,因此在模型转换后,我们可以单独对其进行低精度量化,以追求更高的推理性能。通过OpenVINO的NNCF量化工具,可以快速进行模型文件里的离线量化,量化后,我们可以得到INT4精度的OpenVINO模型,包含.xml和.bin两个文件,相较FP16精度的模型文件,INT4精度模型尺寸仅为其1/4左右。

  • NNCF模型量化示例
import nncf
import openvino as ov
compression_configuration = {"mode": nncf.CompressWeightsMode.INT4_SYM, "group_size": 64, "ratio": 1.0, "all_layers": True}
ov_model_path = model_dir / "openvino_language_model.xml"
ov_int4_model_path = model_dir / "openvino_language_model_int4.xml"
ov_model = ov.Core().read_model(ov_model_path)
ov_compressed_model = nncf.compress_weights(ov_model, **compression_configuration)

第三步,模型部署

目前我们推荐是用openvino-genai来部署大语言以及生成式AI任务,它同时支持Python和C++两种编程语言,安装容量不到200MB,支持流式输出以及多种采样策略。

  • GenAI API部署示例
import openvino_genai as ov_genai
ov_model = ov_genai.VLMPipeline(model_dir, device=device.value)config = ov_genai.GenerationConfig()config.max_new_tokens = 100
def load_image(image_file):    if isinstance(image_file, str) and (image_file.startswith("http") or image_file.startswith("https")):        response = requests.get(image_file)        image = Image.open(BytesIO(response.content)).convert("RGB")    else:        image = Image.open(image_file).convert("RGB")    image_data = np.array(image.getdata()).reshape(1, image.size[1], image.size[0], 3).astype(np.byte)    return image, ov.Tensor(image_data)
def streamer(subword: str) -> bool:    """        Args:        subword: sub-word of the generated text.    Returns: Return flag corresponds whether generation should be stopped.
    """    print(subword, end="", flush=True)
image, image_tensor = load_image(image_path)
question = "What is unusual on this image?"ov_model.start_chat()output = ov_model.generate(question, image=image_tensor, generation_config=config, streamer=streamer)

openvino-genai提供了chat模式的构建方法,通过声明pipe.start_chat()以及pipe.finish_chat(),多轮聊天中的历史数据将被以kvcache的形态,在内存中进行管理,从而提升运行效率。

以下为该模型在图像理解任务中的输出示例:

The unusual aspect of this image is the cat's relaxed and vulnerable position. Typically, cats avoid exposing their bellies, which are sensitive and vulnerable areas, to potential threats. In this image, the cat is lying on its back in a cardboard box, exposing its belly and hindquarters, which is not a common sight. This behavior could indicate that the cat feels safe and comfortable in its environment, suggesting a strong bond with its owner and a sense of security in its home.

完整示例代码可以查看该notebook PR:https://github.com/openvinotoolkit/openvino_notebooks/pull/3047

其中附带的Gradio demo演示效果如下:

可以看到在仅需不到5GB内存占用的情况下,该模型便可以在Intel iGPU平台上流畅运行。
📎DM_20250812150618_001.mp4

总结

利用OpenVINO工具套件,开发者可以非常轻松地将转换后的MiniCP-V系列模型部署在Intel的硬件平台上,从而进一步在本地构建起各类基于LLM的服务和应用。

参考资料

OpenVINO

---------------------------------------

*OpenVINO and the OpenVINO logo are trademarks of Intel Corporation or its subsidiaries.

-----------------------------

目录
相关文章
|
2月前
|
人工智能 算法 API
把「想法」编译成「现实」:魔搭&AMD开发者实践专场完整回顾
8月2日下午,魔搭社区ModelScope 联手 AMD,在杭州办了场有料有趣的「Agent × MCP」开发者实践专场!
151 0
|
3月前
|
人工智能 资源调度 数据可视化
ModelScope魔搭25年7月发布月报
七月流火,这个夏天火热的开场已然揭开。6月30号,我们在北京举办了首届魔搭开发者大会(ModelScope DevCon 2025),邀请了国内外知名的开源模型,以及头部开源工具的研发团队,与广大开发者共聚一堂进行分享。顶尖的AI 模型首次从线上 Hub走进线下盛会,为大家呈现了一场“模型全明星”盛会。同时我们还邀请了社区开发者参加我们的“搭友之夜”(aka 大规模面基大会)。大会分享场场爆满,现场只能用一句话来描述:“好~多~人~啊”,不提前占位根本挤不进去~~
220 3
|
2月前
|
数据采集 机器学习/深度学习 编解码
小红书 hi lab开源最强多模态大模型dots.vlm1,性能对标闭源 Gemini 2.5 Pro 和 Seed-VL1.5
小红书 hi lab开源最强多模态大模型dots.vlm1,性能对标闭源 Gemini 2.5 Pro 和 Seed-VL1.5
324 0
小红书 hi lab开源最强多模态大模型dots.vlm1,性能对标闭源 Gemini 2.5 Pro 和 Seed-VL1.5
|
2月前
智谱发布GLM-4.5V,全球开源多模态推理新标杆,Day0推理微调实战教程到!
视觉语言大模型(VLM)已经成为智能系统的关键基石。随着真实世界的智能任务越来越复杂,VLM模型也亟需在基本的多模态感知之外,逐渐增强复杂任务中的推理能力,提升自身的准确性、全面性和智能化程度,使得复杂问题解决、长上下文理解、多模态智能体等智能任务成为可能。
395 0
|
2月前
|
人工智能 安全 Nacos
如何实现 AI Agent 自主发现和使用 MCP 服务 —— Nacos MCP Router 部署最佳实践
Nacos社区推出MCP Router与MCP Registry开源解决方案,助力AI Agent高效调用外部工具。Router可智能筛选匹配的MCP Server,减少Token消耗,提升安全性与部署效率。结合Nacos Registry实现服务自动发现与管理,简化AI Agent集成复杂度。支持协议转换与容器化部署,保障服务隔离与数据安全。提供智能路由与代理模式,优化工具调用性能,助力MCP生态普及。
822 25
|
17天前
|
弹性计算 应用服务中间件
亲测:阿里云备案流程及操作步骤(图文教程)
阿里云备案共五步,最快2天成功。先提交材料至阿里云初审(1天内),通过后转交管局,用户完成工信部短信核验,最后等待管局审核(1-20天)。全程线上操作,简单高效。
123 3
|
2月前
|
机器学习/深度学习 自然语言处理 API
Qwen-MT:翻得快,译得巧
今天,机器翻译模型Qwen-MT正式上线,支持92种语言互译,具备高度可控性与低延迟、低成本特点,适用于多种场景。开发者可通过Qwen API体验其强大翻译能力。
722 15
|
2月前
|
Web App开发 人工智能 自然语言处理
从搜索到执行,全自动|AutoHub重塑ModelScope使用体验
自 2022 年 11 月成立以来,魔搭社区(ModelScope)已迅速成长为中国最大 AI 开源平台。 目前,社区已托管超 7 万个开源模型,覆盖大语言模型(LLM)、对话、语音、图像生成、视频生成、AI 作曲等多个领域;支持模型的 体验、下载、调优、训练、推理与部署全流程操作。
156 0
|
2月前
|
物联网 开发者
LoRA 模型的全新玩法——AutoLoRA 带你体验 LoRA 检索与融合的魔法
LoRA 模型的全新玩法——AutoLoRA 带你体验 LoRA 检索与融合的魔法
207 0
|
2月前
|
编解码 算法 测试技术
MiniCPM-V4.0开源,多模态能力进化,手机可用,还有最全CookBook!
今天,面壁小钢炮新一代多模态模型 MiniCPM-V 4.0 正式开源。依靠 4B 参数,取得 在 OpenCompass、OCRBench、MathVista 等多个榜单上取得了同级 SOTA 成绩,且 实现了在手机上稳定、丝滑运行。此外,官方也正式开源了 推理部署工具 MiniCPM-V CookBook,帮助开发者面向不同需求、不同场景、不同设备,均可实现开箱即用的轻量、简易部署。
324 0

热门文章

最新文章