基于合众恒跃rk3576 开发板deepseek-r1-1.5b/7b 部署指南

电子说

1.4w人已加入

描述

  核心结论:部署流程分为 5 大核心步骤,依次为基础环境安装、模型下载、模型格式转换、部署程序编译、开发板运行测试,1.5b 模型适配 4+32G 开发板,7b 模型需 8+64G 版,内存不足则需配置 swap 分区。   本次实验是基于合众恒跃HZ-RK3576-MINIEVM ,基于瑞芯微 RK3576/RK3576J 处理器的工业评估板,采用四核 A72 + 四核 A53 架构,主频 2.2GHz。2 路 Ethernet、2 路 USB3.0、2 路 USB2.0 等通信接口。同时引出 1 路 MIPI LCD、1 路 HDMI OUT、2 路 MIPI CAMERA、1 路 MICIN、1 路 H/P OUT 等音视频多媒体接口,支持多屏异显。1 路 debug 接口、1 路 OTG 接口用来调试和烧录。1 路 2x20P 排针兼容树莓派、1 路 2x17P 排针用于扩展 IO。   各位如需跟着一起部署操练,附上开发板购买链接,直接扫二维码即可: 开发板   开发板

开发板

1. 安装基础环境

1.1 新建并激活 conda 环境

1.打开 Ubuntu 终端,执行命令:conda create -n RKLLM-Toolkit python=3.8

2.激活环境:conda activate RKLLM-Toolkit

1.2 配置 RKLLM 转换环境

1.在家目录新建文件夹:mkdir -p software/rkllm

2.解压rknn-llm-release-v1.1.4压缩包至该目录

3.进入工具包路径:cd rkllm-toolkit/packages

4.安装工具:pip3 install rkllm_toolkit-1.1.4-cp38-cp38-linux_x86_64.whl

2. 下载 deepseek 模型

2.1 安装下载工具

在激活的 conda 环境中执行:pip3 install huggingface-cli -i https://mirrors.huaweicloud.com/repository/pypi/simple

2.2 下载模型

1.新建模型存储目录:mkdir -p rkllm/rknn-llm-release-v1.1.4/rkllm-toolkit/examples/huggingface/

2.配置下载加速:export HF_ENDPOINT=https://hf-mirror.com

3.进入目标目录:cd rkllm/rknn-llm-release-v1.1.4/rkllm-toolkit/examples/huggingface/

4.新建并进入模型子目录:mkdir deepseek-r1-1.5b && cd deepseek-r1-1.5b

5.执行下载命令:huggingface-cli download deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B --local-dir . --local-dir-use-symlinks False(官网直接下载可更快)

3. 转换模型为 RKLLM 格式

3.1 准备转换脚本

将data_quant.json、export_deepseek_1.5b_rkllm.py、export_deepseek_7b_rkllm.py三个文件,拷贝至rkllm-toolkit/examples目录

3.2 转换 1.5b 版本

1.确保激活 conda 环境:conda activate RKLLM-Toolkit

2.执行转换:python3 export_deepseek_1.5b_rkllm.py

3.成功标识:出现INFO: Model has been saved to ./deepseek-1.5b-w8a8-rk3576.rkllm!

3.3 转换 7b 及以上版本

1.执行转换脚本:python3 export_deepseek_7b_rkllm.py

2.设备要求:PC 需保证虚拟机内存充足

3.内存不足解决方案:创建 10G 交换分区

◦dd if=/dev/zero of=/userdata/swapfile bs=1M count=10240

◦chmod 0600 /userdata/swapfile

◦mkswap /userdata/swapfile

◦swapon /userdata/swapfile

4. 编译部署程序

4.1 编译与文件传输

1.解压部署例程压缩包(xsc_deepseek.zip),可以放到板子直接编译,路径已修改好

2.拷贝模型文件:将转换后的.rkllm 文件,拷贝至解压后的rkllm_model目录

3.编译程序:进入解压目录,执行./build-linux.sh

4.通过 adb 工具传输文件到开发板

◦传输依赖库:

adb push lib/libgomp/libgomp.so /usr/lib/libgomp.so.1

adb push lib/librkllm_api/librkllmrt.so /usr/lib

◦传输可执行文件和模型:adb push install/xscdeepseek_rkllm_demo/ /data

5. 开发板运行测试

5.1 前期准备

1.烧录系统镜像到rk3576 开发板

2.配置 swap 分区(仅 8+64G 版本运行 7b 模型时需执行)

◦创建 10G swap 文件:dd if=/dev/zero of=/userdata/swapfile bs=1M count=10240(执行较慢)

◦设置权限:chmod 0600 /userdata/swapfile

◦创建文件系统:mkswap /userdata/swapfile

◦开启分区:swapon /userdata/swapfile

◦查看状态:free -mh

5.2 运行测试(通用步骤)

1.登录开发板:通过 ssh 连接(建议网线连接,减少冗余打印)

2.运行 1.5b 模型:

◦cd /xsc_deepseek_rkllm_demo

◦./xsc_deepseek_demo rkllm_model/deepseek-1.5b-w8a8-rk3576.rkllm 5000 5000

1.运行 7b 模型:

◦cd /xsc_deepseek_rkllm_demo

◦./xsc_deepseek_demo rkllm_model/deepseek-7b-w8a8-rk3576.rkllm 5000 5000

5.3 版本限制说明

•4+32G 开发板:仅支持 1.5b 模型

•8+64G 开发板:支持 1.5b 和 7b 模型,运行 7b 需配置 swap 分区

5.4 实测截图(2GB内存如何运行大模型?)

开发板开发板开发板

审核编辑 黄宇

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分