Ultralytics YOLO27:
Get Started

Axelera AI 导出与部署#

Ultralytics 与 Axelera AI 合作,为 边缘 AI 设备提供高性能、高能效推理。你可以使用 Voyager SDK,将 Ultralytics YOLO 模型直接导出并部署到 Metis® AIPU。

YOLO 的 Axelera AI 边缘部署生态系统

Axelera AI 采用专有数据流架构和存内计算,为边缘端的计算机视觉提供专用硬件加速,功耗较低,性能最高可达 856 TOPS。

选择合适的硬件#

Axelera AI 提供多种外形规格,以满足不同的部署限制。下表可帮助你为 Ultralytics YOLO 部署选择最合适的硬件。

硬件产品系列#

Axelera 硬件产品系列经过优化,可高效运行 Ultralytics YOLO26 及旧版本,提供出色的每瓦 FPS 性能。

加速卡#

这些加速卡可为现有主机设备提供 AI 加速,便于开展存量环境部署。

产品外形规格计算能力性能(INT8)目标应用
Metis PCIe x4PCIe Gen3 x164x Metis AIPU856 TOPS高密度视频分析、智慧城市
Metis PCIe x1PCIe Gen3 x11x Metis AIPU214 TOPS工业 PC、零售排队管理
Metis M.2M.2 2280 M-Key1x Metis AIPU214 TOPS无人机、机器人、便携式医疗设备
Metis M.2 MAXM.2 22801x Metis AIPU214 TOPS需要高级热管理的环境

集成系统#

为提供即用型解决方案,Axelera 与制造商合作,提供预先通过 Metis AIPU 验证的系统。

  • Metis Compute Board:独立边缘设备,配备 Metis AIPU 和 Rockchip RK3588 ARM CPU。
  • 工作站:来自 Dell(Precision 3460XE)和 Lenovo(ThinkStation P360 Ultra)的企业级塔式工作站。
  • 工业 PC:Advantech 和 Aetina 提供的坚固型系统,专为制造自动化而设计。

支持的任务#

不支持深度估计:深度预测头会输出 Metis AIPU 编译器无法降级处理的算子。Ultralytics export 也不支持 YOLO26 实例分割,但仍可按照下文说明,通过 Voyager SDK 部署。YOLO26 语义分割受支持。

任务YOLOv8YOLO11YOLO26
检测✅✅✅
分割✅✅❌
语义分割❌❌✅
深度估计❌❌❌
分类✅✅✅
姿态✅✅✅
OBB✅✅✅
注意

目前无法通过 Ultralytics export 命令支持 YOLO26 实例分割。需要 yolo26-seg 的用户可以使用 deploy.py,通过 Voyager SDK 部署,以此作为用户空间变通方案。未来版本将加入原生编译器支持。

安装#

平台要求

导出为 Axelera 格式需要满足以下条件:

  • 操作系统:仅限 Linux(建议使用 Ubuntu 22.04/24.04)
  • 硬件:Axelera AI 加速器(Metis 设备)
  • Python:版本 3.10、3.11、3.12 和 3.13
  • PyTorch:torch>=2.8,<2.13
  • Voyager SDK:1.8.0;导出时会安装此版本的开发套件,推理时会安装此版本的运行时
  • Metis 内核驱动:metis-dkms 1.6.2 或更高版本,需与 pip 分开安装
  • 系统依赖项:sudo apt install libgl1(OpenCV 需要此依赖项,pip 不会安装它)

安装 Ultralytics#

pip install ultralytics

如需详细说明,请参阅我们的 Ultralytics 安装指南。如果遇到问题,请查阅我们的常见问题指南。

