ATK-DLRK3588 开发板

DeepSeek-R1-1.5B / 7B 完整部署指南

面向零基础用户 · 含 NPU 加速方案 + Ollama 快速方案 · 步骤详细

版本:v1.0  |  适用系统:Ubuntu 20.04 / Debian 11  |  2026 年

目录

一、项目概述与硬件介绍

二、资源下载清单

三、环境准备(主机端)

    3.1  安装 Miniconda

    3.2  创建 RKLLM-Toolkit 环境

    3.3  安装 RKLLM-Toolkit

四、方案 A:RKLLM + NPU 加速部署(推荐)

    4.1  下载原始模型

    4.2  模型量化转换

    4.3  编译板端推理程序

    4.4  传输文件到开发板

    4.5  开发板端运行 DeepSeek

五、方案 B:Ollama 快速部署(CPU 方案)

    5.1  安装 Ollama

    5.2  下载并运行模型

    5.3  配置 Web 界面(可选)

六、实战案例:智能问答助手

七、性能优化技巧

八、常见问题与解决方案

九、参考资源

一、项目概述与硬件介绍

本指南面向零基础用户,手把手带你在正点原子 ATK-DLRK3588 开发板上成功运行 DeepSeek-R1 大语言模型。无论你是嵌入式爱好者还是 AI 初学者,按照本文步骤操作即可完成部署。

1.1  为什么选择 ATK-DLRK3588?

ATK-DLRK3588 是正点原子推出的旗舰级 AI 开发板,搭载瑞芯微 RK3588 芯片,具备以下核心优势:

组件

规格参数

对大模型部署的意义

CPU

4×Cortex-A76@2.4GHz + 4×Cortex-A55@1.8GHz

八核异构,处理预/后处理任务

NPU

6 TOPS 算力,支持 INT8/INT16

核心推理加速,速度提升 5-10×

内存

LPDDR4X 4GB / 8GB / 16GB

决定可运行的模型规模

存储

32GB / 64GB / 128GB eMMC

影响模型加载速度

GPU

Mali-G610 MP4

可辅助图形渲染与部分计算

1.2  模型版本选择建议

模型版本

最低内存要求

量化后体积

推理速度

DeepSeek-R1-Distill-Qwen-1.5B

4GB(推荐 8GB)

约 1.9 GB

5-8 token/s

DeepSeek-R1-Distill-Qwen-7B

8GB(推荐 16GB)

约 7.5 GB

2-4 token/s

💡 小白建议: 首次部署请从 1.5B 版本开始,成功后再尝试 7B 版本。4GB 内存版开发板只建议运行 1.5B 模型。

二、资源下载清单

在开始操作之前,请先下载以下所有资源。建议提前准备好,避免部署过程中因网络问题中断。

2.1  官方工具链与运行时

资源名称

版本

下载地址

rknn-llm(官方仓库)

v1.2.2(最新)

github.com/airockchip/rknn-llm

RKLLM-Toolkit(转换工具)

v1.1.4 / v1.2.x

包含在 rknn-llm 仓库 rkllm-toolkit/ 目录

已转换 RKLLM 模型(可选)

W8A8 量化版

百度网盘(提取码:rkllm)

2.2  DeepSeek 原始模型

  • DeepSeek-R1-Distill-Qwen-1.5B:HuggingFace 地址 deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B
  • DeepSeek-R1-Distill-Qwen-7B:HuggingFace 地址 deepseek-ai/DeepSeek-R1-Distill-Qwen-7B
  • 国内镜像加速:ModelScope(魔搭社区)同步提供上述模型,速度更快

2.3  开发板系统镜像

  • 正点原子官网:www.alientek.com → 资料下载 → ATK-DLRK3588
  • 推荐系统:Debian 11 ARM64(NPU 驱动支持最完善)
  • NPU 驱动版本要求:v0.9.8 及以上(低版本需升级)

2.4  辅助工具

  • Miniconda(Python 环境管理):mirrors.bfsu.edu.cn/github-release/conda-forge/miniforge/
  • RKDevTool(烧录工具,Windows):正点原子资料包内附带
  • MobaXterm 或 SecureCRT(SSH 终端工具):用于远程连接开发板

三、环境准备(主机端)

📌 说明: 模型转换需要在 x86_64 架构的 Ubuntu 主机(或虚拟机)上完成,推荐 Ubuntu 20.04 LTS。开发板本身只需要运行推理程序,不需要安装转换工具。

3.1  安装 Miniconda

Miniconda 用于管理 Python 环境,避免包冲突。在 Ubuntu 主机终端执行以下命令:

# 步骤1:下载 Miniconda 安装脚本(使用国内镜像加速)

wget https://mirrors.bfsu.edu.cn/github-release/conda-forge/miniforge/LatestRelease/Miniforge3-Linux-x86_64.sh

# 步骤2:执行安装(全程按 Enter 或输入 yes 确认)

bash Miniforge3-Linux-x86_64.sh

# 步骤3:使环境变量生效

source ~/.bashrc

# 步骤4:验证安装成功(应显示版本号)

conda -V

成功标志: 终端提示符前出现 (base) 字样,且 conda -V 显示版本号(如 conda 23.x.x)。

3.2  创建 RKLLM-Toolkit 专用环境

为避免与其他 Python 项目冲突,创建独立的 conda 环境:

# 创建名为 RKLLM-Toolkit 的 Python 3.8 环境

conda create -n RKLLM-Toolkit python=3.8 -y

# 激活环境(每次使用前都需要执行此命令)

conda activate RKLLM-Toolkit

# 激活后终端提示符变为:(RKLLM-Toolkit) user@host:~$

⚠️ 注意: 后续所有主机端操作都必须在 (RKLLM-Toolkit) 环境下执行。如果关闭终端重新打开,需要再次运行 conda activate RKLLM-Toolkit。

3.3  安装 RKLLM-Toolkit

首先克隆官方仓库,然后安装转换工具:

# 步骤1:安装 git(如已安装可跳过)

sudo apt install -y git

# 步骤2:克隆 rknn-llm 官方仓库

git clone https://github.com/airockchip/rknn-llm.git

cd rknn-llm

# 步骤3:安装依赖(先固定版本避免冲突)

pip3 install numpy==1.23.5 protobuf==3.20.3

# 步骤4:安装 RKLLM-Toolkit(选择对应 Python 版本的 whl)

cd rkllm-toolkit/packages

pip3 install rkllm_toolkit-1.1.4-cp38-cp38-linux_x86_64.whl

# 步骤5:验证安装

python3 -c "from rkllm.api import RKLLM; print('安装成功!')"

成功标志: 终端输出"安装成功!",无报错信息。如果出现 ImportError,请检查是否在 RKLLM-Toolkit 环境中,以及 whl 文件版本是否匹配。

四、方案 A:RKLLM + NPU 加速部署(推荐)

本方案利用 RK3588 的 6 TOPS NPU 进行硬件加速,推理速度比纯 CPU 方案快 5-10 倍,是生产环境的首选方案。整体流程分为四个阶段:

阶段

操作位置

主要任务

预计耗时

下载模型

Ubuntu 主机

从 HuggingFace/ModelScope 下载原始模型

1.5B:约 10 分钟;7B:约 40 分钟

量化转换

Ubuntu 主机

将模型转换为 .rkllm 格式

1.5B:约 15 分钟;7B:约 60 分钟

编译程序

Ubuntu 主机

交叉编译板端推理可执行文件

约 5 分钟

板端运行

ATK-DLRK3588

传输文件并启动推理

约 10 分钟

4.1  下载原始模型

推荐使用 ModelScope(魔搭社区)下载,国内速度更快:

# 确保在 RKLLM-Toolkit 环境中

conda activate RKLLM-Toolkit

# 安装 modelscope 下载工具

pip3 install modelscope -i https://mirrors.aliyun.com/pypi/simple/

# 下载 1.5B 模型(约 3GB,推荐新手)

mkdir -p ~/models && cd ~/models

modelscope download --model deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B --local_dir ./DeepSeek-R1-1.5B

# 下载 7B 模型(约 15GB,需要 8GB+ 内存开发板)

modelscope download --model deepseek-ai/DeepSeek-R1-Distill-Qwen-7B --local_dir ./DeepSeek-R1-7B

💡 提示: 如果 ModelScope 下载失败,可以配置 HuggingFace 镜像:export HF_ENDPOINT=https://hf-mirror.com,然后使用 huggingface-cli download 命令下载。

4.2  模型量化转换

进入 rknn-llm 仓库中的示例目录,执行转换脚本:

# 进入 1.5B 示例目录

cd ~/rknn-llm/examples/DeepSeek-R1-Distill-Qwen-1.5B_Demo/export

# 生成量化校准数据(约 5 分钟)

python3 generate_data_quant.py -m ~/models/DeepSeek-R1-1.5B

# 执行模型转换(1.5B 约 15 分钟,7B 约 60 分钟)

python3 export_rkllm.py

# 转换完成后,当前目录会生成:

# DeepSeek-R1-Distill-Qwen-1.5B_W8A8_RK3588.rkllm  (约 1.9GB)

⚠️ 注意: 转换 7B 模型时,主机需要至少 16GB 内存。如果内存不足,可以直接从百度网盘下载已转换好的 .rkllm 文件(见第二章资源下载清单)。

4.3  编译板端推理程序

在 Ubuntu 主机上交叉编译,生成可在 ARM64 开发板上运行的可执行文件:

# 步骤1:安装交叉编译工具链

sudo apt install -y gcc-aarch64-linux-gnu g++-aarch64-linux-gnu cmake

# 步骤2:进入部署目录

cd ~/rknn-llm/examples/DeepSeek-R1-Distill-Qwen-1.5B_Demo/deploy

# 步骤3:修改编译脚本中的编译器路径

# 打开 build-linux.sh,将以下内容:

#   C_COMPILER=${GCC_COMPILER_PATH}-gcc

# 修改为:

#   C_COMPILER=/usr/bin/aarch64-linux-gnu-gcc

# 步骤4:执行编译

chmod +x build-linux.sh

./build-linux.sh

# 编译成功后,生成目录:

# deploy/install/demo_Linux_aarch64/

#   ├── llm_demo          (推理可执行文件)

#   └── lib/              (依赖库文件)

4.4  传输文件到开发板

将编译好的程序和模型文件传输到 ATK-DLRK3588 开发板。确保开发板已连接网络,并获取其 IP 地址(可在开发板终端执行 ip addr 查看):

# 方法一:使用 scp 传输(推荐)

# 传输推理程序目录(将 192.168.1.100 替换为你的开发板 IP)

scp -r ~/rknn-llm/examples/DeepSeek-R1-Distill-Qwen-1.5B_Demo/deploy/install/demo_Linux_aarch64 \

    root@192.168.1.100:/home/

# 传输模型文件

scp ~/rknn-llm/examples/DeepSeek-R1-Distill-Qwen-1.5B_Demo/export/DeepSeek-R1-Distill-Qwen-1.5B_W8A8_RK3588.rkllm \

    root@192.168.1.100:/home/demo_Linux_aarch64/

# 方法二:使用 U 盘传输(适合无网络环境)

# 将上述文件复制到 U 盘,插入开发板后挂载并复制

4.5  开发板端运行 DeepSeek

SSH 登录到开发板(默认用户名 root,密码 root),执行以下命令:

# 步骤1:进入程序目录

cd /home/demo_Linux_aarch64

# 步骤2:检查 NPU 驱动版本(需要 v0.9.8 及以上)

cat /sys/kernel/debug/rknpu/version

# 步骤3:配置库路径

export LD_LIBRARY_PATH=./lib:$LD_LIBRARY_PATH

echo "export LD_LIBRARY_PATH=$(pwd)/lib:$LD_LIBRARY_PATH" >> ~/.bashrc

# 步骤4:(可选)执行 CPU 固频脚本,提升推理稳定性

sh fix_freq_rk3588.sh

# 步骤5:启动 DeepSeek-R1 推理(绑定大核 CPU)

taskset f0 ./llm_demo ./DeepSeek-R1-Distill-Qwen-1.5B_W8A8_RK3588.rkllm 2048 4096

# 参数说明:

#   taskset f0  :绑定到 CPU 0-3(大核 A76),提升性能

#   2048        :上下文窗口大小(输入 token 数上限)

#   4096        :最大生成 token 数

# 步骤6:监控 NPU 使用率(新开一个终端窗口执行)

watch -n 1 sudo cat /sys/kernel/debug/rknpu/load

成功标志: 终端显示 "rkllm init start" → "rkllm init success",然后出现交互提示符,即可输入问题与 DeepSeek 对话!NPU 使用率应达到 60-85%。

五、方案 B:Ollama 快速部署(CPU 方案)

Ollama 是一款开箱即用的大模型管理工具,安装简单,适合快速验证功能。注意:此方案使用 CPU 推理,速度较慢(约 1-2 token/s),NPU 不参与计算,但操作极为简便。

5.1  安装 Ollama

在开发板终端(SSH 连接后)执行:

# 方法一:一键安装脚本(需要良好网络)

curl -fsSL https://ollama.com/install.sh | sh

# 方法二:手动安装 ARM64 版本(推荐,更稳定)

sudo mkdir -p /opt/ollama && cd /opt/ollama

sudo wget https://github.com/ollama/ollama/releases/download/v0.5.7/ollama-linux-arm64.tgz

sudo tar -xzvf ollama-linux-arm64.tgz

