Экспорт и развертывание в Axelera AI

Ultralytics сотрудничает с Axelera AI, чтобы обеспечить высокопроизводительный и энергоэффективный инференс на устройствах Edge AI. Экспортируй и разворачивай модели Ultralytics YOLO напрямую на Metis® AIPU с помощью Voyager SDK.

Экосистема развертывания Axelera AI edge для YOLO

Axelera AI предоставляет выделенное аппаратное ускорение для компьютерного зрения на периферии, используя проприетарную архитектуру потока данных и вычисления в памяти для обеспечения производительности до 856 TOPS при низком энергопотреблении.

Выбор подходящего оборудования

Axelera AI предлагает различные форм-факторы для соответствия разным ограничениям развертывания. Приведенная ниже таблица поможет определить оптимальное оборудование для твоего развертывания Ultralytics YOLO.

graph TD
    A[Start: Select Deployment Target] --> B{Device Type?}
    B -->|Edge Server / Workstation| C{Throughput Needs?}
    B -->|Embedded / Robotics| D{Space Constraints?}
    B -->|Standalone / R&D| E[Dev Kits & Systems]

    C -->|Max Density <br> 30+ Streams| F[**Metis PCIe x4**<br>856 TOPS]
    C -->|Standard PC <br> Low Profile| G[**Metis PCIe x1**<br>214 TOPS]

    D -->|Drones & Handhelds| H[**Metis M.2**<br>2280 M-Key]
    D -->|High Performance Embedded| I[**Metis M.2 MAX**<br>Extended Thermal]

    E -->|ARM-based All-in-One| J[**Metis Compute Board**<br>RK3588 + AIPU]
    E -->|Prototyping| K[**Arduino Portenta x8**<br>Integration Kit]

    click F "https://store.axelera.ai/"
    click G "https://store.axelera.ai/"
    click H "https://store.axelera.ai/"
    click J "https://store.axelera.ai/"

Портфолио оборудования

Линейка оборудования Axelera оптимизирована для запуска Ultralytics YOLO26 и устаревших версий с высокой эффективностью кадров в секунду на ватт.

Карты-ускорители

Эти карты обеспечивают ускорение ИИ в существующих хост-устройствах, облегчая развертывание на устаревшей инфраструктуре.

ПродуктФорм-факторВычисленияПроизводительность (INT8)Целевое приложение
Metis PCIe x4PCIe Gen3 x164x Metis AIPU856 TOPSВысокоплотная видеоаналитика, умные города
Metis PCIe x1PCIe Gen3 x11x Metis AIPU214 TOPSПромышленные ПК, розничное управление очередями
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 с ARM-процессором Rockchip RK3588.
  • Рабочие станции: Корпоративные башни от Dell (Precision 3460XE) и Lenovo (ThinkStation P360 Ultra).
  • Промышленные ПК: Защищенные системы от Advantech и Aetina, разработанные для автоматизации производства.

Поддерживаемые задачи

Следующие задачи поддерживаются в моделях YOLOv8, YOLO11 и YOLO26.

Примечание

Сегментация YOLO26 пока не поддерживается через команду export в Ultralytics. Пользователям, которым нужна YOLO26-seg, можно развернуть её через Voyager SDK с использованием deploy.py, что предоставляет обходное решение на уровне пользователя. Нативная поддержка компилятора будет добавлена в будущем релизе.

Установка

Требования к платформе

Экспорт в формат Axelera требует:

  • Операционная система: Только Linux (рекомендуется Ubuntu 22.04/24.04)
  • Оборудование: Ускоритель Axelera AI (устройства Metis)
  • Python: Версии 3.10, 3.11 и 3.12
  • Системная зависимость: 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 и загрузи драйвер:

    sudo apt update
    sudo apt install -y metis-dkms=1.4.16
    sudo modprobe metis
Первый запуск автоматически загружает SDK

При первом вызове yolo export format=axelera или yolo predict с моделью Axelera автоматически загрузятся и установятся пакеты Axelera SDK. Это может занять несколько минут в зависимости от скорости соединения, при этом прогресс загрузки не отображается. Чтобы установить вручную заранее:

pip install axelera-devkit==1.6.0 --extra-index-url https://software.axelera.ai/artifactory/api/pypi/axelera-pypi/simple
pip install axelera-rt==1.6.0 --extra-index-url https://software.axelera.ai/artifactory/api/pypi/axelera-pypi/simple

Экспорт моделей YOLO в Axelera

Экспортируй обученные модели YOLO, используя стандартную команду экспорта Ultralytics.

Экспорт в формат Axelera
from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

# Export to Axelera format
model.export(format="axelera")  # creates 'yolo26n_axelera_model' directory
Первый экспорт может не удаться после обновления зависимостей

