ByteNoteByteNote

字节笔记本

2026年5月3日

面壁智能MiniCPM3-4B:4B参数的小模型凭什么打平8B

API中转
¥120

面壁智能一直在死磕端侧大模型这件事。从最早的MiniCPM-2B,到MiniCPM-V多模态系列,现在又开源了MiniCPM3-4B。4B参数的模型,效果打平甚至超越一众8B级别的对手。

三代模型都改了什么

MiniCPM的版本号有点绕:MiniCPM-2B是1.0,MiniCPM-1B是2.0,现在这个MiniCPM3-4B是3.0。

三代之间的主要变化:

注意力机制从MHA换成GQA,再换成MLA(MLA是DeepSeek-V2的核心创新)。模型层数从40层增加到62层,最大上下文长度从4k扩展到32k。3.0版本终于支持系统提示词和工具调用了。

另外还配套发布了Embedding模型和Reranker模型,以及针对RAG场景的LoRA微调版。不是只丢一个模型出来,而是给了一整套工具链。

效果到底怎么样

在中文英文指令遵循、数据推理、代码能力这几项上,MiniCPM3-4B的表现都不错,超越了Phi-3.5-mini-Instruct,跟Llama3.1-8B-Instruct、GLM-4-9B-Chat、Qwen2-7B-Instruct这些更大模型肩比。

最亮眼的是工具调用能力。在Berkeley Function Calling Leaderboard上,4B的MiniCPM3跑赢了一堆8B模型。这对端侧部署来说很有意义,工具调用是Agent场景的核心能力,小模型能做好这件事,意味着手机、笔记本上跑的AI也能具备Agent能力。

长文档处理的大海捞针测试也是全绿,32k上下文窗口够用了。

怎么用

几行代码就能跑起来:

python
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch

path = "openbmb/MiniCPM3-4B"
tokenizer = AutoTokenizer.from_pretrained(path, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(path, torch_dtype=torch.bfloat16, device_map="cuda", trust_remote_code=True)

messages = [{"role": "user", "content": "你好"}]
inputs = tokenizer.apply_chat_template(messages, return_tensors="pt").to("cuda")
outputs = model.generate(inputs, max_new_tokens=1024, top_p=0.8, temperature=0.9)
print(tokenizer.batch_decode([outputs[0][len(inputs[0]):]], skip_special_tokens=True)[0])

为什么小模型值得关注

大模型的军备竞赛很热闹,但真正能跑到用户设备上的,还得是小模型。4B参数的模型,手机和笔记本就能带起来,推理速度快,延迟低。

MiniCPM3-4B的价值在于:它证明了小模型不一定意味着能力阉割。通过架构优化(MLA注意力机制)和训练策略的改进,4B参数可以做到接近8B的效果。

端侧AI的天花板在被不断抬高。当手机上跑的模型也能做好工具调用和长文档理解,很多场景就不需要把数据传到云端了。

分享: