Экспорт и развертывание в Axelera AI
Ultralytics сотрудничает с Axelera AI, чтобы обеспечить высокопроизводительный и энергоэффективный инференс на устройствах Edge AI. Экспортируй и разворачивай модели Ultralytics YOLO напрямую на Metis® AIPU с помощью Voyager SDK.
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 x4 | PCIe Gen3 x16 | 4x Metis AIPU | 856 TOPS | Высокоплотная видеоаналитика, умные города |
| Metis PCIe x1 | PCIe Gen3 x1 | 1x Metis AIPU | 214 TOPS | Промышленные ПК, розничное управление очередями |
| Metis M.2 | M.2 2280 M-Key | 1x Metis AIPU | 214 TOPS | Дроны, робототехника, портативные медицинские устройства |
| Metis M.2 MAX | M.2 2280 | 1x Metis AIPU | 214 TOPS | Среды, требующие расширенного управления теплоотводом |
Интегрированные системы
Для готовых решений Axelera сотрудничает с производителями, предоставляя системы, предварительно проверенные для Metis AIPU.
- Metis Compute Board: Автономное периферийное устройство, объединяющее Metis AIPU с ARM-процессором Rockchip RK3588.
- Рабочие станции: Корпоративные башни от Dell (Precision 3460XE) и Lenovo (ThinkStation P360 Ultra).
- Промышленные ПК: Защищенные системы от Advantech и Aetina, разработанные для автоматизации производства.
Поддерживаемые задачи
Следующие задачи поддерживаются в моделях YOLOv8, YOLO11 и YOLO26.
| Задача | YOLOv8 | YOLO11 | YOLO26 |
|---|---|---|---|
| Обнаружение объектов | ✅ | ✅ | ✅ |
| Оценку позы | ✅ | ✅ | ✅ |
| Сегментация | ✅ | ✅ | ⚠️ Только Voyager SDK |
| Ориентированные ограничивающие рамки (OBB) | ✅ | ✅ | ✅ |
| Классификация | ✅ | ✅ | ✅ |
Сегментация 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
-
Добавь ключ репозитория Axelera:
sudo sh -c "curl -fsSL https://software.axelera.ai/artifactory/api/security/keypair/axelera/public | gpg --dearmor -o /etc/apt/keyrings/axelera.gpg" -
Добавь репозиторий в 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" -
Установи SDK и загрузи драйвер:
sudo apt update sudo apt install -y metis-dkms=1.4.16 sudo modprobe metis
При первом вызове 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.
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 автоматически понизит его версию, но экспорт завершится ошибкой из-за устаревшего состояния модуля. Просто запусти ту же команду экспорта еще раз — со второго раза всё получится.
Аргументы экспорта
| Аргумент | Тип | По умолчанию | Описание |
|---|---|---|---|
format | str | 'axelera' | Целевой формат для оборудования Axelera Metis AIPU. |
imgsz | int или tuple | 640 | Размер изображения для входа модели. |
batch | int | 1 | Указывает размер пакетного инференса для экспортированной модели или максимальное количество изображений, которые модель будет обрабатывать одновременно в режиме predict. |
int8 | bool | True | Включить квантование INT8 для AIPU. |
data | str | 'coco128.yaml' | Конфигурация датасета для калибровки квантования. |
fraction | float | 1.0 | Доля датасета для калибровки (рекомендуется 100-400 изображений). |
device | str | None | Устройство экспорта: 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.
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 (кадров в секунду) |
|---|---|---|
| YOLOv8n | 847 | 771 |
| YOLO11n | 746 | 574 |
| YOLO26n | 648.6 | 484.9 |
Бенчмарки основаны на данных Axelera AI. Фактический FPS зависит от размера модели, пакетирования и разрешения входных данных.
Применение в реальных условиях
Ultralytics YOLO на оборудовании Axelera позволяет создавать продвинутые решения для периферийных вычислений:
- Умная розница: Подсчет объектов в реальном времени и аналитика тепловых карт для оптимизации магазина.
- Промышленная безопасность: Обнаружение СИЗ с низкой задержкой в производственных условиях.
- Аналитика с дронов: Высокоскоростное обнаружение объектов на БПЛА для сельского хозяйства и поисково-спасательных работ.
- Traffic Systems: Edge-based license plate recognition and speed estimation.
Рекомендуемый рабочий процесс
- Обучи свою модель, используя Train Mode в Ultralytics
- Экспортируй в формат Axelera, используя
model.export(format="axelera") - Проверь точность с помощью
yolo val, чтобы убедиться в минимальных потерях от квантования - Выполни предсказание с помощью
yolo predictдля качественной проверки - Разверни в высокопроизводительный сквозной конвейер без зависимости от 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.