当前位置: 首页 > news >正文

单卡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 – 跨平台部署系统:支持在多个后端环境中的高效部署,提供灵活的跨平台适应能力

二、部署过程

基础环境最低要求说明:

环境名称版本信息
Ubuntu22.04.5 LTS
python3.10
Cuda12.1.1
NVIDIA Corporation3060

1、构建基础镜像

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

屏幕截图

2、从 github 仓库 克隆项目:

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

从

3、创建虚拟项目

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

创建虚拟环境.png

等待安装完成

等待虚拟环境安装完成.png

4、安装模型依赖包

# 激活 MiniCPM4 虚拟环境
conda activate MiniCPM4# 切换到项目工作目录
cd /MiniCPM# 在 MiniCPM4 环境中安装 requirements.txt 依赖
pip install -r requirements.txt

安装模型依赖库requirements.png

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

requirements依赖安装成功.png

5、下载预训练模型

推荐下载方法:

1.安装 modelscope 依赖包。

pip install modelscope

安装

2.创建一个 Python 下载脚本

vim modelscope_download.py

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

# 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 文件

#切换到hf_based_demo.py 文件目录
cd demo/minicpm# 运行 hf_based_demo.py 文件
python hf_based_demo.py

运行

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

# 编辑 hf_based_demo.py 文件
vim hf_based_demo.py

修改路径1.png

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

修改路径2.png

第二次运行 hf_based_demo.py 文件

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

第二次运行hf_based_demo.py

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

pip install accelerate

安装

第三次运行 hf_based_demo.py 文件

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

可以成功运行:

第三次运行

三、网页演示

网页演示.png

http://www.dtcms.com/a/304945.html

相关文章:

  • ESP8266 AT 固件
  • Linux信号量:进程同步与互斥的核心机制
  • 人形机器人指南(十四)集成
  • 248°视野里的温柔革命:当清洁成为治愈城市的艺术
  • Qt 移动应用界面设计原则
  • 智能Agent场景实战指南 Day 23 : Agent安全与隐私保护
  • C++异常捕获:为何推荐按引用(by reference)捕获?
  • 【LeetCode 热题 100】(二)双指针
  • 基于Java+SQLServer2017实现(Web)酒店客房管理系统
  • MongoDB系列教程-教程概述
  • 系统选择菜单(ubuntu grub)介绍
  • 标量子查询 外表有多少重复值决定filter次数 转化 left join
  • Python三大Web框架:FastAPI vs Flask vs Django 详解与快速入门指南
  • BreachForums 黑客论坛强势回归
  • windows软件ARM64和AMD64(x64)区别,如何查看电脑支持哪种
  • JVM易混淆名称
  • 大型微服务项目:听书——多端重复提交订单问题适配器模式实现不同支付方式的选择零钱支付逻辑
  • 爬虫逆向之瑞数五案例:某某医学院(补环境,联调)
  • 适配器模式的三种C++实现
  • 宠物经济行业研究系列报告
  • electron-vite 动态加载脚本 实现动态插件
  • 如何为你的WordPress网站选择合适的安全插件
  • 【效率工具】255款工作计划表格Excel电子版模板:总结日月周报日历安排提醒时间管理
  • 遍历-找到匹配的节点
  • 零基础-动手学深度学习-7.6. 残差网络(ResNet)
  • [leetcode] 子集
  • OpenCL - study - code04 canny
  • 泰勒图中RMSD和RMSE是一个指标吗?
  • 掌控AI工具链:用 Python + API 构建 AI MCP 服务器
  • VUE进阶案例