news 2026/9/11 2:21:41

MiniCPM-V/o 端侧多模态大模型完全指南:从 1.3B 视觉语言模型到 9B 全双工 Omni 实时交互

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MiniCPM-V/o 端侧多模态大模型完全指南:从 1.3B 视觉语言模型到 9B 全双工 Omni 实时交互

MiniCPM-V/o 端侧多模态大模型完全指南:从 1.3B 视觉语言模型到 9B 全双工 Omni 实时交互

【免费下载链接】MiniCPM-VA Pocket-Sized MLLM for Ultra-Efficient Image and Video Understanding on Your Phone项目地址: https://gitcode.com/GitHub_Trending/mi/MiniCPM-V

MiniCPM-V 与 MiniCPM-o 是面壁智能(ModelBest)与清华大学 NLP 实验室(THUNLP)开源的面向端侧部署的多模态大模型(MLLM)系列:MiniCPM-V 聚焦图像、视频与文本的高效视觉语言理解,MiniCPM-o 则将能力扩展到支持实时流式视频、音频输入与文本、语音输出的端到端全模态(omnimodal)交互。本指南以仓库根目录 README.md 为主线,结合 chat.py、docs/api.md 等源码文件,系统讲解两大旗舰模型 MiniCPM-V 4.6 与 MiniCPM-o 4.5 的架构设计、评测表现、Transformers 推理全流程、端侧部署方案及生态框架支持,读完即可在手机、GPU 或 Mac 上完成从加载模型到实时多模态对话的完整实践。

一、模型系列总览:面向端侧的两条产品线

MiniCPM-V 与 MiniCPM-o 是面向强性能与端侧高效部署设计的多模态模型系列,目前最受关注的两款旗舰模型分别为:

  • MiniCPM-V 4.6:MiniCPM-V 系列中最新、最高效的模型,总参数量仅1.3B。基于 SigLIP2-400M 视觉编码器与 Qwen3.5-0.8B 语言模型构建,采用 LLaVA-UHD v4 提出的intra-ViT 早期压缩技术,将视觉编码计算成本降低 50% 以上,并支持4x/16x 混合视觉 token 压缩率,可在精度与速度之间灵活切换。可部署于iOS、Android、HarmonyOS三大主流移动平台,边缘适配代码全部开源。
  • MiniCPM-o 4.5:MiniCPM-o 系列中最新、能力最强的模型,总参数量9B。采用基于 SigLip2、Whisper-medium、CosyVoice2 与 Qwen3-8B 构建的端到端架构,支持全双工(full-duplex)多模态实时直播交互——语音、文本输出流与实时视频、音频输入流互不阻塞,模型可以同时"看见、听见、说话",并具备主动提醒等主动性交互能力。

从仓库的模型演进记录(README News 部分)可以看到,该系列经历了 MiniCPM-V 1.0 → 2.0 → Llama3-V 2.5 → 2.6 → 4.0 → 4.5 → 4.6,以及 MiniCPM-o 2.6 → 4.5 的持续迭代,每次迭代都在能力与端侧效率上同步推进。

二、MiniCPM-V 4.6:1.3B 参数的端侧视觉语言模型

2.1 核心特性

README 将 MiniCPM-V 4.6 定位为"目前对边缘部署最友好的模型",其四大特性如下:

  • 基础能力领先:在 Artificial Analysis Intelligence Index 上得分 13,超过 Qwen3.5-0.8B(10 分)与 Ministral 3 3B(11 分),且 token 成本远低于前者(相比 Qwen3.5-0.8B 节省 19 倍、相比 Thinking 版本节省 43 倍 token 成本)。
  • 多模态能力强:在 OpenCompass、RefCOCO、HallusionBench、MUIRBench、OCRBench 等多个基准上达到 Qwen3.5 2B 级别能力。
  • 超高效架构:基于 LLaVA-UHD v4 的 intra-ViT 早期压缩技术,视觉编码 FLOPs 减少 50% 以上;相比 Qwen3.5-0.8B 实现约1.5 倍 token 吞吐量;支持 4x/16x 混合视觉 token 压缩率,可灵活切换精度与速度。
  • 生态友好:适配 SGLang、vLLM、llama.cpp、Ollama 等推理框架,以及 SWIFT、LLaMA-Factory 等微调生态;提供 GGUF、BNB、AWQ、GPTQ 多种量化变体。

