魔搭ModelScope社区 前天 21:18
利用OpenVINO™高效推理MiniCPM4系列模型
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文介绍了如何使用OpenVINO-genai工具在本地部署面壁智能发布的MiniCPM 4.0系列LLM模型。该模型支持8B和0.5B两种参数规模,通过软硬件稀疏化实现高效性能。文章详细阐述了环境准备、模型下载与转换、以及模型部署的步骤,并提供了Python代码示例。通过OpenVINO-genai,用户可以在Intel硬件平台上轻松部署MiniCPM 4.0,构建本地LLM服务和应用。

💻环境准备: 部署MiniCPM 4.0模型需要安装Python环境,并使用pip安装openvino-genai、nncf和optimum-intel等相关库。文章提供了具体的安装命令,并列出了已验证的环境配置,包括硬件环境(Intel® Core™ Ultra系列处理器、32GB内存等)和操作系统(Windows 11)。

⬇️模型下载与转换: 在部署前,需要将PyTorch模型转换为OpenVINO™的IR静态图格式,并进行压缩以优化性能。文章介绍了使用Optimum提供的optimum-cli工具进行模型转换和权重量化的方法。用户可以通过指定--model id和量化参数(如--weight-format、--group-size等)来调整转换过程。

🚀模型部署: 推荐使用openvino-genai进行模型部署,它支持Python和C++,安装包小于200MB,并支持流式输出和多种采样策略。文章提供了Python代码示例,展示了如何使用openvino-genai的LLMPipeline加载模型,配置生成参数,并使用streamer函数进行流式输出。同时,还介绍了chat模式的使用方法,以提升运行效率。

2025-06-20 20:23 浙江

面壁智能发布的MiniCPM 4.0系列模型通过软硬件稀疏化实现高效创新,支持8B和0.5B两种参数规模。

01

模型介绍

面壁智能正式发布端侧MiniCPM 4.0 模型,实现了端侧可落地的系统级软硬件稀疏化的高效创新。

面壁推出的MiniCPM 4.0系列LLM模型拥有 8B 、0.5B 两种参数规模,针对单一架构难以兼顾长、短文本不同场景的技术难题,MiniCPM 4.0-8B 采用「高效双频换挡」机制,能够根据任务特征自动切换注意力模式:在处理高难度的长文本、深度思考任务时,启用稀疏注意力以降低计算复杂度,在短文本场景下切换至稠密注意力以确保精度,实现了长、短文本切换的高效响应。

本文将介绍如何利用openvino-genai工具在本地部署MiniCPM 4.0系列模型。

02

内容列表

-环境准备

-模型下载和转换

-模型部署

第一步,环境准备

基于以下命令可以完成模型部署任务在Python上的环境安装。

python -m venv py_venv

./py_venv/Scripts/activate.bat

pip install --pre -U openvino-genai --extra-index-url

 

https://storage.openvinotoolkit.org/simple/wheels/nightly

 

pip install nncf

pip install git+

https://github.com/huggingface/optimum-intel.git 

该示例在以下环境中已得到验证:

硬件环境:

-Intel® Core™ Ultra 7 258V

-iGPU Driver:32.0.101.6790

-NPU Driver:32.0.100.4023

-Memory: 32GB

-Intel® Core™ Ultra 9 285H

-iGPU Driver:32.0.101.6790

-NPU Driver:32.0.100.4023

-Memory: 32GB

操作系统:

-Windows 11 24H2 (26100.4061)

OpenVINO版本: 

-openvino 2025.2.0-dev20250520

-openvino-genai 2025.2.0.0-dev20250520

-openvino-tokenizers 2025.2.0.0-dev20250520

03

第二步,模型下载和转换

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

optimum-cli export openvino --model <model id> --task text-generation-with-past --weight-format int4 --sym --group-size -1 --backup-precision int8_sym --trust-remote-code <model_dir > 

开发者可以根据模型的输出结果,调整其中的量化参数,包括:

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

--weight-format:量化精度,可以选择fp32,fp16,int8,int4,int4_sym_g128,int4_asym_g128,int4_sym_g64,int4_asym_g64

--group-size:权重里共享量化参数的通道数量

--ratioint4/int8权重比例,默认为1.00.6表示60%的权重以int4表,40%int8表示

--sym:是否开启对称量化

此外我们建议使用以下参数对运行在NPU上的模型进行量化,以达到性能和精度的平衡。

04

第三步,模型部署

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

GenAI API部署示例

import argparse

import openvino_genai

def streamer(subword):

   print(subword, end='', flush=True)

   # Return flag corresponds whether generation should be stopped.

   return openvino_genai.StreamingStatus.RUNNING

def main():

   parser = argparse.ArgumentParser()

   parser.add_argument('model_dir')

   args = parser.parse_args()

   device = 'CPU'  # GPU can be used as well

   pipe = openvino_genai.LLMPipeline(args.model_dir, device)

   config = openvino_genai.GenerationConfig()

   config.max_new_tokens = 100

   pipe.start_chat()

   while True:

       try:

           prompt = input('question:\n')

       except EOFError:

           break

       pipe.generate(prompt, config, streamer)

       print('\n----------')

   pipe.finish_chat()

if '__main__' == __name__:

   main()

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

chat模式输出结果示例:

05

总结

可以看到,利用openvino-genai,我们可以非常轻松地将转换后的MiniCPM 4.0模型部署在Intel的硬件平台上,从而进一步在本地构建起各类基于LLM的服务和应用。

06

参考资料


👇点击关注ModelScope公众号获取

更多技术信息~

阅读原文

跳转微信打开

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

MiniCPM 4.0 OpenVINO 模型部署
相关文章