Axelera AIへのエクスポートとデプロイ#
UltralyticsはAxelera AIと提携し、Edge AIデバイス上で高性能かつエネルギー効率に優れた推論を実現します。Ultralytics YOLO modelsをMetis® AIPUに直接エクスポートしてデプロイできます。
Axelera AIは、独自のデータフローアーキテクチャとインメモリコンピューティングを使用して、低消費電力で最大856 TOPSを実現する、エッジ向けのコンピュータビジョン専用ハードウェアアクセラレーションを提供します。
適切なハードウェアの選択#
Axelera AIは、さまざまなデプロイメント制約に対応する多様なフォームファクターを提供しています。以下の表を使用すると、Ultralytics YOLOのデプロイメントに最適なハードウェアを特定できます。
graph TD
A[Start: Select Deployment Target]:::start --> B{Device Type?}:::decide
B -->|Edge Server / Workstation| C{Throughput Needs?}:::decide
B -->|Embedded / Robotics| D{Space Constraints?}:::decide
B -->|Standalone / R&D| E[Dev Kits & Systems]:::proc
C -->|Max Density <br> 30+ Streams| F[**Metis PCIe x4**<br>856 TOPS]:::out
C -->|Standard PC <br> Low Profile| G[**Metis PCIe x1**<br>214 TOPS]:::out
D -->|Drones & Handhelds| H[**Metis M.2**<br>2280 M-Key]:::out
D -->|High Performance Embedded| I[**Metis M.2 MAX**<br>Extended Thermal]:::out
E -->|ARM-based All-in-One| J[**Metis Compute Board**<br>RK3588 + AIPU]:::out
E -->|Prototyping| K[**Arduino Portenta x8**<br>Integration Kit]:::out
click F "https://store.axelera.ai/"
click G "https://store.axelera.ai/"
click H "https://store.axelera.ai/"
click J "https://store.axelera.ai/"
classDef start fill:#4CAF50,color:#fff
classDef proc fill:#2196F3,color:#fff
classDef decide fill:#FF9800,color:#fff
classDef out fill:#9C27B0,color:#fffハードウェア製品群#
Axeleraのハードウェアラインアップは、Ultralytics YOLO26および従来のバージョンを、高いワットあたりFPS効率で実行できるよう最適化されています。
アクセラレータカード#
これらのカードにより、既存のホストデバイスでAIアクセラレーションを利用でき、ブラウンフィールドデプロイメントが容易になります。
| 製品 | フォームファクター | コンピューティング | パフォーマンス(INT8) | 対象アプリケーション |
|---|---|---|---|---|
| Metis PCIe x4 | PCIe Gen3 x16 | 4x Metis AIPU | 856 TOPS | 高密度ビデオ分析、スマートシティ |
| Metis PCIe x1 | PCIe Gen3 x1 | 1x Metis AIPU | 214 TOPS | 産業用PC、小売業のキュー管理 |
| 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とRockchip RK3588 ARM CPUを組み合わせたスタンドアロンのエッジデバイスです。
- ワークステーション:Dell(Precision 3460XE)およびLenovo(ThinkStation P360 Ultra)のエンタープライズタワーです。
- 産業用PC:製造オートメーション向けに設計された、AdvantechおよびAetinaの堅牢化システムです。
サポートされるタスク#
深度推定はサポートされていません。深度ヘッドがMetis AIPUコンパイラで変換できない演算子を出力するためです。YOLO26インスタンスセグメンテーションもUltralytics exportではサポートされていませんが、後述するようにVoyager SDKを通じてデプロイすることは可能です。YOLO26セマンティックセグメンテーションはサポートされています。
YOLO26インスタンスセグメンテーションは、Ultralytics exportコマンドではまだサポートされていません。yolo26-segを必要とするユーザーは、ユーザースペースの回避策を提供するdeploy.pyを使用してVoyager SDK経由でデプロイできます。ネイティブコンパイラのサポートは将来のリリースで追加される予定です。
インストール#
Axelera形式へのエクスポートには、以下が必要です。
- オペレーティングシステム:Linuxのみ(Ubuntu 22.04/24.04を推奨)
- ハードウェア:Axelera AIアクセラレーター(Metis devices)
- Python:バージョン3.10、3.11、3.12、3.13
- PyTorch:
torch>=2.8,<2.13 - Voyager SDK: 1.8.0。エクスポートはこの開発キットのバージョンをインストールし、推論はこのランタイムのバージョンをインストールします。
- Metisカーネルドライバ:
metis-dkms1.6.2以降。pipとは別にインストールします。 - システム依存関係:
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に追加します。
使用するOSに合った、以下のスニペットを選択してください。
# 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 1.8には
metis-dkms1.6.2以降が必要であるため、ここでは最新版がインストールされます。sudo apt update sudo apt install -y metis-dkms sudo modprobe metis
カーネルドライバは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を再実行し、デバイスが検出されたことを確認します。
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/simpleSDK 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形式は、Export、Predict、Validateモードをサポートしています。推論と検証はAxelera Metis AIPUハードウェア上で実行されます。モデルをエクスポートした後、エクスポート済みモデルを読み込んで推論を実行するか、精度を検証してください。
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to Axelera format
model.export(format="axelera") # creates 'yolo26n_axelera_model'from ultralytics import YOLO
# Load the exported Axelera model
model = YOLO("yolo26n_axelera_model")
# Run inference
results = model("https://ultralytics.com/images/bus.jpg")from ultralytics import YOLO
# Load the exported Axelera model
model = YOLO("yolo26n_axelera_model")
# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")エクスポート引数#
| 引数 | 型 | デフォルト | 説明 |
|---|---|---|---|
format | str | 'axelera' | Axelera Metis AIPUハードウェアの対象形式です。 |
imgsz | intまたはtuple | 640 | モデル入力の画像サイズです。 |
batch* | int | 1 | エクスポートするモデルのバッチ推論サイズ、またはpredictモードでエクスポート済みモデルが同時に処理する画像の最大数を指定します。 |
quantize | intまたはstr | 8/auto | 量子化精度です。Axelera AIPUでは8(INT8)が必須で、自動的に有効になります。非推奨のhalf/int8フラグに置き換わるものです。INT8量子化を参照してください。 |
data | str | None | キャリブレーションデータセットのYAMLです。分類の場合は、代わりにデータセットディレクトリまたは組み込みデータセット名を指定します。省略すると、Ultralyticsがタスク固有のキャリブレーションデータセットを選択します。 |
fraction | float、int、またはlist | 1.0 | キャリブレーションサブセットを、比率、画像数、または[train, val, test]の比率・画像数として指定します。2要素のリストではtestが完全な状態で残り、0ではスキップされます(100~400枚の画像を推奨)。 |
device | str | None | エクスポートデバイス:GPU(device=0)またはCPU(device=cpu)です。 |
* batch>1による推論にはVoyager SDK 1.8.0以降が必要です。モデルは単一の画像用にコンパイルされます。
すべてのエクスポートオプションについては、Export Modeのドキュメントを参照してください。
出力構造#
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(フレーム/秒) |
|---|---|---|
| YOLOv8n | 847 | 771 |
| YOLO11n | 746 | 574 |
| YOLO26n | 648.6 | 484.9 |
ベンチマークはAxelera AIのデータに基づいています。実際のFPSは、モデルサイズ、バッチ処理、入力解像度によって異なります。
これらはホストのスループット数値であり、720pのビデオファイル上でVoyager SDKのストリーミングパイプラインを使用してモデル動物園で測定されたものです。単一のpredict呼び出しでは代わりに画像ごとのレイテンシが報告されますが、これは異なる指標です。
実世界での用途#
Axeleraハードウェア上のUltralytics YOLOにより、高度なエッジコンピューティングソリューションを実現できます。
- スマートリテール:物体カウントとヒートマップ分析をリアルタイムで行い、店舗を最適化します。
- 産業安全:製造環境における低レイテンシのPPE検出です。
- ドローン分析:農業や捜索救難向けに、UAV上で高速な物体検出を実行します。
- 交通システム:エッジベースのナンバープレート認識と速度推定です。
推奨ワークフロー#
- UltralyticsのTrain Modeを使用してモデルをトレーニングします。
model.export(format="axelera")を使用してAxelera形式にエクスポートします。yolo valで精度を検証し、量子化による損失が最小限であることを確認します。yolo predictを使用して予測し、定性的な検証を行います。- PyTorch依存関係なしで高性能なエンドツーエンドパイプラインにデプロイします。
axelera-rtを使用した、組み合わせ可能なPythonパイプラインについてはVoyager SDK上のYOLOの例を参照してください。
デバイスヘルスチェック#
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 1.8以降)を経由してルーティングされるため、batch>1は正しく実行されますが、単一のデバイス上でエンドツーエンドで測定した場合、batch=1よりも高速になることはありません。
yolo predict model=yolo26n_axelera_model source=path/to/images batch=8最大スループットを必要とする本番環境向けに、Axelera Voyager SDKは以下を提供します。
- 複数のフレームを処理待ち状態で保持するストリーミング推論パイプライン
- 複数のコアにわたって1つのモデルをコンパイルすること
- 高解像度カメラ向けのタイル化推論
FPSベンチマークについてはmodel-zooを、プロダクションサポートについてはAxeleraへのお問い合わせをご覧ください。
既知の問題#
- M.2の電力制限: 大規模または超大規模のモデルでは、電源供給の制約により、M.2アクセラレーターでランタイムエラーが発生する場合があります。
サポートについては、Axelera Communityをご覧ください。
FAQ#
はい。Ultralytics Train Modeを使用して学習したモデルであれば、サポート対象のレイヤーと演算を使用していることを条件に、Axelera形式へエクスポートできます。
100~400枚の画像を推奨します。400枚を超えても追加のメリットはなく、量子化にかかる時間が増加します。100枚、200枚、400枚で試して、最適なバランスを見つけてください。
SDK、ドライバー、コンパイラーツールは、Axelera Developer Portalから入手できます。