2.2 推理效率与评测表现

README 给出了 MiniCPM-V 4.6 的推理效率对比图(高并发吞吐量、单请求 TTFT)与整体性能图,其中 Instruct 版本与 Thinking 版本性能均可折叠查看:

2.3 环境安装与 CUDA 兼容性处理

使用 Transformers 推理 MiniCPM-V 4.6 的安装命令如下(README 原文):

pip install "transformers[torch]>=5.7.0" torchvision torchcodec

CUDA 兼容性提示torchcodec(用于视频解码)可能与某些 CUDA 版本存在兼容问题。例如torch>=2.11默认捆绑 CUDA 13.1,而 CUDA 12.x 环境可能遇到RuntimeError: Could not load libtorchcodec。两种解决思路:

  1. 用 PyAV 替换 torchcodec,图像与视频推理均不受 CUDA 版本限制:
    pip install "transformers[torch]>=5.7.0" torchvision av
  2. 固定 torch 的 CUDA 版本安装(例如 CUDA 12.8):
    pip install "transformers>=5.7.0" torchvision torchcodec --index-url https://download.pytorch.org/whl/cu128

2.4 模型加载与图像推理

加载模型使用 Transformers 的AutoModelForImageTextToTextAutoProcessor

from transformers import AutoModelForImageTextToText, AutoProcessor model_id = "openbmb/MiniCPM-V-4.6" processor = AutoProcessor.from_pretrained(model_id) model = AutoModelForImageTextToText.from_pretrained( model_id, torch_dtype="auto", device_map="auto" ) # 多图与视频场景下推荐使用 Flash Attention 2 加速并节省显存: # model = AutoModelForImageTextToText.from_pretrained( # model_id, # torch_dtype=torch.bfloat16, # attn_implementation="flash_attention_2", # device_map="auto", # )

图像理解推理通过apply_chat_template构造输入,核心是downsample_mode参数控制视觉 token 压缩率:

messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/openbmb/DemoCase/resolve/main/refract.png"}, {"type": "text", "text": "What causes this phenomenon?"}, ], } ] downsample_mode = "16x" # 使用 downsample_mode="4x" 可获得更精细细节 inputs = processor.apply_chat_template( messages, tokenize=True, add_generation_prompt=True, return_dict=True, return_tensors="pt", downsample_mode=downsample_mode, max_slice_nums=36, ).to(model.device) generated_ids = model.generate(**inputs, downsample_mode=downsample_mode, max_new_tokens=512) generated_ids_trimmed = [ out_ids[len(in_ids):] for in_ids, out_ids in zip(inputs.input_ids, generated_ids) ] output_text = processor.batch_decode( generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False ) print(output_text[0])

2.5 视频推理

视频推理与图像推理结构类似,区别在于使用{"type": "video", ...}内容块,并传入帧数、堆叠帧等参数:

messages = [ { "role": "user", "content": [ {"type": "video", "url": "https://huggingface.co/datasets/openbmb/DemoCase/resolve/main/football.mp4"}, {"type": "text", "text": "Describe this video in detail. Follow the timeline and focus on on-screen text, interface changes, main actions, and scene changes."}, ], } ] downsample_mode = "16x" # 使用 downsample_mode="4x" 可获得更精细细节 inputs = processor.apply_chat_template( messages, tokenize=True, add_generation_prompt=True, return_dict=True, return_tensors="pt", downsample_mode=downsample_mode, max_num_frames=128, stack_frames=1, max_slice_nums=1, use_image_id=False, ).to(model.device) generated_ids = model.generate(**inputs, downsample_mode=downsample_mode, max_new_tokens=2048) generated_ids_trimmed = [ out_ids[len(in_ids):] for in_ids, out_ids in zip(inputs.input_ids, generated_ids) ] output_text = processor.batch_decode( generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False ) print(output_text[0])

2.6 高级参数详解

README 提供了通过apply_chat_template自定义图像/视频处理的关键参数表,全部参数及默认值如下:

