モデルの動作に問題がなければ、モデルをデプロイし、テキスト内のエンティティを認識するために使用する準備が整います。 モデルをデプロイすると、Prediction API で使えるようになります。
前提条件
詳細については、プロジェクト開発ライフサイクルを参照してください。
モデルのデプロイ
モデルのパフォーマンスを確認し、環境で使用できることを決定したら、それをデプロイに割り当てる必要があります。 モデルをデプロイに割り当てると、予測 API を通じて使用できるようになります。 これまでに構築した最適なモデルを割り当て、システムで使用する 運用 という名前のデプロイを作成することをお勧めします。
staging という名前の別のデプロイを作成し、現在作業しているモデルをそれに割り当ててテストすることができます。 プロジェクトでは、最大 10 個のデプロイを使用できます。
Foundry でカスタム モデルをデプロイする方法については、「微調整されたモデルをデプロイする」を参照してください。
デプロイ ジョブを送信する
デプロイ ジョブを送信するには、次の URL、ヘッダー、JSON 本文を使って PUT 要求を送信します。 プレースホルダーの値をあなた自身の値に置き換えてください。
{Endpoint}/language/authoring/analyze-text/projects/{projectName}/deployments/{deploymentName}?api-version={API-VERSION}
| プレースホルダー |
値 |
例 |
{ENDPOINT} |
API 要求を認証するためのエンドポイント。 |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
プロジェクトの名前。 この値は、大文字と小文字が区別されます。 |
myProject |
{DEPLOYMENT-NAME} |
デプロイの名前。 この値は、大文字と小文字が区別されます。 |
staging |
{API-VERSION} |
呼び出している API のバージョン。 参照される値は、リリースされた最新バージョン用です。 詳細については、「モデルのライフサイクル」を参照してください。 |
2022-05-01 |
要求を認証するには、次のヘッダーを使います。
| キー |
値 |
Ocp-Apim-Subscription-Key |
リソースへのキー。 API 要求の認証に使われます。 |
要求本文
要求の本文で次の JSON を使います。 デプロイに割り当てるモデルの名前を使います。
{
"trainedModelLabel": "{MODEL-NAME}"
}
| Key |
プレースホルダー |
値 |
例 |
| trainedModelLabel |
{MODEL-NAME} |
デプロイに割り当てられているモデル名。 正常にトレーニングされたモデルのみ割り当てることができます。 この値は、大文字と小文字が区別されます。 |
myModel |
API 要求を送信すると、ジョブが正しく送信されたことを示す 202 応答を受け取ります。 応答ヘッダーで、次のように書式設定された operation-location 値を抽出します。
{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}
この操作は非同期であるため、{JOB-ID} を使って要求が識別されます。 この URL を使用してデプロイの状態を取得できます。
デプロイ ジョブの状態を取得する
次の GET 要求を使って、デプロイ ジョブの状態に関するクエリを実行します。 前のステップで取得した URL を使うことも、プレースホルダーの値を実際の値に置き換えることもできます。
{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}
| プレースホルダー |
値 |
例 |
{ENDPOINT} |
API 要求を認証するためのエンドポイント。 |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
プロジェクトの名前。 この値は、大文字と小文字が区別されます。 |
myProject |
{DEPLOYMENT-NAME} |
デプロイの名前。 この値は、大文字と小文字が区別されます。 |
staging |
{JOB-ID} |
モデルのトレーニングの状態を取得するための ID。 これは、前の手順で受け取った location ヘッダー値にあります。 |
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx |
{API-VERSION} |
呼び出している API のバージョン。 参照される値は、リリースされた最新バージョン用です。 詳細については、「モデルのライフサイクル」を参照してください。 |
2022-05-01 |
要求を認証するには、次のヘッダーを使います。
| キー |
値 |
Ocp-Apim-Subscription-Key |
リソースへのキー。 API 要求の認証に使われます。 |
応答本文
要求を送信すると、次の応答が返されます。
status パラメーターが "succeeded" に変化するまで、このエンドポイントのポーリングを続けます。 要求の成功を示す 200 コードを取得します。
{
"jobId":"{JOB-ID}",
"createdDateTime":"{CREATED-TIME}",
"lastUpdatedDateTime":"{UPDATED-TIME}",
"expirationDateTime":"{EXPIRATION-TIME}",
"status":"running"
}
デプロイを入れ替える
1 つのデプロイに割り当てられたモデルのテストが完了し、このモデルを別のデプロイに割り当てる場合は、これら 2 つのデプロイをスワップできます。 デプロイをスワップするときは、最初のデプロイに割り当てたモデルを取得し、2 番目のデプロイに割り当てます。 次に、2 番目のデプロイに割り当てたモデルを取得して、最初のデプロイに割り当てます。
staging に割り当てられたモデルを取得して production に割り当てたいときは、このプロセスを使って、production と staging のデプロイをスワップできます。
デプロイされたモデルを置き換えるには、デプロイされたモデルを同じリージョン内の別のモデルと交換します。
[ 名前 ] でモデル名を選択し、[ モデルのデプロイ] を選択します。
[ スワップ モデル] を選択します。
再デプロイが完了するまでに数分かかります。 それまでの間、デプロイされたモデルは、このプロセスが完了するまで、Translator API で引き続き使用できます。
デプロイ スワップ ジョブを始めるには、次の URL、ヘッダー、JSON 本文を使って POST 要求を作ります。
要求 URL
{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/deployments/:swap?api-version={API-VERSION}
| プレースホルダー |
値 |
例 |
{ENDPOINT} |
API 要求を認証するためのエンドポイント。 |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
プロジェクトの名前。 この値は、大文字と小文字が区別されます。 |
myProject |
{API-VERSION} |
呼び出している API のバージョン。 参照される値は、リリースされた最新 のモデル バージョン 用です。 |
2022-05-01 |
要求を認証するには、次のヘッダーを使います。
| キー |
値 |
Ocp-Apim-Subscription-Key |
リソースへのキー。 API 要求の認証に使われます。 |
要求本文
{
"firstDeploymentName": "{FIRST-DEPLOYMENT-NAME}",
"secondDeploymentName": "{SECOND-DEPLOYMENT-NAME}"
}
| キー |
プレースホルダー |
値 |
例 |
| firstDeploymentName |
{FIRST-DEPLOYMENT-NAME} |
1 番目のデプロイの名前。 この値は、大文字と小文字が区別されます。 |
production |
| secondDeploymentName |
{SECOND-DEPLOYMENT-NAME} |
2 番目のデプロイの名前。 この値は、大文字と小文字が区別されます。 |
staging |
API 要求を送信すると、成功を示す 202 応答を受け取ります。
デプロイを削除する
プロジェクトが不要になった場合は、Foundry から削除できます。
-
Foundry ホーム ページに移動します。 この手順を既に完了していてセッションがアクティブでない限り、サインインして認証プロセスを開始します。
- 削除したいプロジェクトを選択します Foundry での構築を続行
-
[管理センター] を選択します。
- [ プロジェクトの削除] を選択します。
ハブとそのすべてのプロジェクトを削除するには:
[概要] タブの [ハブ] セクションに移動します。
右側の [ハブの 削除] を選択します。
リンクをクリックすると、ハブを削除するための Azure portal が開きます。
デプロイを削除するには、次の URL、ヘッダー、JSON 本文を使って DELETE 要求を作成します。
要求 URL
{Endpoint}/language/authoring/analyze-text/projects/{PROJECT-NAME}/deployments/{deploymentName}?api-version={API-VERSION}
| プレースホルダー |
値 |
例 |
{ENDPOINT} |
API 要求を認証するためのエンドポイント。 |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
プロジェクトの名前。 この値は、大文字と小文字が区別されます。 |
myProject |
{DEPLOYMENT-NAME} |
デプロイの名前。 この値は、大文字と小文字が区別されます。 |
prod |
{API-VERSION} |
呼び出している API のバージョン。 参照される値は、リリースされた最新バージョン用です。 詳細については、「モデルのライフサイクル」を参照してください。 |
2022-05-01 |
要求を認証するには、次のヘッダーを使います。
| キー |
値 |
Ocp-Apim-Subscription-Key |
リソースへのキー。 API 要求の認証に使われます。 |
API 要求を送信すると、成功を示す 202 応答が返されます。これは、デプロイが削除されていることを意味します。 呼び出しが成功すると、ジョブの状態を確認するために使用する Operation-Location ヘッダーが返されます。
デプロイ リソースの割り当て
異なるリージョンに存在する異なる Language リソースを割り当てることで、プロジェクトを複数のリージョンにデプロイすることができます。
カスタム モデルをデプロイする方法の詳細については、「微調整されたモデルをデプロイする」を参照してください。
デプロイ リソースをプログラムで割り当てるには、Microsoft Entra 認証が必要です。 Microsoft Entra ID は、複数リージョンのデプロイのためにプロジェクトに割り当てる際に関心のあるリソースへのアクセス権があることを確認するために使用されます。 REST API 呼び出しを行うときに Microsoft Entra 認証をプログラムで使用する方法については、 Foundry Tools のドキュメントを参照してください。
リソースを割り当てる
以下の URL、ヘッダー、JSON 本文を使って POST 要求を送信し、デプロイ リソースを割り当てます。
要求 URL
API 要求を作るときは、次の URL を使います。 プレースホルダーの値をあなた自身の値に置き換えてください。
{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/resources/:assign?api-version={API-VERSION}
| プレースホルダー |
値 |
例 |
{ENDPOINT} |
API 要求を認証するためのエンドポイント。 |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
プロジェクトの名前。 この値は、大文字と小文字が区別されます。 |
myProject |
{API-VERSION} |
呼び出している API のバージョン。 |
2022-10-01-preview |
Microsoft Entra 認証を使用して、この API を認証します。
Body
次のサンプル JSON を本文として使います。
{
"resourcesMetadata": [
{
"azureResourceId": "{AZURE-RESOURCE-ID}",
"customDomain": "{CUSTOM-DOMAIN}",
"region": "{REGION-CODE}"
}
]
}
| キー |
プレースホルダー |
値 |
例 |
azureResourceId |
{AZURE-RESOURCE-ID} |
割り当てる完全なリソース ID パス。 Azure portal で、リソースの [プロパティ] タブの [リソース ID] フィールドにあります。 |
/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ContosoResourceGroup/providers/Microsoft.CognitiveServices/accounts/ContosoResource |
customDomain |
{CUSTOM-DOMAIN} |
割り当てるリソースのカスタム サブドメイン。 Azure portal で、リソースの [キーとエンドポイント] タブの [エンドポイント] フィールドとして URL https://<your-custom-subdomain>.cognitiveservices.azure.com/ に含まれます |
contosoresource |
region |
{REGION-CODE} |
割り当てるリソースのリージョンを指定するリージョン コード。 Azure portal で、リソースの [キーとエンドポイント] タブの [場所/地域] フィールドにあります。 |
eastus |
リソースの割り当て状態を取得する
デプロイ リソース割り当てジョブの状態を取得するには、次の GET 要求を使います。 プレースホルダーの値をあなた自身の値に置き換えてください。
要求 URL
{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/resources/assign/jobs/{JOB-ID}?api-version={API-VERSION}
| プレースホルダー |
値 |
例 |
{ENDPOINT} |
API 要求を認証するためのエンドポイント。 |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
プロジェクトの名前。 この値は、大文字と小文字が区別されます。 |
myProject |
{JOB-ID} |
デプロイ割り当て状態を取得するジョブ ID。 これは、デプロイ リソースの割り当て要求に応答して API から受け取った operation-location ヘッダー値にあります。 |
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx |
{API-VERSION} |
呼び出している API のバージョン。 |
2022-10-01-preview |
要求を認証するには、次のヘッダーを使います。
| キー |
値 |
Ocp-Apim-Subscription-Key |
リソースへのキー。 API 要求の認証に使われます。 |
応答本文
要求を送信すると、次の応答が返されます。
status パラメーターが succeeded に変わるまで、このエンドポイントのポーリングを続けます。
{
"jobId":"{JOB-ID}",
"createdDateTime":"{CREATED-TIME}",
"lastUpdatedDateTime":"{UPDATED-TIME}",
"expirationDateTime":"{EXPIRATION-TIME}",
"status":"running"
}
デプロイ リソースの割り当てを解除する
プロジェクトからデプロイ リソースの割り当てを解除または削除するには、そのリソース リージョンに対するすべてのデプロイも削除します。
プロジェクトが不要になった場合は、Foundry から削除できます。
-
Foundry ホーム ページに移動します。 この手順を既に完了していてセッションがアクティブでない限り、サインインして認証プロセスを開始します。
- 削除したいプロジェクトを選択します Foundry での構築を続行
-
[管理センター] を選択します。
- [ プロジェクトの削除] を選択します。
ハブとそのすべてのプロジェクトを削除するには:
[概要] タブの [ハブ] セクションに移動します。
右側の [ハブの 削除] を選択します。
リンクをクリックすると、ハブを削除するための Azure portal が開きます。
リソースの割り当てを解除する
プロジェクトからデプロイ リソースの割り当てを解除または削除するには、以下の URL、ヘッダー、JSON 本文を使って POST 要求を送信します。
要求 URL
API 要求を作るときは、次の URL を使います。 プレースホルダーの値をあなた自身の値に置き換えてください。
{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/resources/:unassign?api-version={API-VERSION}
| プレースホルダー |
値 |
例 |
{ENDPOINT} |
API 要求を認証するためのエンドポイント。 |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
プロジェクトの名前。 この値は、大文字と小文字が区別されます。 |
myProject |
{API-VERSION} |
呼び出している API のバージョン。 |
2022-10-01-preview |
要求を認証するには、次のヘッダーを使います。
| キー |
値 |
Ocp-Apim-Subscription-Key |
リソースへのキー。 API 要求の認証に使われます。 |
本文
次のサンプル JSON を本文として使います。
{
"assignedResourceIds": [
"{AZURE-RESOURCE-ID}"
]
}
| キー |
プレースホルダー |
値 |
例 |
assignedResourceIds |
{AZURE-RESOURCE-ID} |
割り当て解除する完全なリソース ID パス。 Azure portal で、リソースの [プロパティ] タブの [リソース ID] フィールドにあります。 |
/subscriptions/a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1/resourceGroups/ContosoResourceGroup/providers/Microsoft.CognitiveServices/accounts/ContosoResource |
リソースの割り当て解除状態を取得する
デプロイ リソースの割り当て解除ジョブの状態を取得するには、次の GET 要求を使います。 プレースホルダーの値をあなた自身の値に置き換えてください。
要求 URL
{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/resources/unassign/jobs/{JOB-ID}?api-version={API-VERSION}
| プレースホルダー |
値 |
例 |
{ENDPOINT} |
API 要求を認証するためのエンドポイント。 |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
プロジェクトの名前。 この値は、大文字と小文字が区別されます。 |
myProject |
{JOB-ID} |
デプロイ割り当て状態を取得するジョブ ID。 デプロイ リソース割り当て解除要求の応答で API から受け取った operation-location ヘッダー値内にあります。 |
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx |
{API-VERSION} |
呼び出している API のバージョン。 |
2022-10-01-preview |
要求を認証するには、次のヘッダーを使います。
| キー |
値 |
Ocp-Apim-Subscription-Key |
リソースへのキー。 API 要求の認証に使われます。 |
応答本文
要求を送信すると、次の応答が返されます。
status パラメーターが "succeeded" に変化するまで、このエンドポイントのポーリングを続けます。
{
"jobId":"{JOB-ID}",
"createdDateTime":"{CREATED-TIME}",
"lastUpdatedDateTime":"{UPDATED-TIME}",
"expirationDateTime":"{EXPIRATION-TIME}",
"status":"running"
}
次のステップ
デプロイが完了したら、それを使用してテキストからエンティティを抽出できます。