单卡10分钟部署MiniCPM4-0.5B:轻量级大模型本地运行指南

一、介绍

MiniCPM 4 是一个极其高效的边缘侧大型模型,经过了模型架构、学习算法、训练数据和推理系统四个维度的高效优化,实现了极致的效率提升。

  • 🏗️ 高效的模型架构:

    • InfLLM v2 -- 可训练的稀疏注意力机制:采用可训练的稀疏注意力机制架构,每个 token 只需要计算与 128K 长文本中不到 5% 的 token 的相关性,显著降低了长文本处理的计算开销
  • 🧠 高效的算法学习:

    • Model Wind Tunnel 2.0 -- 高效的可预测扩展:引入了下游任务性能的扩展预测方法,使得模型训练配置搜索更加精确
    • BitCPM -- 极限三值量化:将模型参数位宽压缩至 3 个值,实现了 90% 的极端模型位宽减少
    • 高效的训练工程优化:采用 FP8 低精度计算技术结合多 token 预测训练策略
  • 📚 高质量的训练数据:

    • UltraClean -- 高质量预训练数据过滤和生成:基于高效的数据验证构建迭代数据清洗策略,开源高质量的中文和英文预训练数据集 UltraFinweb
    • UltraChat v2 -- 高质量监督微调数据生成:构建大规模高质量监督微调数据集,涵盖知识密集型数据、推理密集型数据、指令遵循数据、长文本理解数据及工具调用数据等多个维度
  • 高效的推理系统:

    • CPM.cu -- 轻量级且高效的 CUDA 推理框架:集成稀疏注意力、模型量化和推测采样以实现高效的填充和解码
    • ArkInfer -- 跨平台部署系统:支持在多个后端环境中的高效部署,提供灵活的跨平台适应能力

二、部署过程

基础环境最低要求说明:

环境名称 版本信息
Ubuntu 22.04.5 LTS
python 3.10
Cuda 12.1.1
NVIDIA Corporation 3060

1、构建基础镜像

在算家云容器中心的租赁页面中,构建基础镜像 Miniconda-Ubuntu-22.04-cuda12.1.1

2、从 github 仓库 克隆项目:

bash 复制代码
# 克隆 MiniCPM4 项目(如果克隆速度过慢可以开启学术代理加速)
git clone https://github.com/OpenBMB/MiniCPM.git

3、创建虚拟项目

ini 复制代码
# 创建一个名为 MiniCPM4 的新虚拟环境,并指定 Python 版本为 3.10
conda create -n MiniCPM4 python=3.10 -y

等待安装完成

4、安装模型依赖包

bash 复制代码
# 激活 MiniCPM4 虚拟环境
conda activate MiniCPM4

# 切换到项目工作目录
cd /MiniCPM

# 在 MiniCPM4 环境中安装 requirements.txt 依赖
pip install -r requirements.txt

依赖安装成功如下图所示:

5、下载预训练模型

推荐下载方法:

1.安装 modelscope 依赖包。

复制代码
pip install modelscope

2.创建一个 Python 下载脚本

复制代码
vim modelscope_download.py

3.在创建的脚本中插入以下下载代码

ini 复制代码
# Python 代码下载模型
from modelscope import snapshot_download
model_dir = snapshot_download('OpenBMB/MiniCPM3-4B', cache_dir='./', revision='master')

保存文件:Esc --》Shift + :--》输入英文的 :--》输入:wq

  • 如果你正在编辑文本,先按 Esc 键退出插入模式。
  • 然后,直接按 Shift + :(不需要先按冒号,这个组合键已经包含了冒号的输入),屏幕上会出现一个冒号,提示你输入命令。
  • 接着,输入 wq,表示你想要保存文件并退出。
  • 最后,按 Enter 键执行命令。

4.执行 modelscope_download.py 文件进行模型下载

复制代码
python modelscope_download.py

6、运行 hf_based_demo.py 文件

bash 复制代码
#切换到hf_based_demo.py 文件目录
cd demo/minicpm

# 运行 hf_based_demo.py 文件
python hf_based_demo.py

出现以上报错,需要修改模型路径

bash 复制代码
# 编辑 hf_based_demo.py 文件
vim hf_based_demo.py

将上方划红线的部分修改为刚刚下载模型的路径,并且修改模型的 gradio 页面 IP 和端口

第二次运行 hf_based_demo.py 文件

bash 复制代码
# 运行 hf_based_demo.py 文件
python hf_based_demo.py

出现以上结果,还需要继续安装 accelerate 依赖

复制代码
pip install accelerate

第三次运行 hf_based_demo.py 文件

bash 复制代码
# 运行 hf_based_demo.py 文件
python hf_based_demo.py

可以成功运行:

三、网页演示

相关推荐
聆风吟º7 小时前
CANN runtime 全链路拆解:AI 异构计算运行时的任务管理与功能适配技术路径
人工智能·深度学习·神经网络·cann
uesowys7 小时前
Apache Spark算法开发指导-One-vs-Rest classifier
人工智能·算法·spark
AI_56787 小时前
AWS EC2新手入门:6步带你从零启动实例
大数据·数据库·人工智能·机器学习·aws
User_芊芊君子7 小时前
CANN大模型推理加速引擎ascend-transformer-boost深度解析:毫秒级响应的Transformer优化方案
人工智能·深度学习·transformer
智驱力人工智能8 小时前
小区高空抛物AI实时预警方案 筑牢社区头顶安全的实践 高空抛物检测 高空抛物监控安装教程 高空抛物误报率优化方案 高空抛物监控案例分享
人工智能·深度学习·opencv·算法·安全·yolo·边缘计算
qq_160144878 小时前
亲测!2026年零基础学AI的入门干货,新手照做就能上手
人工智能
Howie Zphile8 小时前
全面预算管理难以落地的核心真相:“完美模型幻觉”的认知误区
人工智能·全面预算
人工不智能5778 小时前
拆解 BERT:Output 中的 Hidden States 到底藏了什么秘密?
人工智能·深度学习·bert
盟接之桥8 小时前
盟接之桥说制造:引流品 × 利润品,全球电商平台高效产品组合策略(供讨论)
大数据·linux·服务器·网络·人工智能·制造
kfyty7258 小时前
集成 spring-ai 2.x 实践中遇到的一些问题及解决方案
java·人工智能·spring-ai