参数默认值适用范围说明
downsample_mode"16x"图像与视频视觉 token 下采样。"16x" 合并 token 以提升效率;"4x" 保留 4 倍 token 以获得更精细细节。必须同时传给generate()
max_slice_nums9图像与视频高分辨率图像切分时的最大切片数。数值越大,大图细节保留越多。推荐:图像36,视频1
max_num_frames128仅视频从视频中采样的最大主帧数。
stack_frames1仅视频每秒采样点总数。1= 仅主帧(不堆叠);N(N>1)= 每秒 1 个主帧 + N−1 个子帧,子帧合成网格图并与主帧交错。推荐35
use_image_idTrue图像与视频是否在每个图像/帧占位符前添加<image_id>N</image_id>标签。推荐:图像True,视频False

关键提醒downsample_mode必须同时传给apply_chat_template(保证占位符数量正确)和generate(作用于视觉编码器);其余参数只需传给apply_chat_template

2.7 用transformers serve快速部署 OpenAI 兼容服务

Transformers 自带轻量级 OpenAI 兼容服务端,适合快速测试与中低负载部署:

pip install "transformers[serving]>=5.7.0"

启动服务:

transformers serve openbmb/MiniCPM-V-4.6 --port 8000 --host 0.0.0.0 --continuous-batching

发送请求(图像以 image_url 形式传入):

curl -s http://localhost:8000/v1/chat/completions \ -H 'Content-Type: application/json' \ -d '{ "model": "openbmb/MiniCPM-V-4.6", "messages": [{ "role": "user", "content": [ {"type": "image_url", "image_url": {"url": "https://huggingface.co/datasets/openbmb/DemoCase/resolve/main/refract.png"}}, {"type": "text", "text": "What causes this phenomenon?"} ] }] }'

2.8 移动端部署:iOS / Android / HarmonyOS

MiniCPM-V 4.6 是系列中首个同时覆盖三大主流移动平台(iOS、Android、HarmonyOS)的模型,README 展示了三端实机录屏效果(iPhone 17 Pro Max、Redmi K70、HUAWEI nova 14):

项目开源了三端边缘部署指导与全部适配源码,开发者可通过官方下载页面获取 App,或按照边缘部署指南在自己的设备上复现端侧体验。

三、MiniCPM-o 4.5:9B 参数的全双工 Omni 实时交互模型

3.1 模型架构与关键机制

MiniCPM-o 4.5 以 SigLip2(视觉)、Whisper-medium(语音理解)、CosyVoice2(语音合成)、Qwen3-8B(语言主干)为基础,端到端构建,总参数 9B。README 明确了四大架构机制:

  • 端到端全模态架构:各模态编码器/解码器与 LLM 通过隐藏状态(hidden states)密集连接,信息流与控制更优,训练中能充分利用丰富的多模态知识。
  • 全双工 Omni 实时流机制:(1) 将离线模态编解码器改造为在线全双工形式以处理流式输入/输出,语音 token 解码器以交错方式建模文本与语音 token,支持全双工语音生成(与新输入及时同步),并提升长语音(>1 分钟)生成的稳定性;(2)以毫秒级时间线同步所有输入输出流,由 LLM 主干中的时分复用(TDM)机制统一建模——将并行的全模态流按小时段时间片划分为顺序信息组处理。
  • 主动交互机制:LLM 持续监控输入视频与音频流,以1Hz 频率决定是否说话。高决策频率与全双工特性共同支撑主动交互能力。
  • 可配置语音建模设计:继承 MiniCPM-o 2.6 的多模态系统提示设计——包含传统文本系统提示与决定助手音色的音频系统提示,推理时可克隆新声音、进行角色扮演。

架构总览图如下:

