Note
この記事の機能は、GitHub Copilot harnessを搭載するエージェントやワークフローで使用されています。
使用率に基づく請求は、エージェントの使用、構築、テスト、評価に適用されます。 これらの行動はCopilotクレジットを消費することがあります。 詳細は「GitHub Copilot harnessで動くエージェントのコスト管理」をご覧ください。
すでに公開されているエージェントを選択するか、ワークフロー デザイナーを離れることなく、ノード内で直接新しいエージェントを作成できます。 インライン エージェントは、ワークフローに AI を導入する最も迅速な方法です。 ノードに指示を与え、必要に応じてツールと知識をアタッチします。これで完了です。
エージェントノードはフローをAIエージェントに渡し、AIエージェントは推論、ツール呼び出し、知識源から抽出して結果を返すことができる。 ステップが判断や多段階のオーケストレーション、フローの外からの情報を必要とするときに使ってください。
エージェント ノードを使用すると、次のことができます。
- 既存のエージェントに連絡してください。
- エージェントに、前の手順の動的コンテンツを含む自然言語の命令を与えます。
- アクションを実行できるように、エージェントにツール (モデル コンテキスト プロトコル (MCP) サーバーとコネクタ) を装備します。
- エージェントに知識を提供し (SharePoint サイト、パブリック Web サイト)、コンテンツから回答できるようにする。
- フローの後半のステップでエージェントの応答を活用してください。
エージェント ノードを追加する
Copilot Studioで ワークフロー に移動し、既存のワークフローを開くか、新しいワークフローを作成します。
- 新しいワークフロー: トリガーを構成するためにデザイナーにアクセスします。
- 既存のワークフロー: ワークフローを開き、[ ビルド ] タブに移動します。
[追加] パネルの [エージェント ] アイコンを選択します。 エージェント ノードの構成パネルが開きます。
エージェント ノードの既存のエージェントを選択する
エージェント ノード エディターの [ エージェント] で、次の 2 つのオプションのいずれかを選択します。
- 既存のエージェント: 一覧から発行済みエージェントを選択します。 エージェントは、既に構成されている手順、ツール、知識を使用して実行されます。
- このワークフローの新しいエージェント: このワークフローをスコープとするインライン エージェントを構築します。 エージェントの指示、ツール、知識、出力形状はノード自体で構成され、ワークフローと共に移動されます。 このオプションは、エージェントのジョブがこの自動化に固有であり、他の場所で共有する必要がない場合に使用します。
この記事の次のセクションでは、新しいインライン エージェントの構成について説明します。 既存のエージェントを選択する場合は、「 エージェントにメッセージを送信する」に進みます。
エージェント ノードの新しいエージェントを構成する
このワークフローで [新しいエージェント] を選択すると、構成パネルが展開され、エージェントを適切に整形できます。
インストラクション
インライン エージェントの場合、指示フィールドは、エージェントの職務内容と、実行ごとのプロンプトの両方の役割を果たします。 個別の [メッセージ] フィールドはありません。 エージェントが実行すべきことを平易な言葉で記述し、前のステップからの動的コンテンツを含めることで、この実行に必要なデータを提供します。
タスク、エージェントが期待できる入力、戻す応答の形式について具体的に指定します。 より明確な命令は、より信頼性の高い実行を意味します。
たとえば、ワークフローのトリガーが新しいメールが届いたときの場合、手順には次のように記載される可能性があります: Read the email below and decide whether it's a sales lead, a support request, or something else. Reply with a single word.の後に、トリガーからの件名と本文の変数が続きます。
エージェントを駆動するモデルを選択するには、手順ボックスのモデル選択ドロップダウンを使用してください。 タスクが複数のステップや慎重な判断を要する場合は、高性能なモデルを選択してください。 タスクが単純で大量に実行される場合は、より高速なモデルを選択します。
作業 IQ
Work IQ をオンにすると、エージェントは、メール、Teams、予定表、OneDrive、SharePointコンテキストなど、実行中のユーザーの最近の作業アクティビティを使用して応答を得られます。 このコンテキストは、ワークフローが人の代わりに動作し、個人のコンテキストによって回答の質が向上する場合に役立ちます。
Tools
ツールを使用すると、エージェントはメッセージの送信、レコードのクエリ、検索の実行、API の呼び出しなどのアクションを 実行 できます。 ツールがない場合、エージェントは読み取りと推論のみを実行できます。 ツールを使用すると、動作することもできます。
ツールをアタッチするには:
[ ツール ] セクションで、プラス記号 (+) を選択します。
[ツールの追加] で、目的のツールを参照または検索します。
ツールを選択して追加します。 1 つのエージェントに複数のツールを追加できます。
次の 2 種類のツールをアタッチできます。
- モデル コンテキスト プロトコル (MCP) サーバー: キュレーションされた一連の機能を公開する事前構築済みサーバー。
- コネクタ: Power Platform コネクタのアクション。
エージェントは、実行時に、呼び出す添付ツールの順序と引数を決定します。 ツール同士を接続する必要はありません。
知識
ナレッジはエージェントに読むものを与えます。 エージェントに質問すると、モデルが既に認識しているものだけに頼るのではなく、アタッチするソースでその回答を得ることができます。
ナレッジ ソースをアタッチするには:
[ ナレッジ ] セクションで、プラス記号 (+) を選択します。
[ ナレッジの追加] で、ソースの種類を選択します。
- パブリック Web サイト: エージェントがそれらのサイトのコンテンツを引用できるように、1 つ以上のパブリック URL のインデックスを作成します。
- SharePoint: SharePoint サイト、ライブラリ、または特定のドキュメントに接続し、エージェントが内部コンテンツに基づいて回答できるようにします。
URL を入力し、保存します。
社内ポリシー、製品仕様、顧客との契約、または Web サイトの最新の価格ページなど、正解がモデルの学習対象外の内容に依存する場合は、そのナレッジをモデルに組み込んでください。
アウトプット
[ 出力 ] ドロップダウンを使用して、エージェントから返される内容の形状を制御します。 この図形は、ダウンストリーム ワークフロー ステップが結果を使用する方法を決定します。
| 出力の種類 | 受け取るもの | いつ使用するか |
|---|---|---|
| テキスト応答 | 1 つの文字列。 | 下流のステップでは、エージェントの回答を挿入するだけです。 |
| 構造化された出力 | 名前付きフィールドを持つ定義済みのオブジェクト。 | スキーマを記述せずに一貫性のあるフィールドが必要です。 |
| カスタム構造化出力 | 定義した JSON スキーマに一致するオブジェクト。 | ダウンストリーム ワークフローには、分岐、列への書き込み、または API への送信を行うために、厳密でマシンが読み取り可能なフィールドが必要です。 |
構造化された出力を選択すると、各フィールドは、ダウンストリーム アクションが直接参照できる独自の動的コンテンツ トークンになります。
エージェントにメッセージを送信する
既存のエージェントを選択すると、ノードに メッセージ フィールドが表示されます。 このフィールドを使ってエージェントに このランで 何をすべきか伝えてください。 エージェントの指示、ツール、知識は、発行済みのエージェントに既に設定されています。
[ メッセージ ] フィールドに、この実行のプロンプトを書き込みます。 動的コンテンツ ピッカーを使用して以前の手順からトークンを挿入し、エージェントがリアルタイム データに基づいて推論するようにします。 たとえば、カレンダーイベントが作成されたときにトリガーされるワークフローでは、メッセージは Prepare a brief for の後に必須出席者変数が追加される場合があります。
Note
インライン エージェントは、個別のメッセージ フィールドを使用しません。 指示フィールドは、実行ごとのプロンプトとしても機能します。 手順を参照 してください。
不明な場合は、人的支援を依頼する
自信が持てない場合に人間の支援を要求するをオンにすると、エージェントが自分で行動するのに十分な自信がない時にエスカレートさせることができます。 エージェントは接続所有者に入力を電子メールで送信し、応答を待ってから続行します。
金融取引における例外処理、エッジケースの承認、顧客からのエスカレーションに対する判断など、判断を誤ることの代償が判断に時間がかかることよりも大きい、重大な決定を行う場合は、この設定を有効にしてください。
ワークフローでエージェントの応答を使用する
エージェント ノードが実行されると、ワークフローはエージェントがそのタスクを完了するまで待機します。 その後、エージェントの応答は動的コンテンツとして使用できるようになります。このコンテンツは、後続の手順で使用できます。
ダウンストリーム アクションでエージェントの応答を使用するには:
結果を使用する次のアクションを選択します。
入力するフィールドで動的コンテンツ ピッカーを開きます。
エージェント ステップから出力を選択します。
- テキスト応答出力: 単一のエージェント応答変数。
- 構造化またはカスタム構造化出力: 定義したフィールドごとに 1 つの変数。
一般的なパターン:
- メール本文、Teams メッセージ、またはドキュメントにテキスト応答を挿入します。
- 構造化されたフィールド (
priority == "high"など) でワークフローを分岐させます。 - 構造化フィールドを Dataverse、Excel、またはSharePoint listに書き込みます。
エージェント ノードのテストと評価
エージェントノードの構成が完了した後は、ワークフローを公開する前にテストを行い、期待どおりに動作することを確認してください。 テストを行うことで、ワークフロー全体を実行することなく、エージェントの指示、ツール、サポート情報ソース、入力、出力を個別に検証できます。
評価はテスト実行の結果に基づいて行われ、生成された応答の品質を評価する際に役立ちます。 テストと評価が組み合わさることで、反復的な開発ワークフローを支えています: Configure → Test → Evaluate → Improve。
エージェント ノードのテスト
エージェントのサイドパネルにあるテスト ペインを使用して、エージェント ノードを実行し、その出力を確認します。
エージェント ノードを選択して、そのプロパティのサイドパネルを開きます。
[テスト] タブを選びます。
手動で入力するか、前回のワークフロー実行時の入力値を使用します。
[テストの実行] を選択します。
テストの実行では、現在の構成を使用してエージェントを実行し、生成された出力を表示します。 テストを行うことで、エージェントが正常に動作し、期待通りの応答が得られることを確認できます。 テスト結果を生成した後、評価を使用して、その応答の品質を評価し、期待や要件にどの程度合致しているかを判断します。
エージェント ノードを評価する
テスト運転が成功したら、テスト方法を使用してその応答を評価します。
テスト手法を用いることで、適切な応答がどのようなものであるべきか (また、そうでないものはどのようなものか) を、自然言語で記述できます。 評価の際、エージェントの出力はこれらの基準に照らして評価されるため、意図した成果が達成されたかどうかを判断する一助となります。 テスト方法により、次のような基準を評価できます:
- その応答がユーザーの要求に応えているかどうか。
- 適切なツールが使用されたかどうか。
- 出力が期待される形式やスキーマに従っているかどうか。
- その応答が、エージェントの意図した動作と適合しているかどうか。
評価を実行するには、まずテスト実行を完了し、少なくとも 1 つのテスト方法を作成する必要があります。 テスト方法は手動で作成することも、自動生成を選択して自動的に生成することもできます。 AI が生成したテスト手法は、エージェントの指示と構成済みのツールに基づいており、評価作業をより迅速に開始するのに役立ちます。
テスト方法が複数ある場合は、各テスト方法の横にあるチェックボックスを使用して、評価実行に含めるテスト方法を指定してください。 チェック ボックスのチェックを外すと、テスト方法を削除することなく、一時的に除外できます。
テスト方法を削除するには、評価ペインの右上にある評価を実行ボタンの横にあるアイコンを選択して、モーダル評価エクスペリエンスを開きます。 そこで、削除するテスト方法を選択して削除します。
テスト結果を評価する方法:
エージェント ノードのテストを実行します。
評価を選択します。
採点者を作成するか、既存の採点者を選択択します。
評価の実行を選択します。
各採点者について、評価の結果は次の通りです:
- 合格または失格の結果。
- 結果を説明する証拠または論拠。
- 評価結果が不合格だった場合、評価基準を満たしていないと、エージェントの改善に役立つ AI が生成した推奨事項が表示されることがあります。
改善と再テスト
エージェントの開発は反復的なプロセスです。 評価結果を使用して、エージェントの以下の点を改善します:
- インストラクション
- Tools
- ナレッジ ソース
- 出力形式
変更を加えた後は、再度テストと評価を行い、改善効果が確認できるか検証してください。 このプロセスを繰り返すことで、エージェントを公開したり、本番ワークフローで使用したりする前に、エージェントの品質と信頼性を高めることができます。
既知の制限
現在、この評価エクスペリエンスには以下の制限があります:
- 評価はワークフロー内で作成された新規エージェントに対してのみ利用可能です。
- 評価にはカスタムモデルを選択することはできません。
- 評価を実行するには、少なくとも 1 回のテスト実行を完了し、少なくとも 1 つのテスト方法を構成する必要があります。
- 評価は、最新のテスト出力に対して実行されます。 エージェントの指示、ツール、ナレッジ、または構成を更新した場合は、再評価を行う前に新しいテストを実行してください。
- エージェント ノード 1 つにつき、最大 5 つの AI 生成テスト方法を生成できます。
- エージェントノード 1 台につき、1 日あたり最大 20 回の評価を実行できます。
自動化のシナリオ
エージェント ノードは、長いワークフローの 1 つのステップ として最適です。 前の手順では入力を収集して正規化し、エージェントは推論を行い、以降の手順は複数のシステムにわたって結果に基づいて動作します。
受信したサポートチケットの優先順位を決定する
ワークフローは、Dataverse で新しいチケットが作成されたときにトリガーされます。 前のステップでは、チケット本文、添付ファイル、顧客の最近のケース履歴を取得します。 その後、エージェント ノードはすべての情報を読み取り、製品ナレッジベースに基づいて判断を行い、category、priority、suggested_owner、draft_reply を含む構造化された出力を返します。 その後の手順では、priority に応じて分岐し、サービス停止が発生した場合は当直のエンジニアに連絡するか、チケットを割り当てて、レビュー待ちとして返信案をキューに入れます。
ポリシーに沿って経費報告書を確認する
ワークフローは、経費明細書が送信されたときにトリガーされます。 前のステップでは明細項目を読み込み、米ドル以外の金額を換算することで、エージェントが同一の基準で推論できるようにします。 エージェントノードはポリシー SharePointサイトに根ざし、1行ごとのcompliantフラグとreasonを返します。 その後の手順では、仕訳を自動的に承認して AP システムに転記するか、エージェントの理由を添付して承認手続きを開始し、財務担当者のレビューを待ちます。
会議のブリーフィングを準備する
ワークフローは毎朝実行され、Outlookから 1 日の会議が一覧表示され、各会議がループされます。 各会議ごとに、前のステップでDynamics 365からアカウントコンテキストを取得します。 エージェントノードはその後、 Work IQ を使って参加者との最近のメールやTeamsのスレッドをスキャンし、話題のポイント、未解決のリスク、推奨質問を返します。 次のステップで、出力をHTMLブリーフィングにフォーマットし、会議の30分前に電子メールで送信し、Teamsに適応型カードとして投稿します。
ドキュメントからデータを抽出する
ワークフローでは、ドキュメントのデータをさまざまな方法で使用できます。 よくある例としては、Outlook のメール添付ファイルや SharePoint のファイルが挙げられます。
メールの場合、Office 365 Outlook 新しいメールが届いたときのトリガーは、メールを受信した際にワークフローを開始します。 その後、エージェント ノードはトリガーの出力を使用して、メールの添付ファイルからデータを抽出することができます。
SharePoint の場合、SharePoint の「ファイル コンテンツの取得」ノードを使用してファイルを取得し、そのファイルをエージェント ノードに渡すことで、SharePoint サイトに保存されているドキュメントからデータを抽出できます。 その後の処理では、抽出された情報を使用して、レコードの更新、システムへのデータ入力、分析情報を生成することができます。
よく寄せられる質問
インライン エージェントを使用する必要がある場合と、既存のエージェントを使用する必要があるタイミング
エージェントのジョブが 1 つのワークフローに固有であり、指示、ツール、知識、出力など、すべてがワークフローと共に移動する必要がある場合は、 インライン エージェント を使用します。 インラインエージェントはセットアップが速く、構成が使用する手順のすぐ近くにあるため、理解しやすいです。
複数のワークフローやインターフェイスで同じエージェントが共有されている場合、またはエージェントが別のチームが管理しており、単にそのエージェントを呼び出したい場合には、既存のエージェントを使用してください。
インライン エージェントは、このワークフローの外部で再利用できますか?
No. インラインエージェントは、そのワークフローに対してスコープされています。 複数のワークフローで同じインライン エージェントを構築している場合は、発行されたエージェントに昇格させ、代わりに各ワークフローからそのエージェントを呼び出します。