Elastic Algorithm Service (EAS) でモデルサービスを作成します。
操作説明
**この操作を呼び出す前に、EAS の課金について精通していることを確認してください。
今すぐお試しください
テスト
RAM 認証
|
アクション |
アクセスレベル |
リソースタイプ |
条件キー |
依存アクション |
|
eas:CreateService |
create |
*All Resource
|
なし | なし |
リクエスト構文
POST /api/v2/services HTTP/1.1
リクエストパラメーター
|
パラメーター |
型 |
必須 / 任意 |
説明 |
例 |
| body |
string |
任意 |
リクエストボディ。 主要なリクエストパラメーターの詳細については、表 1. リクエストボディパラメーターおよび表 2. メタデータパラメーターをご参照ください。 関連するすべてのパラメーターの詳細については、「モデルサービスのパラメーター」をご参照ください。 |
镜像部署服务: { "name": "foo", "metadata": { "instance": 2, "memory": 7000, "cpu": 4 }, "containers": [ { "image": "****", "script": "**** --listen=0.0.0.0 --server_port=8000 --headless", "port": 8000 } ], "storage": [ { "oss": { "path": "oss://examplebuket/data111/", "readOnly": false }, "properties": { "resource_type": "model" }, "mount_path": "/data" } ] } 镜像部署AI-Web应用: { "name": "foo", "metadata": { "instance": 1, "memory": 7000, "cpu": 4, "enable_webservice": true }, "containers": [ { "image": "****", "script": "**** --listen=0.0.0.0 --server_port=8000 --headless", "port": 8000 } ], "storage": [ { "oss": { "path": "oss://examplebucket/data111/", "readOnly": false }, "properties": { "resource_type": "model" }, "mount_path": "/data" } ] } 模型+processor部署服务: { "metadata": { "instance": 1, "memory": 7000, "cpu": 4 }, "name": "foo", "model_config": {}, "processor_type": "python", "processor_path": "oss://****", "processor_entry": "a.py", "model_path": "oss://****" } |
| Develop |
string |
任意 |
開発モードに入るかどうかを指定します。 有効値:
列挙値:
|
true |
| Labels |
object |
任意 |
カスタムラベル。 |
|
|
string |
任意 |
ラベル。 |
{"key":"value"} |
|
| WorkspaceId |
string |
任意 |
ワークスペース ID。 |
123456 |
表 1. リクエストボディパラメーター
| パラメーター | タイプ | 必須 | 説明 |
| name | String | はい | サービス名。リージョン内で一意である必要があります。 |
| token | String | いいえ | 認証用のトークン。 トークンを指定せず、generate_token が true に設定されている場合、トークンは自動的に生成されます。 |
| model_path | String | いいえ | モデルファイルのパス。 HTTP アドレスまたは Object Storage Service (OSS) パスを指定できます。 HTTP アドレスを指定する場合、その HTTP アドレスはパブリックにアクセス可能である必要があります。 OSS パスを指定する場合、パスはディレクトリまたはファイル名にすることができます。 .tar.gz、.tar.bz2、または .zip ファイルを指定した場合、システムは自動的にファイルを解凍します。 |
| role_arn | string | いいえ | model_path または processor_path を OSS アドレスに設定する場合、OSS にアクセスするために role_arn パラメーターを指定し、role_arn を取得するために Role_ARN パラメーターを指定する必要があります。 |
| oss_endpoint | String | いいえ | OSS バケットのエンドポイント。 model_path または processor_path を OSS パスに設定する場合、このパラメーターを指定する必要があります。 |
| model_entry | String | いいえ | モデルのプライマリファイル。 任意のファイルをモデルのプライマリファイルとして指定できます。 ファイルが指定されていない場合、model_path で指定されたファイルがモデルのプライマリファイルとして使用されます。 プライマリファイルのパスは、プロセッサの Load() 関数に配信されます。 |
| processor_path | String | はい | プロセッサファイルのパス。 ローカルファイルまたは HTTP アドレスを指定できます。 .tar.gz、.tar.bz2、または .zip ファイルを指定した場合、システムは自動的にファイルを解凍します。 |
| processor_entry | String | いいえ | processor_type を C、C++、または Python に設定した場合、このパラメーターは必須です。 プロセッサのメインファイル。 メインファイルには、予測に必要な Load() および Process() 関数の実装が含まれています。 |
| processor_mainclass | String | いいえ | processor_type を Java に設定した場合、このパラメーターは必須です。 プロセッサの JAR パッケージ内のメインクラス。 |
| processor_type | String | はい | プロセッサの実装に使用される言語。 有効値:C、C++、Java、Python。 |
| metadata | Dict | いいえ | サービスのメタデータ。 詳細については、表 2 をご参照ください。 |
| cloud | Dict | いいえ | マップキー。 このパラメーターは、サービスをデプロイするためにインスタンスタイプを指定する場合にのみ必須です。 このパラメーターは、"cloud":{"computing":{"instance_type": "ecs.gxxxxxx.large"}} の形式で指定する必要があります。 |
| containers | List | いいえ | カスタムイメージを使用して実装されるコンテナーデプロイメントのメソッド。 プロセッサを使用してデプロイされたコンテナーが要件を満たせない場合、カスタムイメージを使用してコンテナーをデプロイできます。 詳細については、「カスタムイメージを使用したモデルサービスのデプロイ」をご参照ください。 |
説明 model_path パラメーターと processor_path パラメーターは、モデル入力とプロセッサ入力のソースを指定します。 パスは HTTP アドレスまたは OSS パスに設定できます。 オンプレミスマシンでテストコマンドを使用してモデルをデバッグする場合、パラメーターをローカルファイルおよびディレクトリに設定できます。
HTTP アドレスを使用する場合、関連ファイルを .tar.gz、.tar.bz2、または .zip ファイルに圧縮する必要があります。 その後、ファイルを OSS にアップロードして HTTP アドレスを生成できます。
OSS パスを使用する場合、ディレクトリまたはファイル名をパスとして入力できます。
表 2. メタデータパラメーター
| パラメーター | タイプ | 必須 | 説明 | 例 |
| instance | Int | いいえ | サービスの開始に必要なワーカーの数。 | 1 |
| cpu | Int | いいえ | 各ワーカーが必要とする CPU の数。 | 1 |
| gpu | Int | いいえ | 各ワーカーが必要とする GPU の数。 | 0 |
| memory | Int | いいえ | 各ワーカーが必要とするメモリサイズ。 単位:MB。 | 1000 |
| resource | String | いいえ | サービスが属するリソースグループ。 | eas-r-aaabbbccc |
| rpc.worker_threads | Int | いいえ | 各インスタンスでリクエストを同時に処理するために使用されるスレッドの数。 | 5 |
| rpc.max_queue_size | Int | いいえ | リクエストを処理するためのキューの最大サイズ。 キューがいっぱいの場合、新しいリクエストは破棄され、HTTP 450 ステータスコードが返されます。 | 64 |
| rpc.keepalive | Int | いいえ | リクエストのタイムアウト期間。 単位:ミリ秒。 | 5000 |
| rpc.rate_limit | Int | いいえ | 単一インスタンスのリクエストスロットリングをトリガーする 1 秒あたりのクエリ数 (QPS) の値。 QPS を超えると、新しいリクエストは破棄され、HTTP 429 ステータスコードが返されます。 | 0 |
| release | Bool | いいえ | カナリアリリース用のサービスを作成するかどうかを指定します。 有効値:true および false。 このパラメーターを true に設定した場合、カナリアリリース用のサービスを作成する必要があります。 | false |
レスポンスフィールド
|
フィールド |
型 |
説明 |
例 |
|
object |
レスポンスパラメーター。 |
||
| RequestId |
string |
リクエスト ID。 |
40325405-579C-4D82**** |
| ServiceId |
string |
作成されたサービスの ID。 |
eas-m-aaxxxddf |
| ServiceName |
string |
作成されたサービスの名前。 |
yourname |
| Status |
string |
サービスステータス。 |
Creating |
| Region |
string |
作成されたサービスのリージョン ID。 |
cn-shanghai |
| InternetEndpoint |
string |
作成されたサービスのパブリックエンドポイント。 |
http://pai-eas.vpc.cn-shanghai.**** |
| IntranetEndpoint |
string |
作成されたサービスの内部エンドポイント。 |
http://pai-eas.cn-shanghai.**** |
例
成功レスポンス
JSONJSON
{
"RequestId": "40325405-579C-4D82****",
"ServiceId": "eas-m-aaxxxddf",
"ServiceName": "yourname",
"Status": "Creating",
"Region": "cn-shanghai",
"InternetEndpoint": "http://pai-eas.vpc.cn-shanghai.****",
"IntranetEndpoint": "http://pai-eas.cn-shanghai.****"
}
エラーコード
完全なリストについては、「エラーコード」をご参照ください。
変更履歴
完全なリストについては、「変更履歴」をご参照ください。