3.2 能力亮点

  • 视觉能力:OpenCompass 平均分 77.6(覆盖 8 个主流基准),以 9B 参数超越 GPT-4o、Gemini 2.0 Pro 等常用闭源模型并逼近 Gemini 2.5 Flash;单模型同时支持 instruct 与 thinking 两种模式。
  • 语音能力:支持中英双语实时语音对话与可配置音色,支持通过一段参考音频进行声音克隆与角色扮演(克隆效果优于 CosyVoice2 等强 TTS 工具)。
  • OCR 与效率:支持最高 180 万像素高分辨率图像、任意宽高比下最高 10fps 高帧率视频;在 OmniDocBench 端到端英文文档解析上取得 SOTA,超过 Gemini-3 Flash、GPT-5 与 DeepSeek-OCR 2 等模型;MMHal-Bench 上与 Gemini 2.5 Flash 持平,支持 30+ 语言。

3.3 环境准备

官方明确推荐在NVIDIA GPU + PyTorch环境下推理以保证 100% 精度,且需要固定transformers==4.51.0(其他版本可能存在兼容性问题,官方仍在调查中),测试环境为 Python 3.10:

  • 不含 TTS 或流式推理
pip install "transformers==4.51.0" accelerate "torch>=2.3.0,<=2.8.0" "torchaudio<=2.8.0" "minicpmo-utils>=1.0.5"
  • 含 TTS 或流式推理
pip install "transformers==4.51.0" accelerate "torch>=2.3.0,<=2.8.0" "torchaudio<=2.8.0" "minicpmo-utils[all]>=1.0.5"

可选依赖:视频帧提取(use_ffmpeg=True)与视频生成(generate_duplex_video)需要 FFmpeg。macOS 用brew install ffmpeg,Ubuntu/Debian 用sudo apt update && sudo apt install ffmpeg,安装后用ffmpeg -version验证。

3.4 模型初始化与双工/单工切换

import torch from transformers import AutoModel # 加载全模态模型(默认 init_vision=True, init_audio=True, init_tts=True) # 仅视觉模型:设置 init_audio=False 和 init_tts=False # 仅音频模型:设置 init_vision=False model = AutoModel.from_pretrained( "openbmb/MiniCPM-o-4_5", trust_remote_code=True, attn_implementation="sdpa", # sdpa 或 flash_attention_2 torch_dtype=torch.bfloat16, init_vision=True, init_audio=True, init_tts=True, ) model.eval().cuda() # 初始化 TTS 以支持音频输出 model.init_tts() # 半双工模型转为全双工模式 duplex_model = model.as_duplex() # 全双工模型转回半双工模式 model = duplex_model.as_simplex(reset_session=True)

3.5 全双工(Duplex)Omni 模式:实时/录制视频流式对话

全双工模式面向实时或录制视频对话,通过streaming_prefill+streaming_generate逐块流式处理视频帧与音频段:

import librosa import torch from minicpmo.utils import generate_duplex_video, get_video_frame_audio_segments from transformers import AutoModel # 加载模型并转为全双工模式 model = AutoModel.from_pretrained( "openbmb/MiniCPM-o-4_5", trust_remote_code=True, attn_implementation="sdpa", # 或 "flash_attention_2" torch_dtype=torch.bfloat16, ) model.eval().cuda() model = model.as_duplex() # 加载视频与参考音频 video_path = "assets/omni_duplex1.mp4" ref_audio_path = "assets/HT_ref_audio.wav" ref_audio, _ = librosa.load(ref_audio_path, sr=16000, mono=True) # 提取视频帧与音频段 video_frames, audio_segments, stacked_frames = get_video_frame_audio_segments( video_path, stack_frames=1, use_ffmpeg=True, adjust_audio_length=True ) # 以系统提示 + 声音参考准备双工会话 model.prepare( prefix_system_prompt="Streaming Omni Conversation.", ref_audio=ref_audio, prompt_wav_path=ref_audio_path, ) results_log = [] timed_output_audio = [] # 逐块流式处理 for chunk_idx in range(len(audio_segments)): audio_chunk = audio_segments[chunk_idx] if chunk_idx < len(audio_segments) else None frame = video_frames[chunk_idx] if chunk_idx < len(video_frames) else None frame_list = [] if frame is not None: frame_list.append(frame) if stacked_frames is not None and chunk_idx < len(stacked_frames) and stacked_frames[chunk_idx] is not None: frame_list.append(stacked_frames[chunk_idx]) # 第 1 步:流式预填充 model.streaming_prefill( audio_waveform=audio_chunk, frame_list=frame_list, max_slice_nums=1, # 高清模式可增大(堆叠帧时如 [2, 1]) batch_vision_feed=False, # 追求速度可设为 True ) # 第 2 步:流式生成 result = model.streaming_generate( prompt_wav_path=ref_audio_path, max_new_speak_tokens_per_chunk=20, decode_mode="sampling", ) if result["audio_waveform"] is not None: timed_output_audio.append((chunk_idx, result["audio_waveform"])) chunk_result = { "chunk_idx": chunk_idx, "is_listen": result["is_listen"], "text": result["text"], "end_of_turn": result["end_of_turn"], "current_time": result["current_time"], "audio_length": len(result["audio_waveform"]) if result["audio_waveform"] is not None else 0, } results_log.append(chunk_result) print("listen..." if result["is_listen"] else f"speak> {result['text']}") # 生成带 AI 回复的输出视频(渲染中文字幕需安装 CJK 字体,如 fonts-noto-cjk) generate_duplex_video( video_path=video_path, output_video_path="duplex_output.mp4", results_log=results_log, timed_output_audio=timed_output_audio, output_sample_rate=24000, )

