モデルをトレーニングした後、PAI-EAS を使用してオンラインサービスとしてデプロイし、他のアプリケーションから呼び出すことができます。
PAI-EAS
Elastic Algorithm Service (EAS) は、PAI のモデルのオンライン推論プラットフォームです。モデルをオンライン推論サービスまたは AI-Web アプリケーションとしてワンクリックでデプロイでき、オートスケーリング、リソースグループ管理、バージョニング、リソースモニタリングを提供します。これにより、低いリソースコストで、高い同時実行性を持つ安定したオンラインモデル推論を実現できます。詳細については、「EAS の概要」をご参照ください。
課金
このトピックの例では、パブリックリソースを使用して従量課金で EAS サービスを作成します。継続的な課金を避けるため、不要になったサービスは停止または削除してください。
EAS を使用したモデルのデプロイ
DSW でモデルを開発し、EAS でデプロイする完全な例については、「EAS でモデルサービスをデプロイする」をご参照ください。
PAI コンソールにログインします。ページ上部で対象のリージョンとワークスペースを選択し、左側のナビゲーションウィンドウで Elastic Algorithm Service (EAS) > モデルのアップロードとデプロイメント > カスタムデプロイメント を選択します。
-
以下の主要なパラメータを設定し、その他のパラメータはデフォルト値のままにします。設定パラメータの完全なリストについては、「カスタムデプロイ」をご参照ください。
デプロイメント方式:イメージデプロイメント を選択します。
-
イメージ設定:イメージはモデルのランタイム環境を提供します。公式イメージ、カスタムイメージを使用するか、イメージアドレスを入力できます。
DSW でモデルを開発した場合は、イメージアドレス を選択し、DSW インスタンスで使用されているイメージをコピーできます。[DSW Instance] リストで対象のインスタンスを見つけ、[Image Version] 列のイメージアドレスの横にあるコピーアイコンをクリックします。
または、DSW のイメージビルド機能を使用して、イメージを Container Service for Registry (ACR) にプッシュし、EAS で使用することもできます。詳細については、「DSW インスタンスイメージの作成」をご参照ください。
-
ストレージのマウント:アプリケーションコードファイルを OSS にアップロードし、マウントパスを設定できます。[Direct Mount] の設定で、タイプを [OSS] に設定し、[Uri] を OSS パス (例:
oss://bucket-name/directory/) に設定し、[Mount Path] を/mnt/data/に設定し、必要に応じて [Read-only] スイッチを設定します。この例では、以下のサンプルコードを使用します。コードファイルは OSS にアップロード済みです。
コマンドの実行:サンプルコードの起動コマンドを入力します。この例では、コマンドの実行 を
python /mnt/data/web.pyに設定し、ポート番号 を9000に設定します。[ポート番号]: web.py で使用されるポート番号
9000を入力します。サードパーティライブラリの設定:イメージに含まれていないサードパーティライブラリを追加します。例えば、[Third-party Library List] タブで、入力フィールドに
numpy bottleなどの必要なライブラリ名を入力します。リソースタイプ:パブリックリソース を選択します。リソース仕様 では、
ecs.gn7i-c16g1.4xlargeを選択します。
デプロイメント をクリックします。サービスステータスが [実行中] に変わると、サービスがデプロイされます。
サービスのテスト
モデルをデプロイした後、EAS デバッグコンソールを使用してサービス API をテストします。
EAS インスタンスリストページでインスタンス名をクリックしてインスタンス詳細ページに移動し、オンラインデバッグ をクリックします。
web.pyアプリケーションを例として、リクエストパスを/api/predict/pai_eas_test/helloに、HTTP メソッドを POST に設定し、リクエストの送信 をクリックします。"Hello, World!" が返された場合、リクエストは成功です。パブリックエンドポイントまたは VPC エンドポイントを使用してサービスを呼び出す方法については、「サービス呼び出し」をご参照ください。