安装 Axelera 驱动#

  1. 添加 Axelera 软件源密钥:

    sudo sh -c "curl -fsSL https://software.axelera.ai/artifactory/api/security/keypair/axelera/public | gpg --dearmor -o /etc/apt/keyrings/axelera.gpg"
  2. 将软件源添加到 apt:

    根据所用操作系统,从下方选择合适的代码片段。

    # Ubuntu 22.04
    sudo sh -c "echo 'deb [signed-by=/etc/apt/keyrings/axelera.gpg] https://software.axelera.ai/artifactory/axelera-apt-source ubuntu22 main' > /etc/apt/sources.list.d/axelera.list"
    # Ubuntu 24.04
    sudo sh -c "echo 'deb [signed-by=/etc/apt/keyrings/axelera.gpg] https://software.axelera.ai/artifactory/axelera-apt-source ubuntu24 main' > /etc/apt/sources.list.d/axelera.list"
  3. 安装并加载驱动。SDK 1.8 需要 metis-dkms 1.6.2 或更高版本,因此此处会安装最新版本:

    sudo apt update
    sudo apt install -y metis-dkms
    sudo modprobe metis
保持内核驱动与 SDK 版本一致

内核驱动与 Python SDK 软件包分开安装,因此升级 SDK 后,你还必须将驱动更新到该 SDK 要求的最低版本——SDK 1.8 要求 1.6.2。安装时不会检查这一点;如果驱动版本低于最低要求,设备将无法使用:axdevice 会报告所需版本,并在打开设备时失败。

[libaxldev.c:285] Found kernel driver version 1.5.5, but at least version 1.6.2 is required. Please update the kernel driver
ERROR: AXR_ERROR_CONNECTION_ERROR: Failed to open device metis-0:4:0

另请参阅第 3 步:安装 Metis 内核驱动。如果你已在 Ubuntu 上运行较早版本的 SDK,请更新驱动并重新加载内核模块(无需重启):

sudo apt update
sudo apt install -y metis-dkms
sudo rmmod metis
sudo modprobe metis

然后重新运行 axdevice,确认已检测到设备。

首次运行时会自动下载 SDK

首次使用 Axelera 模型运行 yolo export format=axelera 或 yolo predict 时,会自动下载并安装 Axelera SDK 软件包。根据网络连接速度,这可能需要几分钟;下载过程中不会显示进度。若要提前手动安装:

pip install axelera-devkit==1.8.0 --extra-index-url https://software.axelera.ai/artifactory/api/pypi/axelera-pypi/simple
pip install axelera-rt==1.8.0 --extra-index-url https://software.axelera.ai/artifactory/api/pypi/axelera-pypi/simple
升级 SDK 会导致现有导出模型失效

SDK 1.8 提高了已编译 .axm 模型格式的版本,因此,使用较早版本 SDK 生成的 _axelera_model 目录在加载时会被拒绝。升级后请重新导出每个模型:

Error: Unsupported model version: 4.0, expected at least 5.0
Please re-deploy or re-download the model.

将 YOLO 模型导出为 Axelera 格式#

Axelera 格式支持 导出、预测和验证模式。推理和验证均在 Axelera Metis AIPU 硬件上运行。导出模型后,加载导出的模型即可运行推理或验证其准确率。

导出
from ultralytics import YOLO

# 加载 YOLO26 模型
model = YOLO("yolo26n.pt")

# 将模型导出为 Axelera 格式
model.export(format="axelera")  # creates 'yolo26n_axelera_model'
预测
from ultralytics import YOLO

# 加载导出的 Axelera 模型
model = YOLO("yolo26n_axelera_model")

# 运行推理
results = model("https://ultralytics.com/images/bus.jpg")
验证
from ultralytics import YOLO

# 加载导出的 Axelera 模型
model = YOLO("yolo26n_axelera_model")

# 在 COCO8 数据集上验证准确率
metrics = model.val(data="coco8.yaml")

导出参数#

参数类型默认值说明
formatstr'axelera'适用于 Axelera Metis AIPU 硬件的目标格式。
imgszint 或 tuple640模型输入的图像尺寸。
batch*int1指定导出模型的批量推理大小,或导出模型在 predict 模式下可同时处理的最大图像数。
quantizeint 或 str8/自动量化精度。Axelera AIPU 必须使用 8(INT8),并会自动启用该设置。此设置取代了已弃用的 half/int8 标志。请参阅 INT8 量化。
datastrNone校准数据集 YAML;分类任务则使用数据集目录或内置数据集名称。如果未指定,Ultralytics 会选择特定任务的校准数据集。
fractionfloat、int 或 list1.0校准子集,可以按比例、图像数量或 [train, val, test] 比例/数量指定。包含两个值的列表会保留完整的 test,而 0 会跳过它(建议使用 100-400 张图像)。
devicestrNone导出设备:GPU(device=0)或 CPU(device=cpu)。