3.6 半双工(Half-Duplex)Omni 模式

半双工模式提供 chat 与 streaming 两种推理方式。Chat 推理(一次性处理整段视频):

from minicpmo.utils import get_video_frame_audio_segments model = ... model.init_tts() video_path = "assets/Skiing.mp4" # 可选:设置参考音频以克隆音色 ref_audio_path = "assets/HT_ref_audio.wav" sys_msg = model.get_sys_prompt(ref_audio=ref_audio_path, mode="omni", language="en") # stack_frames=5 用于高刷新率模式 video_frames, audio_segments, stacked_frames = get_video_frame_audio_segments(video_path, stack_frames=1) omni_contents = [] for i in range(len(video_frames)): omni_contents.append(video_frames[i]) omni_contents.append(audio_segments[i]) if stacked_frames is not None and stacked_frames[i] is not None: omni_contents.append(stacked_frames[i]) msg = {"role": "user", "content": omni_contents} msgs = [sys_msg, msg] res = model.chat( msgs=msgs, max_new_tokens=4096, do_sample=True, temperature=0.7, use_tts_template=True, enable_thinking=False, omni_mode=True, # Omni 推理必填 generate_audio=True, output_audio_path="output.wav", max_slice_nums=1, # 高清模式可增大 ) print(res)

Streaming 推理则分三步走:先streaming_prefill预填充系统提示,再逐块预填充 omni 内容(仅最后一个音频块设置is_last_chunk=True),最后用streaming_generate迭代生成(generate_audio=True时同时输出文本与 24kHz 波形音频,并通过sf.write保存)。

3.7 半双工实时语音对话模式

该模式把用户语音按1 秒切块流式送入模型,降低首 token 延迟。关键约定:输入采样率固定IN_SAMPLE_RATE = 16000,输出采样率固定OUT_SAMPLE_RATE = 24000model.reset_session(reset_token2wav_cache=True)清空状态;model.init_token2wav_cache(prompt_speech_16k=ref_audio)初始化语音克隆缓存。官方建议实时语音对话模式使用length_penalty=1.1提升回复内容质量。中英文系统提示示例:

# 英文对话 sys_msg = { "role": "system", "content": [ "Clone the voice in the provided audio prompt.", ref_audio, "Please assist users while maintaining this voice style. Please answer the user's questions seriously and in a high quality. Please chat with the user in a highly human-like and oral style. You are a helpful assistant developed by ModelBest: MiniCPM-Omni" ] } # 中文对话 sys_msg = { "role": "system", "content": [ "模仿输入音频中的声音特征。", ref_audio, "你的任务是用这种声音模式来当一个助手。请认真、高质量地回复用户的问题。请用高自然度的方式和用户聊天。你是由面壁智能开发的人工智能助手:面壁小钢炮。" ] }

