Ultralytics YOLO27:

Axelera AIへのエクスポートとデプロイ#

UltralyticsはAxelera AIと提携し、Edge AIデバイス上で高性能かつエネルギー効率に優れた推論を実現します。Ultralytics YOLO modelsMetis® AIPUに直接エクスポートしてデプロイできます。

YOLO向けAxelera AIエッジデプロイメントエコシステム

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 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コンパイラで変換できない演算子を出力するためです。YOLO26インスタンスセグメンテーションもUltralytics exportではサポートされていませんが、後述するようにVoyager SDKを通じてデプロイすることは可能です。YOLO26セマンティックセグメンテーションはサポートされています。

タスクYOLOv8YOLO11YOLO26
検出
セグメンテーション
セマンティック
深度
分類
ポーズ
OBB
注記

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-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に追加します。

    使用する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"
  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形式は、ExportPredictValidateモードをサポートしています。推論と検証は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")

エクスポート引数#

引数デフォルト説明
formatstr'axelera'Axelera Metis AIPUハードウェアの対象形式です。
imgszintまたはtuple640モデル入力の画像サイズです。
batch*int1エクスポートするモデルのバッチ推論サイズ、またはpredictモードでエクスポート済みモデルが同時に処理する画像の最大数を指定します。
quantizeintまたはstr8/auto量子化精度です。Axelera AIPUでは8(INT8)が必須で、自動的に有効になります。非推奨のhalf/int8フラグに置き換わるものです。INT8量子化を参照してください。
datastrNoneキャリブレーションデータセットのYAMLです。分類の場合は、代わりにデータセットディレクトリまたは組み込みデータセット名を指定します。省略すると、Ultralyticsがタスク固有のキャリブレーションデータセットを選択します。
fractionfloatint、またはlist1.0キャリブレーションサブセットを、比率、画像数、または[train, val, test]の比率・画像数として指定します。2要素のリストではtestが完全な状態で残り、0ではスキップされます(100~400枚の画像を推奨)。
devicestrNoneエクスポートデバイス: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(フレーム/秒)
YOLOv8n847771
YOLO11n746574
YOLO26n648.6484.9

ベンチマークはAxelera AIのデータに基づいています。実際のFPSは、モデルサイズ、バッチ処理、入力解像度によって異なります。

これらはホストのスループット数値であり、720pのビデオファイル上でVoyager SDKのストリーミングパイプラインを使用してモデル動物園で測定されたものです。単一のpredict呼び出しでは代わりに画像ごとのレイテンシが報告されますが、これは異なる指標です。

実世界での用途#

Axeleraハードウェア上のUltralytics YOLOにより、高度なエッジコンピューティングソリューションを実現できます。

推奨ワークフロー#

  1. UltralyticsのTrain Modeを使用してモデルをトレーニングします。
  2. model.export(format="axelera")を使用してAxelera形式にエクスポートします。
  3. yolo valで精度を検証し、量子化による損失が最小限であることを確認します。
  4. yolo predictを使用して予測し、定性的な検証を行います。
  5. 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#

  • Voyager SDKは、YOLOv8YOLO11、およびYOLO26モデルのエクスポートをサポートしています。モデルごとのタスクの対応状況については、サポート対象タスクをご覧ください。

  • はい。Ultralytics Train Modeを使用して学習したモデルであれば、サポート対象のレイヤーと演算を使用していることを条件に、Axelera形式へエクスポートできます。

  • AxeleraのVoyager SDKは、混合精度AIPUアーキテクチャ向けにモデルを自動的に量子化します。ほとんどの物体検出タスクでは、性能向上(FPSの向上、消費電力の低減)が、mAPへの最小限の影響を大きく上回ります。量子化にかかる時間は、モデルサイズに応じて数秒から数時間です。エクスポート後にyolo valを実行して、精度を確認してください。

  • 100~400枚の画像を推奨します。400枚を超えても追加のメリットはなく、量子化にかかる時間が増加します。100枚、200枚、400枚で試して、最適なバランスを見つけてください。

  • SDK、ドライバー、コンパイラーツールは、Axelera Developer Portalから入手できます。

コメント