* 使用 batch>1 进行推理需要 Voyager SDK 1.8.0 或更高版本;模型按单张图像编译。

如需查看所有导出选项,请参阅导出模式文档。

输出结构#

yolo26n_axelera_model/
├── yolo26n.axm                  # Axelera model file
├── compiler_config_final.toml  # Compiler configuration used for the build
└── metadata.yaml               # Model metadata (classes, image size, etc.)

Axelera AI 基准测试#

Metis AIPU 在最大化吞吐量的同时,将能耗降至最低。

模型Metis PCIe FPS(每秒帧数)Metis M.2 FPS(每秒帧数)
YOLOv8n847771
YOLO11n746574
YOLO26n648.6484.9

基准测试数据基于 Axelera AI 提供的数据。实际 FPS 取决于模型大小、批处理方式和输入分辨率。

这些是主机吞吐量数据,由 模型库 使用 Voyager SDK 的流式处理管道对 720p 视频文件进行测量。单次 predict 调用报告的是每张图像的延迟,这是另一种指标。

实际应用#

Ultralytics YOLO 在 Axelera 硬件上可支持高级边缘计算解决方案:

  1. 使用 Ultralytics 训练模式训练模型
  2. 使用 model.export(format="axelera") 导出为 Axelera 格式
  3. 使用 yolo val 验证精度,确认量化损失最小
  4. 使用 yolo predict 预测以进行定性验证
  5. 部署到高性能端到端管道中,无需依赖 PyTorch — 查看 Voyager SDK 上的 YOLO 示例,了解如何使用 axelera-rt 构建可组合的 Python 管道

设备健康检查#

确认 Axelera 设备运行正常:

# if axdevice cannot be found, please run at least one inference (see above) to ensure the required packages are installed
axdevice

如需详细诊断信息,请参阅 AxDevice 文档。

最高性能#

模型针对单张图像进行编译。将多张图像传递给 Predict 时,图像会经由 Axelera 调度器处理(Voyager SDK 1.8 或更高版本),因此 batch>1 可以正常运行;不过,在单台设备上测得的端到端性能并不比 batch=1 更快:

yolo predict model=yolo26n_axelera_model source=path/to/images batch=8

对于需要最大吞吐量的生产环境,Axelera Voyager SDK 提供:

  • 可让多帧同时处于处理中状态的流式推理管道
  • 将一个模型编译到多个核心上
  • 通过切片推理支持更高分辨率的摄像头

请查看 model-zoo 了解 FPS 基准测试,或联系 Axelera 获取生产环境支持。

已知问题#

已知限制
  • M.2 电源限制:由于电源供应受限,大型或超大型模型在 M.2 加速器上可能会遇到运行时错误。

如需支持,请访问 Axelera 社区。

常见问题#

  • Voyager SDK 支持导出 YOLOv8、YOLO11 和 YOLO26 模型。请参阅支持的任务,了解各模型支持的任务。

  • 可以。使用 Ultralytics 训练模式训练的任何模型,只要使用受支持的层和运算,就可以导出为 Axelera 格式。

  • Axelera 的 Voyager SDK 会针对混合精度 AIPU 架构自动量化模型。对于大多数目标检测任务,性能提升(更高 FPS、更低功耗)远远超过对 mAP 的轻微影响。量化耗时从几秒到数小时不等,具体取决于模型大小。导出后运行 yolo val 以验证精度。

  • 我们建议使用 100 到 400 张图像。超过 400 张不会带来额外收益,还会延长量化时间。你可以尝试使用 100、200 和 400 张图像,找到最佳平衡点。

  • SDK、驱动程序和编译器工具可通过 Axelera 开发者门户获取。

评论