Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Belangrijk
Items die in dit artikel zijn gemarkeerd (preview) zijn momenteel beschikbaar als openbare preview. Deze preview wordt aangeboden zonder een service level agreement en we raden deze niet aan voor productieworkloads. Bepaalde functies worden mogelijk niet ondersteund of hebben mogelijk beperkte mogelijkheden. Zie Aanvullende gebruiksvoorwaarden voor Microsoft Azure previews voor meer informatie.
AI-agents zijn krachtige productiviteitsassistenten die werkstromen kunnen maken voor zakelijke behoeften. Waarneembaarheid kan echter een uitdaging zijn vanwege hun complexe interactiepatronen. Agent evaluators bieden systematische waarneembaarheid in agentische werkstromen door kwaliteit, veiligheid en prestaties te meten.
Een agentwerkstroom omvat doorgaans redenering via gebruikersintenties, het aanroepen van relevante hulpprogramma's en het gebruik van hulpprogrammaresultaten om taken uit te voeren, zoals het bijwerken van een database of het opstellen van een rapport. Als u productieklare agentische toepassingen wilt bouwen, moet u niet alleen de uiteindelijke uitvoer evalueren, maar ook de kwaliteit en efficiëntie van elke stap in de werkstroom.
Foundry biedt ingebouwde agent evaluators die functioneren als eenheidstests voor agentische systemen: ze nemen agentberichten als invoer- en uitvoer binaire Pass/Fail-scores (of geschaalde scores geconverteerd naar binaire scores op basis van drempelwaarden). Deze evaluators ondersteunen twee aanbevolen procedures voor agentevaluatie:
- Systeemevaluatie: om de end-to-end-resultaten van het agentische systeem te onderzoeken.
- Procesevaluatie: om de stapsgewijze uitvoering te controleren om de resultaten te bereiken.
| Beoordelaar | Aanbevolen procedure | Wanneer gebruiken | Purpose | Uitvoer |
|---|---|---|---|---|
| Taakvoltooiing (preview) | Systeemevaluatie | End-to-end taaksucces beoordelen in werkstroomautomatisering, doelgerichte AI-interacties of scenario's waarbij volledige taakvoltooiing essentieel is | Metingen als de agent de aangevraagde taak heeft voltooid met een bruikbaar product dat voldoet aan alle gebruikersvereisten | Binair: doorgeven/mislukken |
| Klanttevredenheid (preview) | Systeemevaluatie | De algehele tevredenheid van gebruikers in een gesprek meten, frustratie van gebruikers detecteren | Meet holistische gebruikerstevredenheid in zes dimensies: behulpzaamheid, volledigheid, duidelijkheid, toon, resolutie en aanpassingsvermogen | 1-5 Likert-schaal |
| Naleving van taken (preview) | Systeemevaluatie | Ervoor zorgen dat agents de systeeminstructies volgen, naleving valideren in gereguleerde omgevingen | Metingen als de acties van de agent voldoen aan de toegewezen taken volgens regels, procedures en beleidsbeperkingen, op basis van het systeembericht en eerdere stappen | Binair: doorgeven/mislukken |
| Efficiëntie van taaknavigatie | Systeemevaluatie | Agentwerkstromen optimaliseren, onnodige stappen verminderen, valideren op basis van bekende optimale paden (vereist grondwaar) | Meet of de agent hulpprogramma's efficiënt aanroepen om een taak te voltooien door deze te vergelijken met verwachte hulpprogrammareeksen | Binair: doorgeven/mislukken |
| Intentieomzetting (preview) | Systeemevaluatie | Scenario's voor klantondersteuning, conversationele AI, veelgestelde vragen over systemen waarbij inzicht in de intentie van gebruikers essentieel is | Meet of de agent de intentie van de gebruiker correct identificeert | Binair: Doorgeven/mislukken op basis van drempelwaarde (1-5 schaal) |
| Nauwkeurigheid van hulpprogramma-aanroep | Procesevaluatie | Algemene beoordeling van de gesprekskwaliteit van hulpprogramma's in agentsystemen met hulpprogramma-integratie, API-interacties om de taken te voltooien | Meet of de agent het juiste hulpprogramma heeft aanroepen met de juiste parameters om de taak te voltooien | Binair: Doorgeven/mislukken op basis van drempelwaarde (1-5 schaal) |
| Selectie van hulpmiddel | Procesevaluatie | Het valideren van de kwaliteit van de keuze van hulpprogramma's in indelingsplatforms, waardoor efficiënt gebruik van hulpprogramma's zonder redundantie wordt gegarandeerd | Meet of de agent de juiste hulpprogramma's heeft geselecteerd zonder onnodige hulpprogramma's te selecteren | Binair: doorgeven/mislukken |
| Nauwkeurigheid van hulpmiddelinvoer | Procesevaluatie | Strikte validatie van hulpprogrammaparameters in productieomgevingen, API-integratietests, kritieke werkstromen waarvoor 100% parameter correctheid is vereist | Metingen als alle parameters voor het aanroepen van hulpprogramma's correct zijn in zes strikte criteria: aarding, typenaleving, opmaaknaleving, vereiste parameters, geen onverwachte parameters en waardegepastheid | Binair: doorgeven/mislukken |
| Uitvoergebruik van hulpprogramma's | Procesevaluatie | Het juiste gebruik van API-antwoorden, databasequeryresultaten, zoekuitvoer in agentredenering en antwoorden valideren | Metingen als de agent de resultaten van het aanroepen van hulpprogramma's contextueel begrijpt en gebruikt in de redenering en het uiteindelijke antwoord | Binair: doorgeven/mislukken |
| Geslaagde aanroep van hulpprogramma | Procesevaluatie | Betrouwbaarheid van hulpprogramma's bewaken, API-fouten, time-outproblemen of technische fouten bij het uitvoeren van hulpprogramma's detecteren | Metingen als het aanroepen van hulpprogramma's is geslaagd of heeft geresulteerd in technische fouten of uitzonderingen | Binair: doorgeven/mislukken |
| Quality Grader (preview) | Kwaliteitsevaluatie | Beoordeelt de algehele responskwaliteit op het draainiveau, inclusief relevantie, onthouding, volledigheid van antwoorden en optioneel geaardheid en contextdekking | Maakt kwaliteitsevaluatie mogelijk voor meerdere dimensies in één evaluator in plaats van afzonderlijke evaluators afzonderlijk uit te voeren | Binair: doorgeven/mislukken |
Systeemevaluatie
Systeemevaluatie onderzoekt de kwaliteit van het uiteindelijke resultaat van uw agentische werkstroom. Deze evaluators zijn van toepassing op afzonderlijke agents en, in systemen met meerdere agents, op de hoofdorchestrator of de uiteindelijke agent die verantwoordelijk is voor het voltooien van de taak:
- Taakvoltooiing : is de aangevraagde taak volledig voltooid door de agent?
- Klanttevredenheid : hoe tevreden zou een gebruiker zijn met de prestaties van de agent?
- Naleving van taken: heeft de agent de regels en beperkingen in de instructies gevolgd?
- Efficiëntie van taaknavigatie: heeft de agent de verwachte stappen efficiënt uitgevoerd?
- Intentieoplossing: heeft de agent de intenties van gebruikers correct geïdentificeerd en aangepakt?
Met name voor tekstuele uitvoer van agents kunt u ook RAG-kwaliteits evaluators toepassen, zoals Relevance en Groundedness die agentische invoer gebruiken om de uiteindelijke antwoordkwaliteit te beoordelen.
Examples:
- Taakvoorbeeld (preview)
- Task-nalevingsvoorbeeld
- Task navigatie-efficiëntievoorbeeld
- Voorbeeld van onbedoelde oplossing
Procesevaluatie
Procesevaluatie onderzoekt de kwaliteit en efficiëntie van elke stap in uw agentische werkstroom. Deze evaluators richten zich op de aanroepen van het hulpprogramma die in een systeem worden uitgevoerd om taken te voltooien:
- Nauwkeurigheid van hulpprogramma-aanroep : heeft de agent de juiste hulpprogramma-aanroepen gedaan met de juiste parameters zonder redundantie?
- Hulpprogrammaselectie : heeft de agent de juiste en benodigde hulpprogramma's geselecteerd?
- Nauwkeurigheid van hulpprogramma-invoer: heeft de agent de juiste parameters voor hulpprogramma-aanroepen opgegeven?
- Uitvoergebruik van hulpprogramma: heeft de agent de aanroep van het hulpprogramma correct gebruikt in de redenering en het uiteindelijke antwoord?
- Geslaagde aanroep van het hulpprogramma - Is de aanroepen van het hulpprogramma geslaagd zonder technische fouten?
Examples:
- Voorbeeld van nauwkeurigheid van aanroeptool
- voorbeeld van Toolselectie
- Voorbeeld van nauwkeurigheid van invoertool
- Voorbeeld uitvoergebruik vantool
- Voorbeeld van geslaagde tool-aanroep
Kwaliteitsevaluatie (preview)
De kwaliteitsevaluatie beoordeelt de algehele kwaliteit van de reactie van een AI-assistent op het turnniveau. De quality grader evaluator is dezelfde kwaliteit evaluator die wordt gebruikt in Microsoft Copilot Studio agent evaluatie. Er worden meerdere dimensies van de antwoordkwaliteit onderzocht:
- Relevantie : is het antwoord relevant voor de query van de gebruiker?
- Onthouding - Onthoudt de agent zich op de juiste wijze wanneer het niet of niet moet antwoorden?
- Volledigheid beantwoorden - Heeft het antwoord de vraag van de gebruiker volledig beantwoord?
Wanneer er context wordt opgegeven, evalueert de kwaliteitscontrole ook het volgende:
- Geaardheid - Is het antwoord geaard in de opgegeven context?
- Contextdekking : maakt het antwoord gebruik van de relevante informatie in de context?
Examples:
Ondersteuning voor modellen en hulpprogramma's
Voor ai-ondersteunde evaluators kunt u Azure OpenAI- of OpenAI-redenmodellen en niet-redenerende modellen voor de LLM-rechter gebruiken. Voor complexe evaluatie waarvoor verfijnde redenering is vereist, raden we aan om de balans tussen prestaties, kosten en efficiëntie te verdelen gpt-5-mini .
Ondersteunde hulpprogramma's
Agent-evaluators ondersteunen de volgende hulpprogramma's:
- Zoeken naar bestanden
- Functiehulpprogramma (door de gebruiker gedefinieerde hulpprogramma's)
- MCP
- Op kennis gebaseerde MCP
De volgende hulpprogramma's hebben momenteel beperkte ondersteuning. Vermijd het gebruik tool_call_accuracyvan, tool input accuracy, , tool_output_utilizationof tool_call_successgroundedness evaluators als uw agentgesprek oproepen naar deze hulpprogramma's bevat:
- Azure AI Zoeken
- Bing-onderbouwing
- Bing Aangepaste zoekopdrachten
- Basiskennis van SharePoint
- Code-interpreter
- Fabric gegevensagent
- Web Search
Agent-evaluators gebruiken
Agent evaluators beoordelen hoe goed AI-agents taken uitvoeren, instructies volgen en hulpprogramma's effectief gebruiken. Voor elke evaluator zijn specifieke gegevenstoewijzingen en parameters vereist:
| Beoordelaar | Vereiste invoer | Benodigde parameters |
|---|---|---|
| Taakvoltooiing (preview) |
query, ; responseoptioneel: tool_definitions |
deployment_name |
| Klanttevredenheid (preview) | messages |
model |
| Naleving van taken (preview) |
query, response |
deployment_name |
| Intentieomzetting (preview) |
query, response |
deployment_name |
| Nauwkeurigheid van hulpprogramma-aanroep | (query, response, tool_definitions) OF (query, tool_calls, tool_definitions) |
deployment_name |
| Selectie van hulpmiddel | (query, response, tool_definitions) OF (query, tool_calls, tool_definitions) |
deployment_name |
| Nauwkeurigheid van hulpmiddelinvoer |
query, , responsetool_definitions |
deployment_name |
| Uitvoergebruik van hulpprogramma's |
query, , responsetool_definitions |
deployment_name |
| Geslaagde aanroep van hulpprogramma | response |
deployment_name |
| Efficiëntie van taaknavigatie |
actions, expected_actions |
(geen) |
Voorbeeldinvoer
Uw testgegevensset moet de velden bevatten waarnaar wordt verwezen in uw gegevenstoewijzingen. Beide velden accepteren eenvoudige tekenreeksen of gespreksmatrices:
{"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."}
Gebruik berichtmatrices voor query en responsevoor complexere interacties met agentoproepen. Deze matrices gebruiken dezelfde OpenAI-berichtstructuur als het voorkeursschema messages . Zie De afzonderlijke indeling voor query's en antwoorden. Het systeembericht is optioneel, maar nuttig voor evaluators die het gedrag van agents beoordelen op basis van instructies, waaronder task_adherence, task_completiontool_call_accuracy, , tool_selection, , tool_input_accuracyen tool_output_utilizationgroundedness:
{
"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", "tool_call_id": "call_123", "name": "search_flights", "arguments": {"destination": "Paris", "date": "next Monday"}}]},
{"role": "tool", "tool_call_id": "call_123", "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."}
]
}
Indeling van hulpprogrammadefinities
In tool_definitions het veld worden de hulpprogramma's beschreven die beschikbaar zijn voor de agent. Het bevat een lijst met hulpprogrammaobjecten met een name, descriptionen JSON-schemaobject parameters :
[
{
"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"]
}
}
]
Neem deze lijst op als het tool_definitions veld in uw testgegevensset naast query en response.
Voorbeeld van configuratie
Syntaxis van gegevenstoewijzing:
-
{{item.field_name}}verwijst naar velden uit uw testgegevensset (bijvoorbeeld{{item.query}}). -
{{sample.output_items}}verwijst naar de gestructureerde uitvoer van de agent, inclusief hulpprogramma-aanroepen en resultaten. Gebruik dit voor evaluators die volledige interactiecontext nodig hebben (task_adherence,tool_call_accuracy,tool_selection,tool_input_accuracy, ).tool_output_utilization -
{{sample.output_text}}verwijst naar het antwoord op tekst zonder opmaak van de agent. Gebruik dit voor evaluators die een tekenreeksantwoord verwachten (bijvoorbeeldcoherence,violence).
Hier volgt een voorbeeldconfiguratie voor taakvolging:
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}}",
},
},
]
Zie Evaluaties uitvoeren vanuit de SDK voor meer informatie over het uitvoeren van evaluaties en het configureren van gegevensbronnen.
Voorbeelduitvoer
Agent-evaluators retourneren pass-/failresultaten met redenering. Sleuteluitvoervelden:
{
"type": "azure_ai_evaluator",
"name": "Task Adherence",
"metric": "task_adherence",
"label": "pass",
"reason": "Agent followed system instructions correctly",
"threshold": 3,
"passed": true
}
Voor evaluators die een 1-5-schaal gebruiken voordat drempelwaarden (zoals intent_resolution en tool_call_accuracy) worden bereikt, bevat de uitvoer een numeriek score veld naast het resultaat voor slagen/mislukken:
{
"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
}
Efficiëntie van taaknavigatie
Efficiëntie van taaknavigatie meet of de agent een optimale reeks acties heeft uitgevoerd door een vergelijking te maken met een verwachte reeks (grondwaar). Gebruik deze evaluator voor werkstroomoptimalisatie en regressietests.
{
"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}}"
},
}
Overeenkomende modi:
| Mode | Description |
|---|---|
exact_match |
Het traject van de agent moet exact overeenkomen met de grondwaar (volgorde en inhoud) |
in_order_match |
Alle grondwaarstappen moeten in de juiste volgorde worden weergegeven in het traject van de agent (extra stappen toegestaan) |
any_order_match |
Alle grondwaarstappen moeten worden weergegeven in het traject van de agent, volgorde maakt niet uit (extra stappen toegestaan) |
Indeling van acties:
Het actions veld gebruikt een lijst met berichtobjecten die het OpenAI-berichtschema volgen. Elk bericht vertegenwoordigt een stap die de agent heeft genomen tijdens het gesprek:
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
De actions en expected_actions velden gebruiken verschillende indelingen.
actions vereist OpenAI-berichtenschemawoordenlijsten (die het werkelijke gedrag van de agent vertegenwoordigen), terwijl expected_actions een eenvoudige lijst met hulpprogrammanamen wordt gebruikt (die de grondwaar vertegenwoordigen).
Verwachte indeling van acties:
Dit expected_actions kan een eenvoudige lijst met verwachte stappen zijn:
expected_actions = ["identify_tools_to_call", "call_tool_A", "call_tool_B", "response_synthesis"]
Of een tuple met hulpprogrammanamen en parameters voor gedetailleerdere validatie:
expected_actions = (
["func_name1", "func_name2"],
{
"func_name1": {"param_key": "param_value"},
"func_name2": {"param_key": "param_value"},
}
)
Output:
Retourneert een binair pass/fail resultaat plus precisie, relevante overeenkomsten en F1-scores:
{
"type": "azure_ai_evaluator",
"name": "task_navigation_efficiency",
"passed": true,
"details": {
"precision_score": 0.85,
"recall_score": 1.0,
"f1_score": 0.92
}
}
Schema van agentbericht
Agent-evaluators gebruiken berichtmatrices wanneer ze instructies, hulpprogramma-aanroepen en hulpprogrammaresultaten nodig hebben. Zie Berichten met hulpprogramma-aanroepen en afzonderlijke query- en antwoordindeling voor de canonieke berichtstructuur, roldefinities en voorbeeldgegevens.