Компилятор Axelera требует numpy<2. Если в твоей среде numpy>=2, первый yolo export автоматически понизит его версию, но экспорт завершится ошибкой из-за устаревшего состояния модуля. Просто запусти ту же команду экспорта еще раз — со второго раза всё получится.

Аргументы экспорта

АргументТипПо умолчаниюОписание
formatstr'axelera'Целевой формат для оборудования Axelera Metis AIPU.
imgszint или tuple640Размер изображения для входа модели.
batchint1Указывает размер пакетного инференса для экспортированной модели или максимальное количество изображений, которые модель будет обрабатывать одновременно в режиме predict.
int8boolTrueВключить квантование INT8 для AIPU.
datastr'coco128.yaml'Конфигурация датасета для калибровки квантования.
fractionfloat1.0Доля датасета для калибровки (рекомендуется 100-400 изображений).
devicestrNoneУстройство экспорта: GPU (device=0) или CPU (device=cpu).

Все опции экспорта смотри в документации режима Export.

Структура вывода

yolo26n_axelera_model/
├── yolo26n.axm              # Axelera model file
└── metadata.yaml            # Model metadata (classes, image size, etc.)

Запуск инференса

Загрузи экспортированную модель с помощью API Ultralytics и выполни инференс, аналогично тому, как загружаются модели ONNX.

Инференс с моделью Axelera
from ultralytics import YOLO

# Load the exported Axelera model
model = YOLO("yolo26n_axelera_model")

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")

# Process results
for r in results:
    print(f"Detected {len(r.boxes)} objects")
    r.show()  # Display results

Бенчмарки Axelera AI

Metis AIPU максимизирует пропускную способность, минимизируя энергопотребление.

МодельMetis PCIe FPS (кадров в секунду)Metis M.2 FPS (кадров в секунду)
YOLOv8n847771
YOLO11n746574
YOLO26n648.6484.9

Бенчмарки основаны на данных Axelera AI. Фактический FPS зависит от размера модели, пакетирования и разрешения входных данных.

Применение в реальных условиях

Ultralytics YOLO на оборудовании Axelera позволяет создавать продвинутые решения для периферийных вычислений:

Рекомендуемый рабочий процесс

  1. Обучи свою модель, используя Train Mode в Ultralytics
  2. Экспортируй в формат Axelera, используя model.export(format="axelera")
  3. Проверь точность с помощью yolo val, чтобы убедиться в минимальных потерях от квантования
  4. Выполни предсказание с помощью yolo predict для качественной проверки
  5. Разверни в высокопроизводительный сквозной конвейер без зависимости от PyTorch — смотри примеры YOLO на Voyager SDK для создания композитных Python-конвейеров с использованием axelera-rt

Проверка работоспособности устройства

Убедись, что твое устройство Axelera функционирует должным образом:

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

Для подробной диагностики обратись к документации AxDevice.

Максимальная производительность

Эта интеграция использует одноядерную конфигурацию для совместимости. Для продакшена, требующего максимальной пропускной способности, Axelera Voyager SDK предлагает:

  • Использование нескольких ядер (четырехъядерный Metis AIPU)
  • Потоковые конвейеры логического вывода
  • Тайловый (фрагментированный) логический вывод для камер высокого разрешения

См. model-zoo для получения данных о бенчмарках FPS или свяжись с Axelera для получения поддержки в продакшене.

Известные проблемы

Известные ограничения
  • Ограничения питания M.2: Большие или очень большие модели могут вызывать ошибки во время выполнения на ускорителях M.2 из-за ограничений блока питания.

Для получения поддержки посети сообщество Axelera.

Часто задаваемые вопросы (FAQ)

Какие версии YOLO поддерживаются на Axelera?

Voyager SDK поддерживает экспорт моделей YOLOv8, YOLO11 и YOLO26. См. Поддерживаемые задачи для получения информации о доступности задач для каждой модели.

Могу ли я развернуть свои собственные обученные модели?

Да. Любая модель, обученная с использованием режима обучения Ultralytics, может быть экспортирована в формат Axelera, при условии, что она использует поддерживаемые слои и операции.

Как квантование INT8 влияет на точность?

Voyager SDK от Axelera автоматически квантует модели для архитектуры AIPU со смешанной точностью. Для большинства задач обнаружения объектов прирост производительности (более высокий FPS, меньшее энергопотребление) значительно перевешивает минимальное влияние на mAP. Квантование занимает от нескольких секунд до нескольких часов в зависимости от размера модели. Запусти yolo val после экспорта, чтобы проверить точность.

Сколько калибровочных изображений мне следует использовать?

Мы рекомендуем от 100 до 400 изображений. Более 400 не дает дополнительных преимуществ и увеличивает время квантования. Поэкспериментируй со 100, 200 и 400 изображениями, чтобы найти оптимальный баланс.

Где я могу найти Voyager SDK?

SDK, драйверы и инструменты компилятора доступны через портал разработчиков Axelera.

Комментарии