人人都能上手部署DeepSeek-R1蒸馏模型:应用昇思+香橙派 AI Pro实践全流程
本文聚焦于高性能生成式AI模型DeepSeek在香橙派AI Pro开发板上的部署与优化,特别强调NPU加速的应用实践。文章首先介绍了DeepSeek模型的特点及其蒸馏技术的优势,随后详细阐述了香橙派AI Pro 20T开发板的硬件特性,包括高性能AI处理器和丰富的接口功能。核心内容围绕如何通过NPU加速实现DeepSeek模型的高效部署展开,详细介绍了烧录镜像、环境配置、模型运行及优化的完整流程。
前序
2025年蛇年春节,DeepSeek强势出圈,以十分之一的训练成本比肩OpenAI GPT-4o的性能,重塑AI世界新秩序。DeepSeek向全世界开源,为全球的数据科学家、AI爱好者乃至中小开发者开辟了一条通往前沿技术的道路。
而DeepSeek-R1-Distill-Qwen-1.5B 是DeepSeek-R1在 Qwen系列开源模型上进一步优化和蒸馏得到的轻量化语言模型,通过蒸馏技术实现效率与性能的平衡,适合于资源受限场景。
笔者所在的团队之前就有尝试在开发板上部署DeepSeek相关蒸馏模型,但苦于一直没有成功,或者部署成功后仅利用了CPU的算力,导致执行性能很慢。在2月10日了解到DeepSeek-R1-Distill-Qwen-1.5B模型基于MindSpore可以跑在香橙派AIpro了,非常激动,当天晚上便在香橙派AIpro(20T)24G开发板上把模型部署起来了。
那么接下来,我将结合自己的实践经验,分享如何基于昇思MindSpore在香橙派开发板上实现DeepSeek-R1-Distill-Qwen-1.5B的部署。
开源链接
DeepSeek-R1-Distill-Qwen-1.5B部署代码:
https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/17-DeepSeek-R1-Distill-Qwen-1.5B)
1.DeepSeek简介
DeepSeek 是一个高性能的生成式 AI 模型,由 DeepSeek 团队开发。它在多个基准测试中表现出色,尤其是在数学推理和编程任务上。DeepSeek 的不同版本(如 R1、V2、V3 等)在架构和训练方法上进行了优化,以提高模型的推理能力和效率。
2. 蒸馏技术
蒸馏技术是一种将大型模型的知识和推理能力转移到小型模型中的方法。通过蒸馏,小型模型可以在保持高效性的同时,获得与大型模型相近的性能。DeepSeek 的蒸馏模型通过以下步骤实现:
-
教师模型:使用大型模型(如 DeepSeek-R1-70B)的推理能力,提取其在复杂任务(如数学、编程)中的逻辑链生成模式。
-
学生模型:将这些推理能力迁移到小型模型(如 Qwen-1.5B、Llama3-70B)中,通过注意力对齐损失和输出分布匹配,保留关键参数。
-
动态权重剪枝:根据目标场景动态保留关键参数,进一步优化模型性能。
3. DeepSeek-R1-Distill-Qwen-1.5B 模型
DeepSeek-R1-Distill-Qwen-1.5B 是一个经过蒸馏的轻量级模型,具有以下特点:
-
参数量:1.5 亿参数,模型规模小,资源消耗低。
-
推理能力:在数学和逻辑推理任务中表现出色,例如在 AIME 2024 数学竞赛中,通过率达到了 28.9%,显著高于 GPT-4o 和 Claude 3.5。
-
适用场景:适用于轻量级任务,如短文本生成、基础问答等。可以在资源受限的设备上运行。
任务主角介绍
香橙派 AI Pro 20T 是一款高性能的 AI 开发板,专为边缘计算和 AI 应用设计。

以下是其主要特点和功能:
1. 高性能处理器
-
CPU:4核64位处理器,支持高性能计算。
-
AI 处理器:集成 AI 处理器,提供 20TOPS 的 AI 算力,能够有效加速目标识别、图像分类等 AI 应用。
2. 大内存支持
-
运行内存:支持 24GB 运行内存,确保各种复杂应用都能流畅运行。
-
存储扩展:支持 SATA/NVMe SSD 2280 硬盘,增加海量数据存储空间。
3. 丰富的接口
-
视频输出:支持双 HDMI 视频输出,支持 4K 高清输出,还支持一个 MIPI DSI 屏输出。
-
摄像头输入:支持两个 MIPI 接口摄像头输入。
-
网络接口:具有 2 个 PCIe 扩展的 2.5G 以太网口,实现更快的数据传输速度。
-
其他接口:包括 USB 3.0、Type-C、双 HDMI 2.0、双 2.5G 以太网、M.2 插槽等。
4. 操作系统支持
-
支持 Ubuntu 和 OpenEuler 操作系统。
5. 应用场景
-
AI 教学实训:适合 AI 教学和实训,帮助学生和开发者快速上手。
-
智能小车与机械臂:可用于智能小车、机械臂等项目。
-
边缘计算:适用于边缘计算场景,快速处理数据。
-
智能家居与安防:可用于智能家居、智能安防等领域。
6. 性能体验
-
负载能力:能够实时处理 60FPS 的视频,推理一张 640x640 的图像只需 15-20 毫秒。
-
散热效果:配备散热风扇,连续运行 3 小时后,板子的温度依然较低。
-
噪音水平:开机启动时有 6-10 秒左右的较大声音,但平时运行时几乎无声。
7. 开发与部署
-
开发友好:提供丰富的代码参考样例,方便开发者快速上手。
-
烧录系统:支持通过 SD 卡加载预配置好的镜像系统,插入设备后就能直接登录并开始使用。
好了,经过前边对于deepseek和香橙派的介绍,想必大家都已经大概了解了我们这次实操的主角的一些基本信息。那么下面我们进入实操环节:
前期准备
硬件设备
24G20T香橙派AIpro开发板一个、鼠标、键盘、显示屏、网线、电源线