3.8 语音能力专项:零样本 TTS、Mimick 与音频理解

  • 零样本 TTS:输入"请朗读以下内容。+ 文本",配合参考音频即可让模型用克隆音色朗读任意中英文内容(temperature=0.1保证稳定性)。
  • Mimick(模仿):输入"Please repeat the following speech in the appropriate language."+ 一段音频,模型转写并高保真重建原音频,用于评估端到端语音建模能力。
  • 音频理解任务:使用不同任务提示即可完成 ASR(请仔细听这段音频片段,并将其内容逐字记录。/Please listen to the audio snippet carefully and transcribe the content.)、说话人分析(推测性别、状态、年龄段、健康状况)、通用音频描述(Summarize the main content of the audio.)与声音场景打标(Utilize one keyword to convey the audio's content or the associated scene.)。

3.9 视觉理解:单图、多图、少样本与视频

MiniCPM-o 4.5 的视觉推理方式与 MiniCPM-V 4.5 相同。仅加载视觉模块时可关闭音频与 TTS(init_audio=False, init_tts=False)以节省资源:

  • 单图msgs = [{"role": "user", "content": [image, question]}],调用model.chat(msgs=msgs, use_tts_template=False)
  • 多图对比:content 列表放入多张PIL.Image与问题文本即可。
  • 上下文少样本学习(In-Context Few-Shot):按"图+问题 → 答案"交替构造多轮 messages,让模型从示例中学习抽取规则(如"production date")。
  • 视频:用get_video_frame_audio_segments(video_path)取帧后,content = video_frames + [question],chat 时传use_image_id=False, max_slice_nums=1enable_thinking=True可开启思考模式。

另外,chat方法的 content 支持两种输入格式:原生格式(直接传 PIL.Image / np.ndarray / str 对象)与OpenAI 兼容格式image_urlaudio_urlvideo_urltext结构化字典),支持本地路径或 http(s) URL,且两种格式可混用;其中video_url还支持stack_framesuse_audio选项。

3.10 在自有设备上部署实时 Web Demo

README 提供了两种部署路径:

  • PyTorch + NVIDIA GPU(推荐,无损精度):官方提供了简洁且功能完整的 PyTorch Web Demo,支持全双工 Omni 实时流、全双工/半双工语音实时流、回合制聊天、自定义系统提示与参考音频,并可作为第三方应用的 API 后端。要求NVIDIA GPU 显存 ≥ 28GB
  • llama.cpp-omni(Mac 等 PC 端边缘推理):纯 C++ 实现 + 量化权重,支持半双工语音实时对话与全双工 Omni 实时流。半双工语音对话要求 Apple M3/M4/M5 芯片(≥16GB 内存)或 ≥12GB 显存的低配 NVIDIA GPU;全双工 Omni 实时流要求 Apple M4 Max(≥24GB 内存)或 ≥12GB 显存的 NVIDIA GPU。官方提供现成的 Docker 镜像与 WebRTC 演示(见 MiniCPM-V & o Cookbook)可直接在 Mac 上体验低延迟全双工通信。

四、推理/训练框架支持矩阵与在线 API

4.1 框架支持矩阵

README 给出了完整的框架支持表(部署指南链接位于官方 Cookbook):

框架MiniCPM-V 4.6MiniCPM-o 4.5MiniCPM-V 4.5MiniCPM-V 4.0历史 MiniCPM-V/o 模型
vLLM
SGLang
llama.cpp
Ollama

此外FlagOS统一多芯片后端插件支持 MiniCPM-o 4.5 在包括 NVIDIA 在内的6 种 AI 芯片家族上推理(如 Hygon-BW1000、Metax-C550、Iluvatar-BIV150、Ascend-A3、Zhenwu-810E);vLLM 场景也可通过vllm-plugin-FL插件接入。训练侧支持LLaMA-FactorySWIFT微调(MiniCPM-V 4.6 有专门指南)。

4.2 在线 API 服务

仓库 docs/api.md 提供了 MiniCPM-V 4.5/4.6 与 MiniCPM-o 4.5 的 Chat Completions API 接入说明,且 MiniCPM-V 4.6 提供免费的公共 API Key供试用:

Base URL: https://api.modelbest.cn/v1 Chat API: POST /chat/completions Authorization: Bearer <API_KEY>

