次の方法で共有


Azure AI モデル推論エンドポイントを使用してモデルを実行する

Azure AI サービスにおいて Azure AI 推論を使用すると、顧客は 1 つのエンドポイントと資格情報を使用して、フラグシップ モデル プロバイダーの最も強力なモデルを実行できるようになります。 つまり、1 行のコードも変更することなく、モデルを切り替えてお使いのアプリケーションから実行できます。

この記事では、推論エンドポイントを使用してそれらを呼び出す方法について説明します。

エンドポイント

Azure AI サービスは、ユーザーが求めている作業の種類に応じて複数のエンドポイントを公開します。

  • Azure AI モデル推論エンドポイント
  • Azure OpenAI エンドポイント

Azure AI 推論エンドポイント (通常は https://<resource-name>.services.ai.azure.com/models の形式) を使用すると、顧客は同じ認証とスキーマを持つ 1 つのエンドポイントを使用して、リソース内にデプロイされたモデルの推論を生成できるようになります。 すべてのモデルでこの機能がサポートされています。 このエンドポイントは、Azure AI Model Inference API に従います。

AI サービスにデプロイされた Azure OpenAI モデルでは、Azure OpenAI API もサポートされます (通常は https://<resource-name>.openai.azure.com の形式)。 このエンドポイントでは、OpenAI モデルのすべての機能が公開され、アシスタント、スレッド、ファイル、バッチ推論などのさらに多くの機能がサポートされます。

Azure OpenAI エンドポイントを適用する方法の詳細については、Azure OpenAI サービスのドキュメント参照してください。

Azure AI モデル推論エンドポイントでのルーティング機能の使用

推論エンドポイントは、要求の内部の name パラメーターをデプロイの名前と照合することで、要求を特定のデプロイにルーティングします。 つまり、"デプロイは、特定の構成下で特定のモデルのエイリアスとして機能する" ということです。 この柔軟性により、特定のモデルをサービスで複数回デプロイできますが、必要に応じて異なる構成でデプロイできます。

ペイロード要求内のパラメーター 'model' にそのような名前が示されている、Meta-llama-3.2-8b-instruct モデルのルーティングのしくみを示す図。

たとえば、Mistral-large という名前のデプロイを作成した場合、そのようなデプロイを次のようにして呼び出すことができます。

pip のように、パッケージ マネージャーを使用してパッケージ azure-ai-inference をインストールします。

pip install azure-ai-inference

その後、パッケージを使用してモデルを使用できます。 次の例では、チャット入力候補を使用してクライアントを作成する方法を示します。

import os
from azure.ai.inference import ChatCompletionsClient
from azure.core.credentials import AzureKeyCredential

model = ChatCompletionsClient(
    endpoint="https://<resource>.services.ai.azure.com/models",
    credential=AzureKeyCredential(os.environ["AZUREAI_ENDPOINT_KEY"]),
)

サンプルを確認し、API リファレンス ドキュメントを参照して、作業を開始してください。

チャット モデルの場合は、次のように要求を作成できます。

from azure.ai.inference.models import SystemMessage, UserMessage

response = client.complete(
    messages=[
        SystemMessage(content="You are a helpful assistant."),
        UserMessage(content="Explain Riemann's conjecture in 1 paragraph"),
    ],
    model="mistral-large"
)

print(response.choices[0].message.content)

特定のモデル デプロイと一致しないモデル名を指定すると、そのモデルが存在しないというエラーが発生します。 モデル デプロイを追加して構成するで説明されているように、モデル デプロイを作成することで、ユーザーに提供するモデルを制御できます。

キーレス認証

Azure AI サービスの Azure AI モデル推論にデプロイされたモデルは、Microsoft Entra ID を使用したキーレス認証をサポートしています。 キーレス認証により、セキュリティが強化され、ユーザー エクスペリエンスが簡素化され、運用の複雑さが軽減され、最新の開発に対する堅牢なコンプライアンス サポートが提供されます。 これは、セキュリティで保護されたスケーラブルな ID 管理ソリューションを導入する組織にとって強力な選択肢となります。

キーレス認証を使用するには、リソースを構成し、推論を実行するユーザーにアクセス権を付与します。 構成したら、次のようにして認証できます。

pip のように、パッケージ マネージャーを使用してパッケージ azure-ai-inference をインストールします。

pip install azure-ai-inference

その後、パッケージを使用してモデルを使用できます。 次の例は、Entra ID でチャット入力候補を使用するクライアントを作成する方法を示しています。

import os
from azure.ai.inference import ChatCompletionsClient
from azure.identity import DefaultAzureCredential

client = ChatCompletionsClient(
    endpoint="https://<resource>.services.ai.azure.com/models",
    credential=DefaultAzureCredential(),
    credential_scopes=["https://cognitiveservices.azure.com/.default"],
)

制限事項

  • Azure OpenAI Batch は、Azure AI モデル推論エンドポイントでは使用できません。 Azure OpenAI ドキュメント内の Batch API サポートで説明されているように、専用のデプロイ URL を使用する必要があります。
  • リアルタイム API は、推論エンドポイントにおいてはサポートされていません。 専用のデプロイ URL を使用します。

次のステップ