ailia Tech BLOG

AppleSiliconでailia SDKを使用する

クロスプラットフォームで利用できる高速AI推論フレームワークであるailia SDKをAppleSiliconで使用する方法のご紹介です。

AppleSiliconについて

AppleSiliconはAppleの開発したSoCの名称です。armアーキテクチャで、強力なCPUとGPUを搭載しています。AppleSiliconの第一世代のM1チップはGeForce GTX1060クラスのGPUを搭載しており、ailia SDKを使用することでGPUを使用した高速なAI推論が可能です。IntelアーキテクチャのMacBookProに比べて、YOLOv3 fullが5倍近い速度で動作します。

出典:https://www.apple.com/jp/mac/m1/

AppleSiliconでPythonを動かす

macOS Big SurにはPython3.8がプリインストールされており、ユニバーサルバイナリになります。ライブラリを格納するSite-Packagesは共通で、ユニバーサルバイナリであればx86_64とarm64のどちらからでも使用できます。しかし、依存するライブラリが一つでもx86_64の場合は、x86_64で動作させる必要があります。

ailia SDKはx86_64とarm64のユニバーサルバイナリになっています。しかし、現在はOpenCVのarm64バイナリが提供されていないため、現状ではRosetta2のx86_64エミュレーションで動作させる必要があります。エミュレーションとはいえ、ailia SDKはMetalのシェーダで動作するため、大幅な高速化が実現します。

Python3.8をx86_64モードで動作させるには、アプリケーション/ユーティリティフォルダにあるTerminalをコピーし、右クリックして、情報を見るから、Rosettaを使用して開くにチェックを入れます。

そうすると、x86_64モードでPythonを実行することができ、pip3でopencv-pythonをインストールすることができます。

pip3 install opencv-python

AppleSiliconにailia SDKをインストールする

x86_64モードでもarmモードでもどちらのターミナルでも下記のコマンドでailia SDKをインストール可能です。

cd ailia_sdk/python
python3 bootstrap.py
pip3 install ./

ailia SDK チュートリアル(Python)ailia SDKをPythonで使用するチュートリアルです。Pythonを使用することで様々なモデルの動作を簡単に試すことができます。medium.com

AppleSiliconでailia MODELSを動かす

githubのailia MODELSをcloneします。

ailia-ai/ailia-modelsThe collection of pre-trained, state-of-the-art models. ailia SDK is a cross-platform high speed inference SDK. The…github.com

x86_64モードのターミナルから下記を実行します。

python3 launch.py


アイリア株式会社はAIを実用化する会社として、クロスプラットフォームでGPUを使用した高速な推論を行うことができるailia SDKを開発しています。アイリア株式会社ではコンサルティングからモデル作成、SDKの提供、AIを利用したアプリ・システム開発、サポートまで、 AIに関するトータルソリューションを提供していますのでお気軽にお問い合わせください。