Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Důležité
Položky označené (Preview) v tomto článku jsou aktuálně ve verzi Public Preview. Tato verze Preview je poskytována bez smlouvy o úrovni služeb a nedoporučujeme ji pro produkční úlohy. Některé funkce nemusí být podporované nebo můžou mít omezené možnosti. Další informace najdete v tématu Supplementální podmínky použití pro Microsoft Azure Verze Preview.
Agenti umělé inteligence jsou výkonnými pomocníky pro produktivitu, kteří můžou vytvářet pracovní postupy pro obchodní potřeby. Pozorovatelnost ale může být výzvou kvůli složitým vzorcům interakce. Vyhodnocovače agentů poskytují systematickou pozorovatelnost v agentských pracovních postupech měřením kvality, bezpečnosti a výkonu.
Pracovní postup agenta obvykle zahrnuje odůvodnění záměrů uživatelů, volání relevantních nástrojů a použití výsledků nástrojů k dokončení úloh, jako je aktualizace databáze nebo koncept sestavy. Pokud chcete vytvářet aplikace agentů připravené pro produkční prostředí, musíte vyhodnotit nejen konečný výstup, ale také kvalitu a efektivitu každého kroku pracovního postupu.
Foundry poskytuje integrované vyhodnocovače agentů, které fungují jako testy jednotek pro agentské systémy – přebírají zprávy agenta jako vstupní a výstupní binární skóre pass/fail (nebo škálované skóre převedené na binární skóre na základě prahových hodnot). Tyto vyhodnocovače podporují dva osvědčené postupy pro vyhodnocení agenta:
- Vyhodnocení systému – k prozkoumání komplexních výsledků agentického systému.
- Vyhodnocení procesu – ověření podrobného provádění, aby se dosáhlo výsledků.
| Vyhodnocovač | Nejlepší praxe | Použít, když | Purpose | Výstup |
|---|---|---|---|---|
| Dokončení úkolu (Preview) | Vyhodnocení systému | Vyhodnocení úspěšného dokončení úkolu v automatizaci pracovních postupů, interakcích AI orientovaných na cíle nebo v jakémkoli scénáři, ve kterém je dokončení úplného úkolu kritické | Měří, pokud agent dokončil požadovanou úlohu s použitelnou dodávkou, která splňuje všechny požadavky uživatele. | Binární soubor: Pass/Fail |
| Spokojenost zákazníků (Preview) | Vyhodnocení systému | Měření celkové spokojenosti uživatelů v konverzaci, zjišťování frustrace uživatelů | Měří holistické spokojenost uživatelů napříč šesti dimenzemi: užitečnost, úplnost, srozumitelnost, tón, rozlišení a adaptabilitu | Měřítko 1–5 Likert |
| Dodržování úkolů (Preview) | Vyhodnocení systému | Zajištění, aby agenti postupovali podle systémových pokynů, ověřování dodržování předpisů v regulovaných prostředích | Měří, jestli akce agenta dodržují přiřazené úkoly podle pravidel, postupů a omezení zásad na základě systémové zprávy a předchozích kroků. | Binární soubor: Pass/Fail |
| Efektivita navigace mezi úkoly | Vyhodnocení systému | Optimalizace pracovních postupů agentů, snížení nepotřebných kroků a ověřování známých optimálních cest (vyžaduje základní pravdu) | Měří, jestli agent efektivně volá nástroj k dokončení úlohy tím, že je porovná s očekávanými pořadími nástrojů. | Binární soubor: Pass/Fail |
| Řešení záměru (Preview) | Vyhodnocení systému | Scénáře zákaznické podpory, konverzační AI, systémy nejčastějších dotazů, kde je pochopení záměru uživatele nezbytné | Určuje, jestli agent správně identifikuje záměr uživatele. | Binární: Předání/selhání na základě prahové hodnoty (škálování 1–5) |
| Přesnost volání nástroje | Vyhodnocení procesů | Celkové hodnocení kvality volání nástrojů v systémech agentů s integrací nástrojů, interakcemi rozhraní API pro dokončení úloh | Měří, jestli agent provedl správné volání nástroje se správnými parametry k dokončení úlohy. | Binární: Předání/selhání na základě prahové hodnoty (škálování 1–5) |
| Výběr nástrojů | Vyhodnocení procesů | Ověřování kvality výběru nástrojů na platformách orchestrace, zajištění efektivního využití nástrojů bez redundance | Určuje, jestli agent vybral správné nástroje bez výběru nepotřebných nástrojů. | Binární soubor: Pass/Fail |
| Přesnost vstupu nástroje | Vyhodnocení procesů | Přísné ověřování parametrů nástrojů v produkčních prostředích, testy integrace rozhraní API, kritické pracovní postupy vyžadující 100% správnosti parametrů | Míry, pokud jsou všechny parametry volání nástroje správné napříč šesti striktními kritérii: uzemnění, dodržování předpisů typu, dodržování předpisů ve formátu, povinné parametry, žádné neočekávané parametry a vhodnost hodnot | Binární soubor: Pass/Fail |
| Využití výstupu nástroje | Vyhodnocení procesů | Ověřování správného použití odpovědí rozhraní API, výsledků databázových dotazů, výstupů hledání v důvodech agenta a odpovědích | Měří, jestli agent správně porozuměl a použil nástroj, v jeho odůvodnění a konečné odpovědi kontextově volal výsledky. | Binární soubor: Pass/Fail |
| Úspěch volání nástroje | Vyhodnocení procesů | Spolehlivost monitorovacích nástrojů, zjišťování selhání rozhraní API, problémy s vypršením časového limitu nebo technické chyby při provádění nástrojů | Míry, pokud byla volání nástroje úspěšná nebo vedla k technickým chybám nebo výjimkám | Binární soubor: Pass/Fail |
| Quality Grader (Preview) | Hodnocení kvality | Posuzuje celkovou kvalitu reakce na úrovni turn, včetně relevance, abstentionu, úplnosti odpovědí a volitelně uzemnění a pokrytí kontextu. | Umožňuje vyhodnocení kvality napříč více dimenzemi v jednom vyhodnocovači místo samostatného spouštění jednotlivých vyhodnocovačů. | Binární soubor: Pass/Fail |
Vyhodnocení systému
Vyhodnocení systému zkoumá kvalitu konečného výsledku pracovního postupu agenta. Tyto vyhodnocovače platí pro jednotlivé agenty a v systémech s více agenty pro hlavní orchestrátor nebo konečného agenta zodpovědného za dokončení úlohy:
- Dokončení úlohy – Dokončil agent plně požadovanou úlohu?
- Spokojenost zákazníka – Jak spokojení by byl uživatel s výkonem agenta?
- Dodržování úkolů – postupoval agent podle pravidel a omezení v jeho pokynech?
- Efektivita navigace úloh – provedl agent očekávané kroky efektivně?
- Řešení záměru – identifikoval agent správně záměry uživatele a vyřešil je?
Konkrétně pro textové výstupy z agentů můžete použít také vyhodnocovače kvality RAG, jako Relevance jsou a Groundedness které berou vstupy agentů k vyhodnocení konečné kvality odezvy.
Examples:
- ukázka dokončení Task (Preview)
- ukázka dodržování Task
- ukázka efektivity navigace Task
- ukázka Objektová ukázka rozlišení
Vyhodnocení procesů
Vyhodnocení procesů zkoumá kvalitu a efektivitu každého kroku v pracovním postupu agenta. Tyto vyhodnocovače se zaměřují na volání nástrojů spuštěná v systému za účelem dokončení úkolů:
- Přesnost volání nástroje – provedl agent správné volání nástroje se správnými parametry bez redundance?
- Výběr nástroje – vybral agent správné a nezbytné nástroje?
- Přesnost vstupu nástroje – zadal agent správné parametry pro volání nástrojů?
- Využití výstupu nástroje – Výsledkem volání nástroje je správné použití agenta, protože jeho důvodová a konečná odpověď?
- Úspěch volání nástroje – Bylo volání nástroje úspěšné bez technických chyb?
Examples:
- ukázka přesnosti volání nástroje nástroje
- Nástroj výběru
- ukázka přesnosti vstupu nástroje
- ukázka využití výstupu nástroje nástroje
- ukázka úspěšného volání nástroje Nástroj
Vyhodnocení kvality (Preview)
Hodnocení kvality posuzuje celkovou kvalitu reakce asistenta AI na úrovni turn. Hodnocení kvality je stejný vyhodnocovač kvality, který se používá v hodnocení agenta Microsoft Copilot Studio. Zkoumá více dimenzí kvality odezvy:
- Relevance – je odpověď relevantní pro dotaz uživatele?
- Abstention - Je agent řádně zdráhl, když nemůže nebo by neměl odpovědět?
- Úplnost odpovědi – řeší odpověď plně otázku uživatele?
Při zadání kontextu se klasifikační třída kvality navíc vyhodnotí takto:
- Uzemnění – je odpověď uzemněná v poskytnutém kontextu?
- Pokrytí kontextu – využívá odpověď relevantní informace v kontextu?
Examples:
Podpora modelů a nástrojů
U vyhodnocovačů s asistencí umělé inteligence můžete použít modely Azure OpenAI nebo OpenAI a modely bez odůvodnění pro soudce LLM. Pro komplexní vyhodnocení, které vyžaduje upřesnění odůvodnění, doporučujeme gpt-5-mini pro jeho rovnováhu mezi výkonem, náklady a efektivitou.
Podporované nástroje
Vyhodnocovače agentů podporují následující nástroje:
- Hledání souborů
- Function Tool (uživatelsky definované nástroje)
- MCP
- McP založená na znalostech
Následující nástroje v současné době mají omezenou podporu. Vyhněte se použití tool_call_accuracy, , tool input accuracy, tool_output_utilization, tool_call_successnebo groundedness vyhodnocovače, pokud vaše konverzace agenta zahrnuje volání těchto nástrojů:
- Azure AI Vyhledávač
- Zemnění Bingu
- Vlastní vyhledávání Bingu
- Základy SharePointu
- Interpretér kódu
- datový agent Fabric
- Vyhledávání na webu
Použití vyhodnocovačů agentů
Vyhodnocovače agentů vyhodnocují, jak dobře agenti umělé inteligence provádějí úlohy, řídí se pokyny a efektivně používají nástroje. Každý vyhodnocovací objekt vyžaduje konkrétní mapování dat a parametry:
| Vyhodnocovač | Požadované vstupy | Požadované parametry |
|---|---|---|
| Dokončení úkolu (Preview) |
query, ; responsevolitelné: tool_definitions |
deployment_name |
| Spokojenost zákazníků (Preview) | messages |
model |
| Dodržování úkolů (Preview) |
query, response |
deployment_name |
| Řešení záměru (Preview) |
query, response |
deployment_name |
| Přesnost volání nástroje | (query, response, tool_definitions) NEBO (query, tool_calls, tool_definitions) |
deployment_name |
| Výběr nástrojů | (query, response, tool_definitions) NEBO (query, tool_calls, tool_definitions) |
deployment_name |
| Přesnost vstupu nástroje |
query, , responsetool_definitions |
deployment_name |
| Využití výstupu nástroje |
query, , responsetool_definitions |
deployment_name |
| Úspěch volání nástroje | response |
deployment_name |
| Efektivita navigace mezi úkoly |
actions, expected_actions |
(žádný) |
Příklad vstupu
Testovací datová sada by měla obsahovat pole odkazovaná v mapování dat. Obě pole přijímají jednoduché řetězce nebo pole konverzací:
{"query": "What's the weather in Seattle?", "response": "The weather in Seattle is rainy, 14°C."}
{"query": "Book a flight to Paris for next Monday", "response": "I've booked your flight to Paris departing next Monday at 9:00 AM."}
Pokud chcete složitější interakce agentů s voláními nástrojů, použijte formát pole konverzací. Tento formát se řídí schématem zpráv OpenAI (viz schéma zpráv agenta). Systémová zpráva je volitelná, ale užitečná pro vyhodnocovače, které hodnotí chování agenta proti instrukcím, včetně task_adherence, task_completion, tool_call_accuracytool_selection, tool_input_accuracy, tool_output_utilizationa groundedness:
{
"query": [
{"role": "system", "content": "You are a travel booking agent."},
{"role": "user", "content": "Book a flight to Paris for next Monday"}
],
"response": [
{"role": "assistant", "content": [{"type": "tool_call", "name": "search_flights", "arguments": {"destination": "Paris", "date": "next Monday"}}]},
{"role": "tool", "content": [{"type": "tool_result", "tool_result": {"flight": "AF123", "time": "9:00 AM"}}]},
{"role": "assistant", "content": "I've booked flight AF123 to Paris departing next Monday at 9:00 AM."}
]
}
Formát definic nástrojů
Pole tool_definitions popisuje nástroje dostupné agentům. Řídí se schématem volání funkce OpenAI – seznam objektů nástrojů, kde každý objekt obsahuje ( type vždy "function") a function popisovač:
[
{
"type": "function",
"function": {
"name": "search_flights",
"description": "Search for available flights to a destination on a given date.",
"parameters": {
"type": "object",
"properties": {
"destination": { "type": "string", "description": "The destination city." },
"date": { "type": "string", "description": "The travel date in YYYY-MM-DD format." }
},
"required": ["destination", "date"]
}
}
}
]
Tento seznam zahrňte jako tool_definitions pole do testovací datové sady společně query s datovou sadou a response.
Příklad konfigurace
Syntaxe mapování dat:
-
{{item.field_name}}odkazuje na pole z testovací datové sady (například{{item.query}}). -
{{sample.output_items}}odkazuje na strukturovaný výstup agenta, včetně volání nástrojů a výsledků. Tuto možnost použijte pro vyhodnocovače, kteří potřebují úplný kontext interakce (task_adherence,tool_call_accuracy,tool_selection,tool_input_accuracy).tool_output_utilization -
{{sample.output_text}}odkazuje na odpověď prostého textu agenta. Tuto možnost použijte pro vyhodnocovače, kteří očekávají řetězcovou odpověď (napříkladcoherence, ).violence
Tady je příklad konfigurace dodržování úkolů:
testing_criteria = [
{
"type": "azure_ai_evaluator",
"name": "task_adherence",
"evaluator_name": "builtin.task_adherence",
"initialization_parameters": {"deployment_name": model_deployment},
"data_mapping": {
"query": "{{item.query}}",
"response": "{{item.response}}",
},
},
]
Podrobnosti o spuštění vyhodnocení a konfiguraci zdrojů dat najdete v tématu Spuštění vyhodnocení ze sady SDK .
Příklad výstupu
Vyhodnocovače agentů vrací výsledky pass/fail s odůvodněním. Pole výstupu klíče:
{
"type": "azure_ai_evaluator",
"name": "Task Adherence",
"metric": "task_adherence",
"label": "pass",
"reason": "Agent followed system instructions correctly",
"threshold": 3,
"passed": true
}
Pro vyhodnocovače, které před prahovou hodnotou (například intent_resolution a tool_call_accuracy) používají měřítko 1–5, zahrnuje výstup číselné score pole spolu s výsledkem pass/fail:
{
"type": "azure_ai_evaluator",
"name": "Intent Resolution",
"metric": "intent_resolution",
"label": "pass",
"score": 4,
"reason": "Agent correctly identified the user's intent to book a flight to Paris",
"threshold": 3,
"passed": true
}
Efektivita navigace mezi úkoly
Efektivita navigace úloh měří, zda agent provedl optimální sekvenci akcí porovnáním s očekávanou sekvencí (základní pravda). Tento vyhodnocovací modul použijte pro optimalizaci pracovního postupu a regresní testování.
{
"type": "azure_ai_evaluator",
"name": "task_navigation_efficiency",
"evaluator_name": "builtin.task_navigation_efficiency",
"initialization_parameters": {
"matching_mode": "exact_match" # Options: "exact_match", "in_order_match", "any_order_match"
},
"data_mapping": {
"actions": "{{item.actions}}",
"expected_actions": "{{item.expected_actions}}"
},
}
Odpovídající režimy:
| Mode | Description |
|---|---|
exact_match |
Trajektorie agenta se musí přesně shodovat se základní pravdou (pořadí a obsah). |
in_order_match |
Všechny základní kroky pravdy musí být uvedeny ve správné trajektorii agenta ve správném pořadí (jsou povoleny další kroky). |
any_order_match |
Všechny základní kroky pravdy se musí objevit v trajektorii agenta, na pořadí nezáleží (jsou povoleny další kroky). |
Formát akcí:
Pole actions přebírá seznam objektů zpráv, které se řídí schématem zprávy OpenAI. Každá zpráva představuje krok, který agent během konverzace provedl:
actions = [
{
"role": "assistant",
"content": [
{"type": "function_call", "name": "call_tool_A", "arguments": "{\"param\": \"value\"}"}
]
},
{
"role": "assistant",
"content": [
{"type": "function_call", "name": "call_tool_B", "arguments": "{}"}
]
},
]
Note
Pole actions a expected_actions pole používají různé formáty.
actions vyžaduje slovníky schématu zpráv OpenAI (představující skutečné chování agenta), zatímco expected_actions používá jednoduchý seznam názvů nástrojů (představující základní pravdu).
Formát očekávaných akcí:
Může expected_actions to být jednoduchý seznam očekávaných kroků:
expected_actions = ["identify_tools_to_call", "call_tool_A", "call_tool_B", "response_synthesis"]
Nebo řazená kolekce členů s názvy a parametry nástrojů pro podrobnější ověření:
expected_actions = (
["func_name1", "func_name2"],
{
"func_name1": {"param_key": "param_value"},
"func_name2": {"param_key": "param_value"},
}
)
Output:
Vrátí binární výsledek pass/fail plus přesnost, úplnost a skóre F1:
{
"type": "azure_ai_evaluator",
"name": "task_navigation_efficiency",
"passed": true,
"details": {
"precision_score": 0.85,
"recall_score": 1.0,
"f1_score": 0.92
}
}
Schéma zpráv agenta
Při použití formátu query pole konverzace a response postupujte podle struktury zpráv OpenAI:
- dotaz: Obsahuje historii konverzací, která vede k žádosti uživatele. Zahrňte systémovou zprávu, která poskytuje kontext pro vyhodnocovače, kteří vyhodnocují chování agenta podle pokynů.
- odpověď: Obsahuje odpověď agenta, včetně všech volání nástrojů a jejich výsledků.
Schéma zpráv:
[
{
"role": "system" | "user" | "assistant" | "tool",
"content": "string" | [ // string or array of content items
{
"type": "text" | "tool_call" | "tool_result",
"text": "string", // if type == text
"tool_call_id": "string", // if type == tool_call
"name": "string", // tool name if type == tool_call
"arguments": { ... }, // tool args if type == tool_call
"tool_result": { ... } // result if type == tool_result
}
]
}
]
Typy rolí:
| Úloha | Description |
|---|---|
system |
Pokyny agenta (volitelné, umístěné na začátku dotazu) |
user |
Uživatelské zprávy a požadavky |
assistant |
Odpovědi agenta, včetně volání nástrojů |
tool |
Výsledky provádění nástrojů |
Example:
{
"query": [
{"role": "system", "content": "You are a weather assistant."},
{"role": "user", "content": [{"type": "text", "text": "What's the weather in Seattle?"}]}
],
"response": [
{"role": "assistant", "content": [{"type": "tool_call", "tool_call_id": "call_123", "name": "get_weather", "arguments": {"city": "Seattle"}}]},
{"role": "tool", "content": [{"type": "tool_result", "tool_result": {"temp": "62°F", "condition": "Cloudy"}}]},
{"role": "assistant", "content": [{"type": "text", "text": "It's currently 62°F and cloudy in Seattle."}]}
]
}