可用模型 ID 包括MiniCPM-V-4.5-9BMiniCPM-V-4.6-1BMiniCPM-V-4.6-ThinkingMiniCPM-O-4.5-9B。API 支持纯文本、图像(base64 data URL 的image_url格式)与视频(video_url格式)理解;Thinking 模型的中间推理过程会返回在message.reasoning字段中。仓库根目录还有 web_demo.py 等传统 WebUI 实现,以及 finetune/ 下的 LoRA 微调脚本(finetune_lora.sh)与 finetune.py,可供自定义微调参考。

五、Model Zoo:各量化变体与资源需求

README 的 Model Zoo 列出了当前主力模型的资源占用与下载入口:

模型设备显存/内存说明
MiniCPM-V 4.6GPU4 GB目前最小的 MiniCPM-V,单图/多图/视频理解
MiniCPM-V 4.6 ggufCPU2 GBGGUF 版,内存占用更低、推理更快
MiniCPM-V 4.6 BNB / AWQ / GPTQGPU3 GBint4 量化版,降低显存占用
MiniCPM-V 4.6 Thinking(含 gguf/BNB/AWQ/GPTQ)GPU/CPU2~4 GB思考变体,支持复杂问题深度推理
MiniCPM-o 4.5GPU19 GB最新全模态模型
MiniCPM-o 4.5 ggufGPU10 GBGGUF 版
MiniCPM-o 4.5 AWQGPU11 GBAWQ 量化版

历史模型(MiniCPM-V 4.0、4.5、MiniCPM-o 2.6、MiniCPM-V 2.6、MiniCPM-Llama3-V 2.5、MiniCPM-V 2.0/1.0、OmniLMM-12B)的详细文档均存放于仓库 docs/ 目录,例如 docs/minicpm_v4dot5_en.md、docs/minicpm_o2dot6_en.md、docs/minicpm_llama3_v2dot5.md。仓库还提供了完整的评测工具链 eval_mm/(VLMEvalKit 与 VQAEval 两套评测代码)以及低显存多卡推理指南 docs/inference_on_multiple_gpus.md。

六、已知局限与使用注意

README 明确列出 MiniCPM-o 4.5 的已知局限,使用时需注意:

  • 基础能力:全双工 Omni 实时流能力的基础仍待改进。
  • Omni 模式语音输出不稳定:全双工实时流模式下可能有个别字发音错误。
  • 中英混说:语音与 Omni 模式下偶发中英混杂回复。
  • Web Demo 延迟:海外服务器托管的在线 Demo 可能高延迟甚至丢失部分输出片段,官方建议本地部署或使用良好网络环境。

七、许可证与引用

MiniCPM-o/V 模型权重与代码均以Apache-2.0协议开源(见仓库 LICENSE)。如需引用,README 提供了 MiniCPM-o 4.5、MiniCPM-V 4.5 与 MiniCPM-V 系列的技术报告 BibTeX 条目。该系列由 THUNLP 与 ModelBest 联合开发,相关技术报告与关键技术论文(如 LLaVA-UHD、RLAIF-V 等)列表详见 README 的 "Technical Reports and Key Techniques Papers" 章节。

总而言之,本仓库完整覆盖了从 1.3B 视觉语言模型(MiniCPM-V 4.6)到 9B 全双工全模态模型(MiniCPM-o 4.5)的推理、部署、量化、微调与评测全流程,无论你是想在手机上跑一个离线视觉助手,还是要在 GPU/Mac 上构建实时语音视频交互应用,都可以直接参照上文各节步骤落地。

【免费下载链接】MiniCPM-VA Pocket-Sized MLLM for Ultra-Efficient Image and Video Understanding on Your Phone项目地址: https://gitcode.com/GitHub_Trending/mi/MiniCPM-V

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/11 2:21:41

光子晶体板BIC的动量空间偏振拓扑:从建模到拓扑电荷提取

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/11 2:18:02

SGA与Swap的暗战:Oracle内存管理与性能优化实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/11 2:15:34

2026 Kali Linux 安装教程:虚拟机部署与初始化配置全攻略

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/11 2:13:56

基于lwIP的应用层协议仿真实战:HTTP/MQTT/CoAP/DNS报文详解

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华