- 基本情報
- Studio Web での UiPath Agents
- Agent Builder での UiPath Agents
- UiPath のコード化されたエージェント

Agents ガイド
エージェントを構築する際の目標は、信頼性を確保すること、つまり適切な出力を一貫して提供可能な、信頼できるものにすることです。評価を行うことで、エージェントが適切に機能しているかどうかや、改良が必要かどうかを判断できます。
用語
評価は、入力と、出力に対して行われたアサーション (評価器) とのペアです。評価器は、エージェントの出力が期待される出力または期待される軌跡を満足するかどうかを評価するために使用する定義済みの条件またはルールです。
評価セットは、複数の評価と評価器を論理的なグループにまとめたものです。
評価結果は、完了した評価の実行のトレースであり、エージェントのパフォーマンスを評価するものです。評価の実行の間に、エージェントの正確性、効率、および意思決定能力が測定され、エージェントのパフォーマンスがどの程度良好かに基づいてスコアが付けられます。
評価スコアにより、特定の評価のアサーションに基づいてエージェントのパフォーマンスがどの程度良好であるかが判断されます。スコアは 0 から 100 の尺度で表されます。評価の実行に失敗した場合は、原因を診断してデバッグし、再実行する必要があります。
評価を大規模に作成する前に、まず 1 回限りのシナリオでエージェントをテストして、エージェントがタスクを実行できるかどうか、および出力が正しいかどうかを確認できます。エージェントが正しい出力を生成している場合、正しい実行から評価を作成できます。エージェントが正しい出力を生成していない場合は、出力を修正し、期待される出力で評価を作成できます。評価を最初から作成することもできます。
評価をテスト実行から作成する
- エージェントを設計したら、[デバッグ設定] を選択します。
- [デバッグ設定] ウィンドウで、ソリューションで使用されているリソースを確認し、次の手順を実行します。
-
テスト実行の入力を次の方法で指定します。
- 内容の手動入力
- 入力のシミュレーション: 大規模言語モデル (LLM) を使用して、エージェントの引数の入力を生成します。LLM に入力を自動生成させたり、プロンプトを提示させたりして、具体的な例を導くことができます。
- 実際のツールでテストするか、1 つ、複数、またはすべてのツールをシミュレートするかを設定します。
- ツールのシミュレーション: LLM を使用して、1 つ以上のエージェント ツールをシミュレートします。各ツールがどのように応答すべきかを説明し、エージェントが依存するツールセットの一部またはすべてをシミュレートします。
-
-
[保存してデバッグ] を選択します。
結果は、下部の [実行証跡] パネルに表示されます。インジケーターは、エージェントが実際のデータまたはシミュレートされたデータで実行されているときに表示できます。
- 出力が正しい場合は、[評価セットに追加] ボタンを選択します。出力が正しくない場合は、以下を行うことができます。
- プロンプトを改良する: 出力が正しくなるまで、プロンプトを調整してエージェントをテストします。
- 間違った出力から評価を作成する: 間違った出力に基づいて評価を生成し、期待される結果に一致するように手動で編集します。
-
テスト実行のリストが [評価セットに追加] ウィンドウに表示されます。評価に追加する実行の [既定のセットに追加] を選択します。
評価セットを作成済みの場合は、利用可能なドロップダウン リストから選択できます。
-
次に、[評価セット] パネルに移動します。以下の 3 つのオプションを使用できます。
- 事前に作成された評価セットを使用して、評価を整理する。
- シミュレートされた入力とツールを使用して新しいセットを生成する。
- 実際のデータとシミュレートされたデータを使用して、既存のセットに評価を追加する。
- [セットを評価] を選択して評価を実行します。また、評価するセットから特定の評価を選択することもできます。
- [結果] タブに移動して、評価スコアと詳細を表示します。
評価を最初から作成する
- エージェントの設計後、[評価セット] タブに移動し、[新規作成] を選択します。
[インポート] を選択して、他のエージェントの評価の既存の JSON データを使用することもできます。
- 評価セットに関連する名前を追加します。
-
[セットに追加] を選択して、新しい評価を作成します。セット内の新しい評価ごとに、以下の操作を行います。
-
名前を追加します。
-
[入力] フィールドの値 (定義された入力引数から継承) と、[期待される出力] の値を追加します。
-
[保存] を選択します。
-
- 次に、[評価器を設定] を使用して、評価セットに評価器を割り当てます。
1 つのセットに 1 つ以上の評価器を割り当てることができます。
-
[変更を保存] を選択します。
-
[評価セット] のメイン ページで、実行する各セットの [評価セットを実行] を選択します。
-
[結果] タブに移動して、評価スコアと詳細を表示します。
実行時のトレースから評価を作成する
エージェントの評価を実行時のトレースから直接作成できます。これにより、運用環境からのフィードバックを、設計時の改善のための実用的なテスト ケースに変換できます。
- まず、エージェントを実行します。
- Orchestrator で [オートメーション] > [ジョブ] に移動し、エージェントの実行のジョブのトレースを開きます。または、エージェントのインスタンスの管理のページに移動して、エージェントの実行のトレースを表示します。
- エージェントの実行に関するフィードバックを提供します。
- 各トレースに対して、高評価または低評価のアイコンを選択します。
- コメントを追加して、評価を実用的なものにします。
- エージェント定義で実行時のトレースを取得します。
- Studio Web でエージェントに戻り、[評価] > [評価セット] に移動します。
- [作成] ボタンの下にある [実行時のトレースを取得] を選択して、フィードバックを受け取ったトレースを取り込みます。
- トレースを評価セットに追加します。
- 取得したトレースから、[評価セットに追加] を選択します。
- 必要に応じて、入力と期待される出力を編集します。
- 選択した評価セットにトレースを保存します。
- 選択した評価セットにトレースを保存します。
追加した実行時のトレースは、評価セット内で実行時の実行としてわかりやすくラベル付けされるため、オフラインのテスト実行と簡単に区別できます。また、これらのトレースによってエージェントの全体的な評価スコアも自動的に更新されるため、実際のフィードバックによってエージェントのパフォーマンスがどのように向上するかをすぐに可視化できます。
評価を生成する
シミュレーションを使用して評価セットを作成することもできます。シミュレートされた入力とツールを使用して新しい評価セットを生成します (または既存の評価セットに追加します)。
- [作成] を選択します。
- [新しい評価セットを生成] を選択します。
既存のエージェント、その設計実行、引数に基づいて LLM に評価セットを自動生成させたり、プロンプトを提示させたりして、具体的な例を導くことができます。
詳しくは、「 評価でシミュレーションを設定する」をご覧ください。
評価器を定義する
[評価器] パネルを使用して、評価器を作成および管理します。既定では、各エージェントには事前定義された LLM ベースの既定の評価器があります。
独自の評価器を作成するには、次の手順を実行します。
- [新規作成] を選択します。
- 評価器の種類を選択します。
- LLM-as-a-judge (LLM による評価): 意味的類似性 – 独自の LLM ベースの評価器を作成します。
- 完全一致 – エージェントの出力が期待される出力に一致するかどうかを確認します。
- JSON の類似性 – 2 つの JSON 構造または値が類似するかどうかを確認します。
- 軌跡評価器 – AI を使用して、実行履歴と期待される動作に基づいてエージェントを判断します。
- [続行] を選択します。
- 評価器を設定します。
-
関連する名前と説明を追加します。
- 対象の出力フィールドを選択します。
- ルートレベルを対象にする場合 ([* (すべて)]): 出力全体を評価します。
- フィールドを固有に対象にする場合: 特定の第 1 レベルのフィールドを評価します。ドロップダウン メニューを使用してフィールドを選択します。表示される出力フィールドは、システム プロンプトに対して定義した出力引数から継承されます。
- プロンプトを追加します (LLM ベースの評価器の場合のみ)。
-
評価器の種類を選択する
自分のニーズに合った評価器の種類がわからない場合は、以下の推奨事項を確認します。
- LLM-as-a-judge (LLM による評価):
- ルート出力を対象にする場合の既定のアプローチとして推奨されます。
- 複雑な出力を柔軟に評価できます。
- 完全一致に加えて品質と正確性も評価できます。
- 推論、自然言語による回答、または構造化された複雑な出力を評価する場合に最適です。
- 決定論的 (完全一致または JSON の類似性):
- 完全一致が予期される場合に推奨されます。
- 出力要件が厳密に定義されている場合に最も効果的です。
- 複雑なオブジェクトを処理できますが、以下の場合に最適です。
- Boolean 値の回答 (true/false)
- 具体的な数値
- 文字列の完全一致
- プリミティブの配列
シミュレーションでは、実際のエンドポイントではなくモックされたツールとエスカレーション動作を通じて、安全で高速な、費用対効果の高いテストが可能になり、エージェントの評価が強化されます。評価レベルできめ細かい制御が可能なため、チームはシミュレートするコンポーネントを定義したり、実際の実行とシミュレートされた実行を同じ評価セット内で組み合わせたりすることができます。この柔軟性により、固定入力または生成された入力、およびリテラル出力と行動ベースのグレーディングの両方がサポートされ、テストのカバレッジ、再現性、およびエージェントが期待どおりに動作するかどうかを評価する能力が向上します。
詳しくは、「 エージェント ツールのシミュレーションを設定する」をご覧ください。
評価シミュレーションの設定方法
シミュレーションを使用して新しい評価セットを設定するには、以下の手順に従います。
- [評価セット] タブで、[作成]、[新しい評価セットを生成] の順に選択します。
- 生成する評価ケースの説明を入力します。
概要レベルのコンテキストや特定のシナリオを指定したり、関連するコンテンツを貼り付けて生成をガイドすることができます。このフィールドを空白のままにしても、評価ケースは自動的に生成されます。
- [評価を生成] を選択します。
Autopilot は複数の評価を生成します。評価ごとに、シミュレーションの指示、入力生成の指示、および期待される動作に関するメモを表示して編集できます。
- 使用する評価を選択し、[セットを追加] を選択します。
既存の評価のシミュレーションを設定するには、次の手順に従います。
- 任意の評価セットを開き、任意の評価で [編集] を選択します。[評価を編集] パネルが表示されます。
-
[入力の設定] セクションで、手動処理値または実行時の生成指示を使用して、入力データを定義または生成します。
入力データを手動で定義する場合は、[テスト] フィールドを True に設定して、そのデータがテスト シナリオの一部であることを示すことができます。
- [実行] セクションで、各ツールが動作をシミュレート (モック) するか、実際の呼び出しを実行するかを選択し、シミュレーションの指示を追加します。ツールの実行が既定の設定です。
- [アサーション] セクションで、評価が出力の一致に基づくか、エージェントの軌跡に基づくかを指定し、期待される動作と出力を記述します。
-
[保存] を選択して設定を適用します。
評価を使用できる場所
ワークフローに応じて、次の 2 つの場所で評価を使用できます。
-
デザイン キャンバスの下部のパネル – エージェントをアクティブに構築またはテストしているときに、評価に素早くアクセスできます。このパネルには以下が含まれます。
-
[履歴] タブ。過去の実行と完全なトレースが表示され、評価セットに実行を直接追加できます。
-
[評価] タブ。評価セットを表示したり、最近のスコアを確認したり、詳細をドリルダウンしたり、テストを個別にまたはフル セットとして再実行したりできます。また、実際の出力と期待される出力を比較し、出力が正しい場合は評価を実際の出力で更新することもできます。
-
[実行証跡] タブ。現在の実行のトレースの詳細をリアルタイムに追跡します。会話型エージェントの場合、このタブはチャットとして利用できます。エージェントをテストするための対話型のチャット ウィンドウが提供されると同時に、会話での各やり取りの実行証跡も表示されます。
-
- エージェント定義の [評価] タブ – 完全な評価ワークスペースを提供します。ここから、評価セットの作成と整理、評価器の割り当て、入力と期待される出力の設定、評価の大規模な実行を行うことができます。構造化された評価シナリオを設定し、評価アセットを継続的に管理するのに最適な場所です。
下部のパネルは、日常的な反復処理やデバッグの際に役立ちます。一方、評価セットを完全に管理および設定するには、専用の [評価] タブの方が効果的です。
評価プロンプトを構成する
出力が適切に構造化されていると、評価の信頼性が高まります。そのため、構造化された出力を利用することをお勧めします。これにより、一貫性が確保され、比較が容易になります。
以下に、出力全体を評価する定義済みのプロンプトの例を示します。
評価のエキスパートとして、以下の JSON コンテンツの意味的類似性を分析し、0 から 100 のスコアを決定してください。対応するフィールドの意味とコンテキストの等価性を比較してください。その際に、言語における有効な代替表現、同義語、および妥当なバリエーションを考慮すると同時に、精度と完全性について高い基準を維持してください。また、そのスコアを付けた理由を簡単・簡潔に説明し、スコアに妥当性を与えてください。
期待される出力: {{ExpectedOutput}}
実際の出力: {{ActualOutput}}
評価の数
エージェントのスコアでは、30+ の評価が良好なベンチマークと見なされます。
単純なエージェントの場合は、1 個から 3 個の評価セットで約 30 回の評価を目指します。より複雑なエージェントの場合は、少なくともその 2 倍以上の量にすることをお勧めします。
評価の数は以下に応じて異なります。
- エージェントの複雑さ
- 入力パラメーターの数
- 出力構造の複雑さ
- ツールの使用パターン
- 判断の分岐
- 入力
- 可能性がある入力の範囲: データ型、値の範囲、任意のフィールド
- エッジ ケース
- 使用パターン
- 共通のユースケース
- 異なるペルソナ
- エラーのシナリオ
評価セット
評価をセットにグループ化すると、評価を整理しやすくなります。たとえば、以下のようにすることができます。
- 出力を完全に評価するための 1 つのセット
- エッジ ケース用の別のセット
- スペルミスを処理するための別のセット
カバレッジの原則
- 論理的なカバレッジ: 入力の組み合わせ、エッジ ケース、境界条件を綿密に計画します。
- 冗長性の管理: 論理的に同等のケースあたり 3 回から 5 回の異なる評価を目指します。
- 量より質を重視: 評価を増やしても必ずしも結果が向上するとは限りません。意味のあるテストに重点を置きます。
評価を作成するタイミング
引数が安定するか完成したら、評価を作成します。これは、ユース ケースが確立され、プロンプト、ツール、コンテキストが確定することも意味します。引数を変更する場合は、それに応じて評価も調整する必要があります。追加の作業を最小限に抑えるには、明確に定義されたユース ケースを持つ安定したエージェントから始めることをお勧めします。同じ組織内または異なる組織間で、評価セットをエージェント間でエクスポートしてインポートできます。エージェントの設計が完了している限り、必要に応じて評価を移動することができます。評価を最初から再作成する必要はありません。