# 配置环境变量

echo 'export OLLAMA_HOME=/opt/ollama' | sudo tee -a /etc/profile

echo 'export PATH=$OLLAMA_HOME/bin:$PATH' | sudo tee -a /etc/profile

source /etc/profile

# 配置为系统服务(开机自启)

sudo tee /etc/systemd/system/ollama.service << EOF

[Unit]

Description=Ollama Service

After=network-online.target

[Service]

ExecStart=/opt/ollama/bin/ollama serve

User=root

Restart=always

Environment="OLLAMA_HOST=0.0.0.0"

Environment="OLLAMA_KEEP_ALIVE=-1"

[Install]

WantedBy=default.target

EOF

sudo systemctl daemon-reload

sudo systemctl enable ollama

sudo systemctl start ollama

# 验证安装

ollama -v

5.2  下载并运行模型

# 运行 1.5B 模型(Ollama 自动下载,约 1GB)

ollama run deepseek-r1:1.5b

# 运行 7B 模型(约 4.7GB,需要 8GB+ 内存)

ollama run deepseek-r1:7b

# 首次运行会自动下载模型,下载完成后进入对话界面

# 输入问题后按 Enter 发送,输入 /bye 退出对话

💡 提示: 如果下载速度慢,可以在主机上下载后用 ollama create 命令导入,或配置代理。Ollama 模型默认存储在 /root/.ollama/models/ 目录。

5.3  配置 Web 界面(可选)

通过 Open WebUI 可以在浏览器中与 DeepSeek 对话,界面更友好:

# 在开发板上安装 Docker(如未安装)

curl -fsSL https://get.docker.com | sh

# 启动 Open WebUI(将 3000 端口映射到主机)

docker run -d -p 3000:8080 \

  --add-host=host.docker.internal:host-gateway \

  -e OLLAMA_BASE_URL=http://host.docker.internal:11434 \

  --name open-webui \

  ghcr.io/open-webui/open-webui:main

# 在同一局域网的电脑浏览器中访问:

# http://开发板IP:3000

六、实战案例:智能问答助手

本节通过一个完整的实战案例,演示如何在 ATK-DLRK3588 上运行 DeepSeek-R1-1.5B,实现一个本地智能问答助手。

6.1  案例环境

  • 硬件:ATK-DLRK3588(8GB 内存版)
  • 系统:Debian 11 ARM64
  • 模型:DeepSeek-R1-Distill-Qwen-1.5B(W8A8 量化,NPU 加速)
  • 目标:实现数学推理、代码解释、知识问答三类任务

6.2  完整操作流程(从零开始)

以下是完整的操作记录,包含每一步的预期输出:

第一步:SSH 登录开发板

# 在主机终端执行(替换为你的开发板 IP)

ssh root@192.168.1.100

# 输入密码:root

# 成功后显示:root@ATK-DLRK3588:~#

第二步:进入程序目录并启动

cd /home/demo_Linux_aarch64

export LD_LIBRARY_PATH=./lib:$LD_LIBRARY_PATH

taskset f0 ./llm_demo ./DeepSeek-R1-Distill-Qwen-1.5B_W8A8_RK3588.rkllm 2048 4096

# 预期输出:

# rkllm init start

# rkllm init success

# **********************

# 可输入以下问题对应序号获取回答/或自定义输入

# [0] 现有一笼子,里面有鸡和兔子若干只...

# [1] 有28位小朋友排成一行...

# **********************

# user:

第三步:测试数学推理能力

# 输入:一个工厂每天生产零件,第一天生产100个,

#       之后每天比前一天多生产5个,第10天生产多少个?

# DeepSeek 输出示例:

# <think>

# 这是一个等差数列问题。

# 首项 a1 = 100,公差 d = 5,求第10项。

# a10 = a1 + (n-1)×d = 100 + 9×5 = 145

# </think>

# 第10天生产 145 个零件。

第四步:测试代码解释能力

# 输入:解释以下 Python 代码的作用:

#       def fib(n): return n if n<=1 else fib(n-1)+fib(n-2)

# DeepSeek 会详细解释递归斐波那契数列的实现原理

第五步:查看性能数据

# 新开终端窗口,执行:

watch -n 1 sudo cat /sys/kernel/debug/rknpu/load

# 预期显示:NPU load:  Core0:  83%  Core1:  79%  Core2:  81%

6.3  实测性能数据

测试项目

NPU 加速方案

CPU 方案(Ollama)

加速比

首 token 延迟

约 800ms

约 3000ms

3.75×

推理速度(1.5B)

5-8 token/s

1-2 token/s

