Azure OpenAI API をインポートする
適用対象: すべての API Management レベル
この記事では、Azure OpenAI Service API を REST API として Azure API Management インスタンスにインポート する 2 つのオプションを示します。
- Azure OpenAI Service から直接 Azure OpenAI API をインポートする
- Azure OpenAI の OpenAPI 仕様をダウンロードして追加し、それを OpenAPI API として API Management に追加します。
前提条件
既存の API Management インスタンスがある。 まだない場合は、作成してください。
モデルがデプロイされた Azure OpenAI リソース。 モデル デプロイの詳細については、リソース デプロイ ガイドを参照してください。
デプロイの ID (名前) を書き留めておきます。 これは、API Management でインポートした API をテストする際に必要になります。
API Management インスタンスから Azure OpenAI リソースへのアクセス権を付与するアクセス許可。
オプション 1. Azure OpenAI Service から API をインポートする
Azure OpenAI API を Azure OpenAI Service から API Management に直接インポートできます。
Note
現在、この機能はワークスペースでは使用できません。
API をインポートすると、API Management によって自動的に次の構成が行われます。
- 各 Azure OpenAI REST API エンドポイントの操作。
- Azure OpenAI リソースにアクセスするために必要なアクセス許可が与えられたシステム割り当て ID。
- API 要求を Azure OpenAI Service エンドポイントに送信するバックエンド リソースと set-backend-service ポリシー。
- インスタンスのシステム割り当て ID を使用して Azure OpenAI リソースに対して認証できる authentication-managed-identity ポリシー。
- (必要に応じて) Azure OpenAI API によるトークン使用量の監視と管理に役立つポリシー。
Azure OpenAI API を API Management にインポートするには、次のようにします。
Azure portal で、API Management インスタンスに移動します。
左側のメニューの [API] で、[API]>[+ API の追加] を選択します。
[Azure リソースから作成] で、[Azure OpenAI Service] を選択します。
[基本] タブで、次の操作を行います。
インポートする Azure OpenAI リソースを選択します。
必要に応じて、Azure OpenAI API のバージョンを選択します。 どれかを選択しないと、運用環境に対応した最新の REST API バージョンが既定で使用されます。
API の表示名と、必要に応じて説明を入力します。
[ベース URL] に、API Management インスタンスから Azure OpenAI API エンドポイントへのアクセスに使用するパスを追加します。 [OpenAI SDK の互換性を確保する] (推奨) を有効にした場合、ベース URL に
/openai
が自動的に追加されます。たとえば、API Management ゲートウェイ エンドポイントが
https://contoso.azure-api.net
である場合、[ベース URL] をhttps://contoso.azure-api.net/my-openai-api/openai
のように設定します。必要に応じて、API に関連付ける 1 つ以上の製品を選択します。 [次へ] を選択します。
[ポリシー] タブで、必要に応じて、Azure OpenAI API トークンの使用量を監視および管理するポリシーを有効にします。 選択した場合は、設定を入力するか、API の
azure-openai-token-limit
およびazure-openai-emit-token-metric
ポリシーを定義する既定値をそのまま使用します。 後でポリシー構成を設定または更新することもできます。 [確認および作成] を選択します。設定が検証されたら、[作成] を選択します。
オプション 2. OpenAPI 仕様を API Management に追加する
または、Azure OpenAI REST API の OpenAPI 仕様を手動でダウンロードし、OpenAPI API として API Management に追加します。
OpenAPI の仕様をダウンロードする
2024-02-01 GA バージョンなど、Azure OpenAI REST API の OpenAPI 仕様をダウンロードします。
テキスト エディターで、ダウンロードした仕様ファイルを開きます。
仕様の
servers
要素で、Azure OpenAI Service エンドポイント名を仕様のurl
およびdefault
エンドポイントのプレースホルダー値に置き換えます。 たとえば、Azure OpenAI Service エンドポイントがcontoso.openai.azure.com
である場合、servers
要素を次の値で更新します。- url:
https://contoso.openai.azure.com/openai
- 既定のエンドポイント:
contoso.openai.azure.com
[...] "servers": [ { "url": "https://contoso.openai.azure.com/openai", "variables": { "endpoint": { "default": "contoso.openai.azure.com" } } } ], [...]
- url:
仕様の API
version
の値を書き留めておきます。 これは、API をテストするために必要です。 例:2024-02-01
。
OpenAPI 仕様を API Management に追加する
- Azure portal で、API Management インスタンスに移動します。
- 左側のメニューで、[API]>[+ API の追加] を選択します。
- [新しい API の定義] で、[OpenAPI] を選択します。 API の [表示名] と [名前] を入力します。
- API Management インスタンス内の Azure OpenAI API エンドポイントにアクセスするために、
/openai
で終わる API URL サフィックスを入力します。 例:my-openai-api/openai
。 - [作成] を選択します
API は OpenAPI 仕様からインポートされ、操作が表示されます。
Azure OpenAI API への認証を構成する
Azure OpenAI API に対して認証を行うには、API キーまたはマネージド ID を指定します。 Azure OpenAI API を API Management インスタンスに直接インポートした場合、API Management インスタンスのマネージド ID を使用した認証が自動的に構成されます。
OpenAPI 仕様から Azure OpenAI API を追加した場合は、認証を構成する必要があります。 API Management ポリシーを使用した認証の構成について詳しくは、「Azure OpenAI API の認証と承認」を参照してください。
Azure OpenAI API をテストする
Azure OpenAI API が期待どおりに動作していることを確認するには、API Management テスト コンソールでテストします。 API をテストするには、Azure OpenAI リソースに構成されているモデル デプロイ ID (名前) を指定する必要があります。
前の手順で作成した API を選びます。
[テスト] タブを選びます。
Azure OpenAI リソースにデプロイしたモデルと互換性のある操作を選択します。 ページにパラメーターとヘッダーのフィールドが表示されます。
[テンプレート パラメーター] に、次の値を入力します。
必要に応じて、他のパラメーターとヘッダーを入力します。 操作によっては、要求本文の構成または更新が必要になる場合があります。
Note
テスト コンソールでは、API Management によって Ocp-Apim-Subscription-Key ヘッダーが自動的に設定され、組み込みの オール アクセス サブスクリプションのサブスクリプション キーが構成されます。 このキーを使用すると、API Management インスタンス内のすべての API にアクセスできます。 必要に応じて、 HTTP 要求の横にある "目" のアイコンを選択して、 Ocp-Apim-Subscription-Key ヘッダーを表示します。
[Send] を選択します。
テストが成功すると、バックエンドは成功した HTTP 応答コードと一部のデータで応答します。 応答に追加されるのは、Azure OpenAI API の使用量を監視および管理するのに役立つトークン使用状況データです。
Azure OpenAI API のキャッシュ ポリシー
API Management には、Azure OpenAI Service API のインポート時に構成できる azure-openai-token-limit
および azure-openai-emit-token-metric
ポリシーに加えて、Azure OpenAI API のパフォーマンスの最適化と待機時間の短縮に役立つ次のキャッシュ ポリシーが用意されています。
azure-openai-semantic-cache-store
azure-openai-semantic-cache-lookup
関連するコンテンツ
関連トピック
- API のインポートの制限事項
- OpenAPI 仕様のインポート
- SOAP API のインポート
- SOAP API のインポートと REST への変換
- App Service API をインポートする
- コンテナー アプリ API をインポートする
- Websocket API のインポート
- GraphQL API のインポート
- GraphQL スキーマをインポートし、フィールド リゾルバーを設定する
- Azure 関数アプリをインポートする
- Azure ロジック アプリをインポートする
- Service Fabric サービスをインポートする
- Azure OpenAI API をインポートする
- OData API をインポートする
- SAP OData メタデータをインポートする
- gRPC API をインポートする
- API の編集