软件环境
| 镜像版本 | CANN版本 | MindSpore版本 | MindSpore NLP版本 |
| ubuntu22.04 | cann 8.0.RC3.alpha002 | 2.4.10 | master |
步骤一、烧录镜像
1.下载镜像
注意,镜像需要到香橙派官网获取:
- Orange Pi AIpro(20T):Orange Pi - Orangepi
进入后可以看到有Ubuntu和openEuler两个镜像环境,本次教程用Ubuntu镜像作为示例:

点击“下载”,进入百度网盘,依次选择“Ubuntu"、"opiaipro_20t_ubuntu22.04_desktop_aarch64_20240924.img.xz",进行下载。

2.烧录镜像
我们事先准备一张至少64G大小的SD卡,将SD卡插入读卡器中,打开镜像烧录软件balenaEtcher如图所示。

选择好镜像文件和SD卡之后,就可以开始烧录了,烧录之后会显示烧录成功。
步骤二、远程连接开发板
我们将SD卡插入到香橙派AIPro的卡槽当中,并启动开发板(开发板事先要连接显示屏、键盘和鼠标,以及一根网线与电脑相连)。
开机之后稍等片刻,显示屏会亮,并提示输入密码(密码为Mind@123),登录后我们回到电脑侧,先打开以太网,修改ip地址为192.168.0.1,并打开WLAN共享设置共享给以太网:

接着我们到香橙派显示屏,输入ifconfig,可以查看到香橙派IP地址,如图所示:

注意,此时ip为随机ip 。
我们再使用MobaXterm(下载链接:MobaXterm Xserver with SSH, telnet, RDP, VNC and X11 - Home Edition)进行远程登录链接

这样,我们就可以远程登录到开发板上了。
首次登录需要输入开发板登录密码(Mind@123),然后回车,即可登录:

登录成功。