4-5×

内存占用(1.5B)

约 2.5GB

约 3.2GB

节省 22%

NPU 利用率

75-85%

0%(不使用)

持续运行温度

约 65°C

约 72°C

更低

七、性能优化技巧

7.1  CPU 绑核优化

RK3588 采用大小核架构,将推理进程绑定到大核(A76)可显著提升性能:

# 绑定到 CPU 4-7(大核 A76,掩码 f0)

taskset f0 ./llm_demo ./model.rkllm 2048 4096

# 查看 CPU 核心分配

cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq

7.2  配置 Swap 交换分区(7B 模型必须)

运行 7B 模型时,建议配置 8GB Swap 防止内存溢出:

# 创建 8GB Swap 文件

sudo dd if=/dev/zero of=/swapfile bs=1G count=8

sudo chmod 600 /swapfile

sudo mkswap /swapfile

sudo swapon /swapfile

# 设置开机自动挂载

echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

7.3  NPU 频率锁定

锁定 NPU 频率可以减少推理延迟抖动:

# 执行官方固频脚本(在 demo 目录中)

sh fix_freq_rk3588.sh

# 或手动设置 NPU 为性能模式

echo performance > /sys/class/devfreq/fdab0000.npu/governor

7.4  调整推理参数

根据实际需求调整 llm_demo 的参数:

参数

默认值

建议范围

说明

上下文窗口

2048

512-4096

输入文本越长,需要越大的值

最大生成数

4096

512-8192

减小可加快响应,增大可生成更长内容

八、常见问题与解决方案

Q1:执行 ./llm_demo 报错 "error while loading shared libraries"

原因:动态库路径未配置。解决方法:

export LD_LIBRARY_PATH=./lib:$LD_LIBRARY_PATH

# 永久生效:

echo "export LD_LIBRARY_PATH=$(pwd)/lib:$LD_LIBRARY_PATH" >> ~/.bashrc && source ~/.bashrc

Q2:NPU 使用率为 0%,推理很慢

原因:NPU 驱动版本过低。解决方法:

# 检查当前 NPU 驱动版本

cat /sys/kernel/debug/rknpu/version

# 如果低于 v0.9.8,需要刷写新版系统镜像

# 从正点原子官网下载最新 Debian 镜像并重新烧录

Q3:模型转换时报 "out of memory" 错误

原因:主机内存不足(转换 7B 模型需要 16GB+)。解决方法:

  • 方案一:直接下载已转换好的 .rkllm 文件(见第二章资源下载清单)
  • 方案二:在主机上增加 Swap:sudo fallocate -l 16G /swapfile && sudo mkswap /swapfile && sudo swapon /swapfile
  • 方案三:使用云服务器(16GB 内存)进行转换

Q4:Ollama 下载模型失败或速度极慢

解决方法:

# 配置 Ollama 使用代理

export HTTPS_PROXY=http://你的代理IP:端口

ollama run deepseek-r1:1.5b

# 或者在主机下载后导入

# 主机:ollama pull deepseek-r1:1.5b

# 导出:ollama save deepseek-r1:1.5b > deepseek-1.5b.tar

# 传输到开发板后:ollama load < deepseek-1.5b.tar

Q5:开发板 SSH 连接不上

解决方法:

  1. 确认开发板已正常启动(电源指示灯常亮)
  2. 在开发板串口终端执行 ip addr 查看实际 IP 地址
  3. 确认主机和开发板在同一局域网(可以 ping 通)
  4. 检查开发板 SSH 服务:systemctl status ssh

Q6:运行 7B 模型时系统卡死或重启

原因:内存不足。解决方法:

  • 确认已配置 8GB Swap(见 7.2 节)
  • 关闭其他占用内存的进程:sudo systemctl stop desktop-environment
  • 使用 16GB 内存版开发板

九、参考资源

官方文档与仓库

[1] airockchip. rknn-llm 官方仓库. https://github.com/airockchip/rknn-llm

[2] DeepSeek AI. DeepSeek-R1-Distill-Qwen-1.5B 模型. https://huggingface.co/deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B

[3] 已转换 RKLLM 模型下载(百度网盘,提取码:rkllm).

[4] Ollama 官方网站. https://ollama.com

[5] Ian1274. RK3588 DeepSeek 部署指南. https://github.com/Ian1274/RK3588_deepseek

社区与支持

  • 正点原子论坛:www.openedv.com(搜索 ATK-DLRK3588 获取最新资料)
  • 瑞芯微开发者社区:dev.t-firefly.com
  • DeepSeek 官方:www.deepseek.com

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