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” ボタンをクリックして、推論結果を確認します。