Web API の作成

はじめに

本ドキュメントを通じて、 ABEJA Platform の GUI を利用して Platform 上に登録済みのモデルを Web API としてデプロイする方法を紹介します。

推論を行う WebAPI を作成する

ABEJA Platform に登録したモデルを Web API としてデプロイしていきます。 ABEJA Platform では、 WebAPI を HTTP サービス と呼びます。 モデルのバージョン、インスタンスタイプ、インスタンス数を指定するだけで、機械学習モデルを WebAPI としてデプロイすることが出来ます。

デプロイメントを作成する

左部メニューの 「Deployment」 をクリックします。 画面右上に表示される 「Create Deployment」 ボタンをクリックします。

入力フォームに次の値を設定し、”Create Deployment” をクリックし、デプロイメントを作成します。

項目 備考
Deployment Name デプロイメント名 -
Description ※任意の値 -

推論コードを作成・管理する

左部メニューの 「Codes」 をクリックします。

「Create Version」より推論コードを作成します。

推論コードを作成する場合、以下の項目を入力し、「Create」をクリックします。

項目 備考
Source Code - 推論コードをZip形式にして、アップロード / テンプレートの選択
Code Version 1.0.0 推論コードの管理バージョンを入力
Runtime abeja-inc/all-cpu:19.04 推論を実施するためのDockerイメージを選択
Model Handler predict:handler 推論コードを実施するためのHandlerを指定

これで、コードが作成され、一覧で管理できる状態となりました。

HTTP サービスを作成する

最後に、モデルと推論コードを使用し、HTTPサービス(Web API)を作成します。

左部メニューの 「Services」 をクリックします。

HTTPサービスを作成する場合、以下の項目を入力し、「Create HTTP Service」をクリックします。

項目 備考
Code 1.0.0 Deploymentで管理している推論コードのバージョン指定
Model fashion_classification モデルの指定
Model Version XXXXXXXXXXXX 利用する学習ジョブID
Instance Type cpu-0.25 HTTPサービスのスペック
Instance Number 1 提供するインスタンスの数

作成後、次の画面が表示されます。”Status” の項目は作成直後は “In Progress” となっています。 “Status” は自動で更新されますが、更新されない場合には画面上部の “Refresh” をクリックして下さい。 数秒から数分後、作成した HTTP Service が “Ready” になることを確認してください。

エイリアスの作成

WebAPI のエンドポイントには、任意のエイリアスを作成することが可能です。 エイリアスを使用することで、リクエストを流す先となる WebAPI の切り替えを簡単かつ安全に行うことが出来ます。

まず、 Add Endpoint を選択し、エイリアス名を設定します。

入力フォームに次の値を設定し、”Add Endpoint” をクリックし、エイリアスを作成します。

項目
Primary endpoint? チェックボックスを ON にする
Alias name 入力不要。上記のチェックボックスを ON にすると無効になります
Model version (Cloud service only) 作成したモデルバージョン
Access control Public:アクセス制限なし ・ Organization:同一Oraganizationメンバーのみアクセス化 ・ Access key:アクセスにアクセスキーが別途必要

primary endopoint とした場合、デプロイメント内の一意のエンドポイントとして、以下の形式で呼び出すことが可能です。 __https://{ORGANIZATION_NAME}.api.abeja.io/deployments/{DEPLOYMENT_ID}__

作成した WebAPI の動作を確認する

次にデプロイした WebAPI の動作確認を行います。

モデルに対してデータを入力し、出力結果を確認する

作成された HTTP サービスの、”Check” ボタンをクリックします。

“Upload File” のタブを選択すると、PC にある画像を HTTP サービスにアップロードして動作確認をすることが出来ます。

モデルの登録でダウンロードした zip ファイル に含まれる任意の画像をドラッグ・アンド・ドロップし、 “Send” ボタンをクリックして、推論結果を確認します。