步骤三、环境配置
1.CANN版本升级
1.1 删除原有CANN7.0环境
(base) HwHiAiUser@orangepiaipro-20t:~$ su – root
Password:
(base) root@orangepiaipro-20t: ~#
root账户的密码默认为Mind@123,输入的时候不会显示键入的字符。
如果(base)后显示root,例如:(base) root@orangeaipro-20t时,说明已进入root用户下
进入到CANN环境目录下:
如果使用MobaXterm,登录后默认在root文件夹下((base) root@orangepiaipro-20t:~#),需要先进行回退到初始文件夹下,输入 cd ..回退到初始文件夹下:
(base) root@orangepiaipro-20t:~# cd ..
(base) root@orangepiaipro-20t:/# ls
看到有如下输出并且路径变为(base) root@orangepiaipro-20t:/#时再执行下一步:
进入CANN所在的ascend-toolkit路径下:
(base) root@orangepiaipro-20t:/# cd /usr/local/Ascend/ascend-toolkit/
可以看到系统镜像自带的为CANN7.0环境,我们要更换为CANN8.0环境,先将原环境删除

执行删除操作:
(base) root@orangepiaipro-20t:/usr/local/Ascend/ascend-toolkit# rm -rf *

1.2配置CANN8.0环境
1.2.1 Toolkit升级
需要先到昇腾开发者资源里下载.run文件,CANN社区版资源下载文件下载地址:社区版资源下载-资源下载中心-昇腾社区
按照如图所示选择对应版本和软件包下载
再将下载好的Ascend-cann-toolkit_8.0.RC3.alpha002_linux-aarch64.run文件上传到香橙派开发板上:
上传成功后可以在Downloads文件夹下看到该文件:
进入CANN软件包下载目录
(base) root@orangepiaipro: /usr/local/Ascend/ascend-toolkit# cd /home/HwHiAiUser/Downloads
给CANN软件包添加执行权限
(base) root@orangepiaipro: /home/HwHiAiUser/Downloads # chmod +x ./Ascend-cann-toolkit_8.0.RC3.alpha002_linux-aarch64.run
安装CANN软件包
(base) root@orangepiaipro: /home/HwHiAiUser/Downloads # ./Ascend-cann-toolkit_8.0.RC3.alpha002_linux-aarch64.run --install
在看到如下提示时,输入Y,继续执行

安装成功

1.2.2 Kernels升级
二进制算子包Kernels依赖CANN软件包Toolkit,执行升级时,当前环境需已安装配套版本的Toolkit,并使用同一用户安装。
步骤1 打开终端,并切换root用户。
root用户密码:Mind@123。
# 打开开发板的一个终端,运行如下命令
(base) HwHiAiUser@orangepiaipro:~$ su – root
Password:
(base) root@orangepiaipro: ~#
步骤2 执行如下命令,获取开发板NPU型号。
npu-smi info
步骤3 打开昇腾CANN官网访问社区版资源下载地址(社区版资源下载-资源下载中心-昇腾社区),下载与CANN包版本一致,并且匹配NPU型号的kernel包,如下图:

步骤4 进入Kernels包下载目录。
(base) root@orangepiaipro: /usr/local/Ascend/ascend-toolkit# cd /home/HwHiAiUser/Downloads
Orange Pi AI Pro浏览器文件默认下载目录:/home/HwHiAiUser/Downloads
步骤5 给kernels包添加执行权限。
(base) root@orangepiaipro: /home/HwHiAiUser/Downloads# chmod +x ./Ascend-cann-kernels-310b_8.0.RC3.alpha002_linux.run
步骤6 执行以下命令升级软件。
(base) root@orangepiaipro: /home/HwHiAiUser/Downloads#./Ascend-cann-kernels-310b_8.0.RC3.alpha002_linux.run --install
升级完成后,若显示如下信息,则说明软件升级成功:
xxx install success
- xxx表示升级的实际软件包名。
安装升级后的路径(以root用户默认安装升级路径为例):“/usr/local/Ascend/ ascend-toolkit/latest/opp/built-in/op_impl/ai_core/tbe/kernel”。
2.MindSpore安装
我们选择mindspore2.4.10版本安装,同样在Downloads路径下,命令如下:
(base) root@orangepiaipro-20t:~# cd /root/Downloads/
(base) root@orangepiaipro-20t:~/Downloads# pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/2.4.10/MindSpore/unified/aarch64/mindspore-2.4.10-cp39-cp39-linux_aarch64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
也可以自行在昇思官网获取安装命令:昇思MindSpore | 全场景AI框架 | 昇思MindSpore社区官网

3.Mindnlp安装
下载命令:
pip install git+https://github.com/mindspore-lab/mindnlp.git
4.Gradio安装
pip install gradio

四、下载及运行案例
1.下载DeepSeek案例代码
git clone https://github.com/mindspore-courses/orange-pi-mindspore.git
2.执行运行
进入 Online/Deepseek-R1-Disti11-Qwen-1.58 目录,下载Qwen 案例代码 DeepSeek-R1-Distil1-Qwen-1.5B.py,并运行。
cd /home/HwHiAiUser/Downloads/orange-pi-mindspore/Online/17-DeepSeek-R1-Distill-Qwen-1.5B/
python DeepSeek-R1-Distill-Qwen-1.5B.py
当出现127.0.0.1:7860时,表示程序运行成功:

3.案例体验
我们此时再回到香橙派显示屏,打开系统自带的浏览器,在浏览器中打开链接 http://127.0.0.1:7860进入网页交互界面,即可开始使用在OrangePi AIpro(20T)部署的Deepseek-R1-Distill-Qwen-1.5B 模型,界面功能说明:

- 在页面下方的消息输入框中输入您的问题,或选择下方“Examples”中的预设问题。点击右侧的“Submit”按钮后,DeepSeek模型将为您生成回答。
- 点击“undo”按钮,可撤回上一条消息。
- 点击“clear”按钮,将清空聊天框中的所有对话内容。如果出现错误信息也可以clear一下清楚历史记录再次提问。
纠错心得
在刚刚完成demo运行后我发现了一个输出问题,就是在进行长文本输出的过程当中,输出回答到一定长度后模型会输出重复内容,如图所示:

这个在第二天与MindSpore社区工作人员讨论过后,确定是由于部分参数未进行设置,比如惩罚系数的参数设置,原程序设置为None:

需要将generate_kwargs(第34行)中添加repetition_penalty=1.2,即可解决长文本输出重复问题:

再次运行,长文本回答便不再出现重复内容,可以正常输出:

最后,再次感谢MindSpore社区工作人员的热情支持。他们不仅耐心解答了我关于香橙派AI Pro硬件适配和DeepSeek模型部署流程中的各种疑难问题,还通过分享实际案例和优化技巧,让我对香橙派AI Pro的性能优势以及DeepSeek模型的高效部署有了更深入的理解。
昇腾计算产业是基于昇腾系列(HUAWEI Ascend)处理器和基础软件构建的全栈 AI计算基础设施、行业应用及服务,https://devpress.csdn.net/organization/setting/general/146749包括昇腾系列处理器、系列硬件、CANN、AI计算框架、应用使能、开发工具链、管理运维工具、行业应用及服务等全产业链
更多推荐

所有评论(0)