2026 高通 & 瑞莎 AI 开发者日刚在深圳落幕,主题一句话概括——AI 共进,开源新生。现场最吸引嵌入式开发者的不是演讲台,而是 deepin 的体验展位:deepin 25 操作系统已经跑在瑞莎(Radxa)多款开发板上,Dragon Q8B 也带来了最新适配进展。这意味着,国产桌面 Linux 不再只停留在 x86 笔记本里,它正在向 ARM 乃至 RISC-V 的边缘 AI 设备延伸。
瑞莎开发板 + deepin 25:适配到了什么程度
瑞莎近两年在开源硬件圈热度很高,主打高性价比 ARM 板卡,从 Radxa Rock 5B(RK3588S)到搭载高通芯片的 Dragon Q8B,覆盖了从入门到 AI 推理的多个档位。deepin 在展台上展示的适配成果主要包括:
- Rock 5B / 5A 系列:deepin 25 已可完整启动图形桌面,Wayland 渲染正常,GPU 加速通过 Panfrost 开源驱动跑通。
- Dragon Q8B:基于高通 QCS8550 芯片(与骁龙 8 Gen 3 同架构),deepin 团队正在推进 GPU 与 NPU 的上游驱动适配,目前可进入桌面但部分硬件节点仍在调试。
- Radxa OS 与 deepin 的关系:瑞莎官方维护的 Radxa OS 基于 Debian,deepin 25 则走独立发行版路径,两者在内核层面共享大量补丁,开发者可根据需求切换。
对嵌入式开发者来说,关键信息是:deepin 25 不再是"只能看看"的 Demo,而是可以在瑞莎板卡上实际操作、编译、部署的系统。
Dragon Q8B 的 AI 推理潜力
Dragon Q8B 之所以被重点展示,核心在于 QCS8550 芯片内置的 Hexagon NPU,算力约 48 TOPS(INT8)。这颗 NPU 在 Android 手机上已经跑通大量模型,但在 Linux 桌面侧的开放路径仍在建设中。deepin 团队在现场透露的适配方向:
- 通过 Qualcomm AI Engine Direct(QAIDD)SDK 暴露 NPU 推理接口。
- 在 deepin 25 中集成模型管理工具,目标是让开发者用一行命令完成模型下载、量化、部署。
- 与瑞莎合作统一内核补丁,减少开发者自行编译内核的负担。
目前 QAIDD 在 Linux 上的支持仍以 Ubuntu 为主要验证平台,deepin 的适配属于先行探索阶段。如果你想在 Dragon Q8B 上跑 AI 推理,现阶段最稳妥的方式是先用瑞莎官方 Debian 镜像验证流程,再迁移到 deepin。
在瑞莎板卡上部署 deepin 25:实操步骤
以 Rock 5B 为例,以下是从零烧录 deepin 25 到板卡并完成基础 AI 开发环境搭建的完整流程。deepin 官方尚未发布正式的瑞莎镜像,但社区已有基于 deepin 25 rootfs + Rock 5B 内核的可启动组合,这里用开源工具自行构建。
1. 烧录基础系统
先从瑞莎 Wiki 获取 Rock 5B 的最小启动镜像(Debian base),再用 deepin 25 的 rootfs 替换用户态:
# 下载 Rock 5B 最小镜像与 deepin 25 rootfs
wget https://github.com/radxa-rock/rock5b-releases/releases/latest/rock-5b-debian.img.xz
wget https://github.com/deepin-community/deepin-riscv-arm/releases/latest/deepin-25-arm64-rootfs.tar.gz
# 解压并写入 SD 卡(假设 SD 卡为 /dev/sdX,请用 lsblk 确认)
xz -d rock-5b-debian.img.xz
sudo dd if=rock-5b-debian.img of=/dev/sdX bs=4M status=progress
sync
# 挂载 rootfs 分区并替换为 deepin
sudo mkdir -p /mnt/sd-root
sudo mount /dev/sdX2 /mnt/sd-root # 第二分区通常是 rootfs
sudo rm -rf /mnt/sd-root/*
sudo tar -xpf deepin-25-arm64-rootfs.tar.gz -C /mnt/sd-root
# 保留瑞莎内核与设备树(关键!不要删 /lib/modules)
# 确认内核版本匹配
ls /mnt/sd-root/lib/modules/
# 修复 fstab 与 boot 配置
sudo chroot /mnt/sd-root /bin/bash -c \
"echo '/dev/mmcblk1p2 / ext4 defaults 0 1' > /etc/fstab"
sudo umount /mnt/sd-root
注意:
/dev/sdX必须替换为你实际的 SD 卡设备名,写错会覆盖你的硬盘。用lsblk仔细确认。
2. 首次启动与基础配置
插入 SD 卡,上电启动 Rock 5B,通过 HDMI 接显示器或 SSH 登录:
# 通过串口或 SSH 登录后,先更新系统并安装开发工具
sudo apt update && sudo apt upgrade -y
sudo apt install -y build-essential python3-dev python3-pip git cmake
# 安装 Python AI 推理依赖(CPU 侧先验证,NPU 后续接入)
pip3 install --break-system-packages onnxruntime numpy pillow
3. 用 ONNX Runtime 在板卡上跑一个推理验证
在 GPU/NPU 驱动尚未完全就绪时,先用 CPU 侧 ONNX Runtime 验证模型能否正常加载和推理。以下脚本下载一个 MobileNet V2 模型并对一张测试图片做分类:
#!/usr/bin/env python3
"""Rock 5B + deepin 25 上的 ONNX CPU 推理验证脚本"""
import numpy as np
import onnxruntime as ort
from PIL import Image
import urllib.request
import json
# 下载 MobileNet V2 ONNX 模型(约 14MB)
MODEL_URL = "https://github.com/onnx/models/raw/main/validated/vision/classification/mobilenet/model/mobilenetv2-12.onnx"
MODEL_PATH = "mobilenetv2-12.onnx"
urllib.request.urlretrieve(MODEL_URL, MODEL_PATH)
print(f"模型已下载: {MODEL_PATH}")
# 下载 ImageNet 1000 类标签
LABELS_URL = "https://raw.githubusercontent.com/onnx/models/main/validated/vision/classification/mobilenet/model/labels.json"
LABELS_PATH = "labels.json"
urllib.request.urlretrieve(LABELS_URL, LABELS_PATH)
with open(LABELS_PATH) as f:
labels = json.load(f)
# 加载测试图片(用 ONNX 官方示例猫图)
IMG_URL = "https://raw.githubusercontent.com/onnx/models/main/validated/vision/classification/mobilenet/model/cat.png"
IMG_PATH = "test_cat.png"
urllib.request.urlretrieve(IMG_URL, IMG_PATH)
# 预处理:resize → 224x224,归一化到 [0,1],NCHW 格式
img = Image.open(IMG_PATH).resize((224, 224))
img_array = np.array(img, dtype=np.float32).transpose(2, 0, 1) # HWC → CHW
img_array = img_array / 255.0
img_array = np.expand_dims(img_array, axis=0) # 增加 batch 维度
# 创建 ONNX Runtime 会话(CPU 模式)
session = ort.InferenceSession(MODEL_PATH, providers=["CPUExecutionProvider"])
input_name = session.get_inputs()[0].name
# 推理
outputs = session.run(None, {input_name: img_array})
pred = np.argmax(outputs[0])
print(f"推理完成,预测类别索引: {pred}")
print(f"预测类别名称: {labels[pred]}")
print(f"Top-5 概率分布: {np.argsort(outputs[0][0])[-5:][::-1]}")
在 Rock 5B 的 RK3588S 上,CPU 推理 MobileNet V2 单次约 80-120ms(8 核全开),足以验证端侧推理链路通畅。后续 NPU 驱动就绪后,可切换到 RockchipRKNPUExecutionProvider 或 QAIDD 后端,推理速度预计降至 5ms 以内。
从展台到生产:开发者的现实路径
deepin 在瑞莎板卡上的适配进展值得关注,但也要看清当前边界:
| 板卡 | 状态 | 适合做什么 |
|---|---|---|
| Rock 5B / 5A | 桌面可启动,GPU 加速可用 | 日常开发、轻量推理验证、桌面应用测试 |
| Dragon Q8B | 桌面可进入,NPU 驱动调试中 | QAIDD SDK 预研、Hexagon NPU 探索性开发 |
| 其他瑞莎 ARM 板 | 社区适配进行中 | 实验性部署,不建议用于生产 |
给想上手开发者的建议:
- 先选 Rock 5B。它的开源驱动成熟度最高,deepin 25 适配最完整,踩坑成本最低。
- 内核补丁不要自己拼。跟随瑞莎官方内核分支,deepin 社区会同步发布适配补丁,自己拼内核容易掉设备树节点。
- AI 推理先用 CPU 验证逻辑,再追 NPU 加速。NPU 驱动和 SDK 在 Linux 侧迭代很快,但稳定性仍需时间,别让硬件依赖卡住你的算法验证。
- 关注 deepin 社区 GitHub 的 arm64 镜像发布。正式镜像出来后,上面的手动替换 rootfs 步骤就可以跳过,直接 dd 烧录。
deepin 从 x86 桌面走向 ARM 开发板,不是简单的"换个架构编译一下",背后是 GPU 驱动、NPU 接入、桌面渲染管线一连串适配工作。展台上的能跑,和你的项目能跑之间,差的是一份内核补丁和一个验证过的推理链路——现在这两样东西,正在逐步到位。