Azure AI Foundry SDK は、Azure での AI アプリケーションの開発を簡略化するように設計された包括的なツールチェーンです。 これにより、開発者は次のことが可能になります。
- 1 つのインターフェイスを使用して、さまざまなモデル プロバイダーから人気のあるモデルにアクセスする
- モデル、データ、AI サービスを簡単に組み合わせて、AI 搭載のアプリケーションを構築する
- 開発、テスト、運用環境全体でアプリケーションの品質と安全性を評価、デバッグして向上させる
Azure AI Foundry SDK は、連携するように設計されたクライアント ライブラリとサービスのセットです。
Note
この記事は、 Azure AI Foundry プロジェクトに適用されます。 ここで示すコードは、 ハブ ベースのプロジェクトでは機能しません。 詳しくは、「プロジェクトの種類」をご覧ください。
Prerequisites
- 
アクティブなサブスクリプションを持つ Azure アカウント。 お持ちでない場合は、 無料試用版サブスクリプションを含む無料の Azure アカウントを作成します。 
- まだない場合は、Azure AI Foundry プロジェクトを作成します。 
- 
Azure AI Foundry Models を使用すると、お客様は、単一のエンドポイントと資格情報を使用して、フラグシップ モデル プロバイダーから最も強力なモデルを使用できます。 つまり、1 行のコードも変更することなく、モデルを切り替えてお使いのアプリケーションから実行できます。 プロジェクトの [概要] セクションで Azure AI Foundry プロジェクト エンドポイントをコピーします。 これはすぐに使用します。   Tip Azure AI Foundry プロジェクト エンドポイントが表示されない場合は、ハブベースのプロジェクトを使用しています。 (プロジェクト の種類を参照)。 Azure AI Foundry プロジェクトに切り替えるか、前の手順を使用して作成します。 
- プロジェクトへのアクセスに使用するのと同じアカウントを使用して、Azure CLI でサインインします。 - az login
Unified Projects クライアント ライブラリ
次の例は、さまざまなプログラミング言語を使用して Azure AI Foundry プロジェクトに接続する方法を示しています。 この接続は、SDK を介してモデル、データ、AI サービスにアクセスするための最初の手順です。 各コード ブロックは、プロジェクト エンドポイントのクライアントを認証して作成する方法を示しています。
Tip
以下のコード サンプルは開始点です。 以下のクライアント ライブラリ セクションで説明するように、これらのクライアントを使用して、モデルの操作、評価の実行などを行います。
Python 用 Azure AI Foundry Projects クライアント ライブラリは、1 つのプロジェクト エンドポイントに接続することで複数のクライアント ライブラリを一緒に使用できる統合ライブラリです。
- プロジェクト クライアント ライブラリをインストールする - pip install azure-ai-projects azure-identity
- コードでプロジェクト クライアントを作成します。 プロジェクトの [概要] ページから Azure AI Foundry プロジェクト エンドポイントをコピーし、接続文字列の値を更新します。 - from azure.identity import DefaultAzureCredential from azure.ai.projects import AIProjectClient project = AIProjectClient( endpoint="your_project_endpoint", # Replace with your endpoint credential=DefaultAzureCredential()) # The AIProjectClient lets you access models, data, and services in your project.
Java 用 Azure AI Foundry Projects クライアント ライブラリ (プレビュー) は、1 つのプロジェクト エンドポイントに接続することで複数のクライアント ライブラリを一緒に使用できる統合ライブラリです。
Important
この記事で "(プレビュー)" と付記されている項目は、現在、パブリック プレビュー段階です。 このプレビューはサービス レベル アグリーメントなしで提供されており、運用環境ではお勧めしません。 特定の機能はサポート対象ではなく、機能が制限されることがあります。 詳細については、「 Microsoft Azure プレビューの追加使用条件」を参照してください。
- インストールに次のパッケージを追加します。 - com.azure.ai.projects
- com.azure.core
 
- コードでプロジェクト クライアントを作成します。 プロジェクトの [概要] ページから Azure AI Foundry プロジェクト エンドポイントをコピーし、接続文字列の値を更新します。 - import com.azure.ai.projects.ProjectsClient; import com.azure.ai.projects.ProjectsClientBuilder; import com.azure.core.credential.AzureKeyCredential; String endpoint ="your_project_endpoint"; // Replace with your endpoint ProjectsClient projectClient = new ProjectsClientBuilder() .credential(new DefaultAzureCredential()) .endpoint(endpoint) .buildClient(); // The ProjectsClient enables unified access to your project's resources.
JavaScript 用 Azure AI Foundry Projects クライアント ライブラリは、1 つのプロジェクト エンドポイントに接続することで複数のクライアント ライブラリを一緒に使用できる統合ライブラリです。
- 依存関係をインストールする (プレビュー): - npm install @azure/ai-projects @azure/identity
- コードでプロジェクト クライアントを作成します。 プロジェクトの [概要] ページから Azure AI Foundry プロジェクト エンドポイントをコピーし、接続文字列の値を更新します。 - import { AIProjectClient } from '@azure/ai-projects'; import { DefaultAzureCredential } from '@azure/identity'; const endpoint = "your_project_endpoint"; // Replace with your actual endpoint const project = new AIProjectClient(endpoint, new DefaultAzureCredential()); const projectClient = await project.getAzureOpenAIClient({ // The API version should match the version of the Azure OpenAI resource apiVersion: "2024-12-01-preview" }); // The AIProjectClient lets you access models, data, and services in your project.
.NET 用 Azure AI Foundry Projects クライアント ライブラリは、1 つのプロジェクト エンドポイントに接続することで複数のクライアント ライブラリを一緒に使用できる統合ライブラリです。
- パッケージをインストールします。 - dotnet add package Azure.Identity dotnet add package Azure.Core dotnet add package Azure.AI.Inference
- コードでプロジェクト クライアントを作成します。 プロジェクトの [概要] ページから Azure AI Foundry プロジェクト エンドポイントをコピーし、接続文字列の値を更新します。 - using Azure; using Azure.Identity; using Azure.AI.Inference; using Azure.Core; using Azure.Core.Pipeline; var endpointUrl = "your_project_endpoint"; // Replace with your actual endpoint var credential = new DefaultAzureCredential(); AzureAIInferenceClientOptions clientOptions = new AzureAIInferenceClientOptions(); BearerTokenAuthenticationPolicy tokenPolicy = new BearerTokenAuthenticationPolicy( credential, new string[] { "https://cognitiveservices.azure.com/.default" } ); // The PerRetry position ensures the authentication policy is applied to every retry attempt. // This is important for robust authentication in distributed/cloud environments. clientOptions.AddPolicy(tokenPolicy, HttpPipelinePosition.PerRetry); var projectClient = new ChatCompletionsClient( endpointUrl, credential, clientOptions ); // The ChatCompletionsClient lets you interact with models and services in your project.
クライアントを作成したら、それを使用してモデルへのアクセス、評価の実行、他の AI サービスへの接続を行うことができます。 次のセクションでは、使用可能なクライアント ライブラリの一覧を示し、それらを特定の Azure AI サービスに使用する方法を示します。
- プロジェクト エンドポイントを使用すると、次のことができます。 - Azure OpenAI を含む Foundry モデルを使用する
- Foundry Agent Service を使用する
- クラウドで評価を実行する)
- アプリのトレースを有効にする
- 外部リソース接続のエンドポイントとキーを取得する
 
