Microsoft Foundry Agent Service を使用してエージェントを開発する
エージェントのようなエクスペリエンスを実現するための以前のソリューションでは、グラウンド データの参照やカスタム関数への接続など、何百行ものコードを実行する必要があります。 エージェント サービスは、そのすべてを簡素化し、数行のコードと Azure Functions または OpenAPI 定義ツールへの接続だけでクライアント側の関数呼び出しをサポートするようになりました。
注
Foundry Agent Service にはエージェントを構築する利点がいくつかありますが、ユース ケースに適したソリューションとは限りません。 たとえば、Microsoft 365 との統合を構築しようとしている場合は、Copilot Studio lite エクスペリエンスを選択し、複数のエージェントを調整しようとしている場合は、セマンティック カーネル エージェント フレームワークを選択できます。
この AI エージェントの基礎 ユニットでは、エージェントを構築するためのより多くのオプションについて説明します。
エージェントを使用するアプリの開発
Foundry Agent Service には、好みのプログラミング言語を使用してエージェントをアプリに統合するための SDK と REST API がいくつか用意されています。 このモジュールの後半の演習では Python に焦点を当てていますが、全体的なパターンは REST または他の言語 SDK でも同じです。
この図は、コードに実装する必要がある次の大まかな手順を示しています。
- プロジェクト エンドポイントと Entra ID 認証を使用して、エージェントの AI Foundry プロジェクト に接続します。
- Microsoft Foundry ポータルで作成した既存のエージェントへの参照を取得するか、次を指定する新しいエージェントを作成します。
- プロンプトの解釈と応答にエージェントが使用するプロジェクト内の モデル配置 。
- エージェントの機能と動作を決定する手順。
- エージェントがタスクの実行に使用できるツールとリソース。
- エージェントとのチャット セッションの スレッド を作成します。 エージェントとの会話はすべて、チャット中に生成されたメッセージ履歴とデータ成果物を保持するステートフル スレッドで実行されます。
- メッセージをスレッドに追加し、エージェントで呼び出します。
- スレッドの 状態を確認し、準備ができたら、メッセージとデータ成果物を取得します。
- 会話が終了するまで、前の 2 つの手順を チャット ループ として繰り返します。
- 完了したら、エージェントとスレッドを削除してリソースをクリーンアップし、不要になったデータを削除します。
注
このモジュールの後半の演習では、このパターンを実行する機会を得ることができます。
エージェントで使用できるツール
エージェントの強化された機能の多くは、ツールを使用するタイミングと方法を決定するエージェントの機能から生 まれます。 ツールを使用すると、エージェントが追加の機能を使用できるようになります。会話またはタスクで 1 つ以上のツールを使用する必要がある場合、エージェントはそのツールを呼び出して応答を処理します。
Microsoft Foundry ポータルでエージェントを作成するとき、または SDK を使用してコードでエージェントを定義するときに、ツールを割り当てることができます。
たとえば、使用できるツールの 1 つが コード インタープリターです。 このツールを使用すると、エージェントが書き込むカスタム コードを実行して、グラフを作成したり、データ分析の問題を解決したりする MATLAB コードなど、何かを実現できます。
使用可能なツールは、次の 2 つのカテゴリに分かれています。
知識ツール
ナレッジ ツールは、エージェントのコンテキストまたは知識を強化します。 使用可能なツールは次のとおりです。
- Bing検索: Bing検索結果を使用して、Web からのリアルタイムライブ データを含むプロンプトを表示します。
- ファイル検索: ベクター ストア内のファイルからのデータを入力するように求められます。
- Azure AI Search: Azure AI Search クエリの結果からのデータに基づいてプロンプトを生成します。
- Microsoft Fabric: Fabric データ エージェントを使用して、Fabric データ ストアからのデータに関するプロンプトを表示します。
ヒント
OpenAPI Spec アクション ツール (後述) を使用して、サードパーティのライセンスデータを統合することもできます。
アクション ツール
アクション ツールは、アクションを実行するか、関数を実行します。 使用可能なツールは次のとおりです。
- コード インタープリター: アップロードされたファイルにアクセスして処理できる、モデルで生成された Python コードのサンドボックス。
- カスタム関数: カスタム関数コードを呼び出します。関数の定義と実装を指定する必要があります。
- Azure 関数: サーバーレス Azure Functions でコードを呼び出します。
- OpenAPI 仕様: OpenAPI 3.0 仕様に基づいて外部 API を呼び出します。
組み込みツールとカスタム ツールを接続することで、エージェントがユーザーに代わって無数のタスクを実行できるようになります。