Azure AI Services クライアント ライブラリ
Azure AI サービスを使用するには、次のクライアント ライブラリと、プロジェクトホームページに一覧表示されているエンドポイントを使用できます。
C# でサポートされるサービス
| Service | Description | 参照ドキュメント | 
|---|---|---|
|  | 音声テキスト変換、テキスト読み上げ、翻訳、話者認識機能をアプリケーションに追加します。 | • Speech SDK for .NET • Speech NuGet パッケージ (Speech CLI) | 
|  | アプリケーションやサービスの有害なコンテンツを検出します。 | • Content Safety SDK for .NET • Content Safety NuGet パッケージ | 
|  | デジタル画像やリッチ メディア資産のコンテンツを分析します。 | • Vision SDK for .NET • Vision NuGet パッケージ | 
|  | 自然言語理解機能を使用してアプリケーションを構築します。 | • .NET 用言語 SDK (テキスト分析) • 言語 NuGet パッケージ (テキスト分析) • Language SDK for .NET (質問への回答) • 言語 NuGet パッケージ (質問への回答) | 
|  | AI を利用した翻訳テクノロジを使用して、100 以上の使用中の言語、危険にさらされている言語、消滅の危機に瀕している言語や方言を翻訳します。 | • Translator SDK for .NET (テキスト) • Translator NuGet パッケージ (テキスト) • Translator SDK for .NET (バッチ) • Translator NuGet パッケージ (バッチ) | 
|  | ドキュメントをインテリジェントなデータ ドリブン ソリューションに変換します。 | • ドキュメント インテリジェンス SDK for .NET • ドキュメント インテリジェンス NuGet パッケージ | 
|  | AI を利用したクラウド検索をモバイル アプリと Web アプリで使用できるようにします。 | • Azure AI Search SDK for .NET • Azure AI Search NuGet パッケージ | 
Java でサポートされるサービス
| Service | Description | 参照ドキュメント | 
|---|---|---|
|  | 音声テキスト変換、テキスト読み上げ、翻訳、話者認識機能をアプリケーションに追加します。 | • Speech SDK for Java • Speech Maven パッケージ | 
|  | アプリケーションやサービスの有害なコンテンツを検出します。 | • Content Safety SDK for Java • Content Safety Maven パッケージ | 
|  | デジタル画像やリッチ メディア資産のコンテンツを分析します。 | • Vision SDK for Java • Vision Maven パッケージ | 
|  | 自然言語理解機能を使用してアプリケーションを構築します。 | • Java 用言語 SDK (テキスト分析) • Language Maven パッケージ | 
|  | AI を利用した翻訳テクノロジを使用して、100 以上の使用中の言語、危険にさらされている言語、消滅の危機に瀕している言語や方言を翻訳します。 | • Translator SDK for Java (テキスト) • Translator Maven パッケージ (テキスト) | 
|  | ドキュメントをインテリジェントなデータ ドリブン ソリューションに変換します。 | • Java 用ドキュメント インテリジェンス SDK • ドキュメント インテリジェンス Maven パッケージ | 
|  | AI を利用したクラウド検索をモバイル アプリと Web アプリで使用できるようにします。 | • Azure AI Search SDK for Java • Azure AI Search Maven パッケージ | 
JavaScript でサポートされるサービス
| Service | Description | 参照ドキュメント | 
|---|---|---|
|  | 音声テキスト変換、テキスト読み上げ、翻訳、話者認識機能をアプリケーションに追加します。 | • Speech SDK for JavaScript • Speech npm パッケージ | 
|  | アプリケーションやサービスの有害なコンテンツを検出します。 | • JavaScript 用コンテンツセーフティSDK • コンテンツ セーフティ npm パッケージ | 
|  | デジタル画像やリッチ メディア資産のコンテンツを分析します。 | • Vision SDK for JavaScript • Vision npm パッケージ | 
|  | 自然言語理解機能を使用してアプリケーションを構築します。 | • JavaScript 用言語 SDK (テキスト分析) • 言語 npm パッケージ | 
|  | AI を利用した翻訳テクノロジを使用して、100 以上の使用中の言語、危険にさらされている言語、消滅の危機に瀕している言語や方言を翻訳します。 | • Translator SDK for JavaScript (テキスト) • Translator npm パッケージ (テキスト) | 
|  | ドキュメントをインテリジェントなデータ ドリブン ソリューションに変換します。 | • JavaScript 用ドキュメント インテリジェンス SDK • ドキュメント インテリジェンス npm パッケージ | 
|  | AI を利用したクラウド検索をモバイル アプリと Web アプリで使用できるようにします。 | • Azure AI 検索 SDK for JavaScript • Azure AI Search npm パッケージ | 
Python でサポートされているサービス
| Service | Description | 参照ドキュメント | 
|---|---|---|
|  | 音声テキスト変換、テキスト読み上げ、翻訳、話者認識機能をアプリケーションに追加します。 | • Speech SDK for Python • Speech PyPi パッケージ | 
|  | アプリケーションやサービスの有害なコンテンツを検出します。 | • Python 用のコンテンツセーフティSDK • Content Safety PyPi パッケージ | 
|  | デジタル画像やリッチ メディア資産のコンテンツを分析します。 | • Vision SDK for Python • Vision PyPi パッケージ | 
|  | 自然言語理解機能を使用してアプリケーションを構築します。 | • Python 用言語 SDK (テキスト分析) • 言語 PyPi パッケージ (テキスト分析) • Python 用言語 SDK (質問への回答) • 言語 PyPi パッケージ (質問への回答) • Python 用言語 SDK (言語会話) • 言語 PyPi パッケージ (言語会話) | 
|  | AI を利用した翻訳テクノロジを使用して、100 以上の使用中の言語、危険にさらされている言語、消滅の危機に瀕している言語や方言を翻訳します。 | • Translator SDK for Python (テキスト) • Translator PyPi パッケージ (テキスト) • Translator SDK for Python (バッチ) • Translator PyPi パッケージ (バッチ) | 
|  | ドキュメントをインテリジェントなデータ ドリブン ソリューションに変換します。 | • Python 用ドキュメント インテリジェンス SDK • ドキュメント インテリジェンス PyPi パッケージ | 
|  | AI を利用したクラウド検索をモバイル アプリと Web アプリで使用できるようにします。 | • Azure AI Search SDK for Python • Azure AI Search PyPi パッケージ |