Agentutvärderingar

Important

Objekt markerade (förhandsversion) i den här artikeln är för närvarande i offentlig förhandsversion. Den här förhandsversionen tillhandahålls utan ett serviceavtal och vi rekommenderar det inte för produktionsarbetsbelastningar. Vissa funktioner kanske inte stöds eller har begränsade funktioner. Mer information finns i Supplemental Terms of Use for Microsoft Azure Previews.

AI-agenter är kraftfulla produktivitetsassistenter som kan skapa arbetsflöden för affärsbehov. Observerbarhet kan dock vara en utmaning på grund av deras komplexa interaktionsmönster. Agentutvärderingar ger systematisk observerbarhet i agentiska arbetsflöden genom att mäta kvalitet, säkerhet och prestanda.

Ett agentarbetsflöde innebär vanligtvis att man resonerar med hjälp av användar avsikter, anropar relevanta verktyg och använder verktygsresultat för att slutföra uppgifter som att uppdatera en databas eller utarbeta en rapport. För att skapa produktionsklara agentiska program måste du utvärdera inte bara de slutliga utdata, utan även kvaliteten och effektiviteten för varje steg i arbetsflödet.

Foundry tillhandahåller inbyggda agentutvärderingar som fungerar som enhetstester för agentiska system – de tar agentmeddelanden som indata- och utdatabinärt Pass/Fail-poäng (eller skalade poäng konverterade till binära poäng baserat på tröskelvärden). Dessa utvärderare stöder två metodtips för agentutvärdering:

  • Systemutvärdering – för att undersöka resultatet från slutpunkt till slutpunkt för det agentiska systemet.
  • Processutvärdering – för att verifiera den stegvisa körningen för att uppnå resultatet.
Utvärderare Bästa praxis Använd när Purpose Resultat
Slutförd aktivitet (förhandsversion) Systemutvärdering Utvärdera lyckade uppgifter från slutpunkt till slutpunkt i arbetsflödesautomation, målinriktade AI-interaktioner eller alla scenarier där slutförande av fullständiga uppgifter är kritiskt Mått om agenten slutförde den begärda uppgiften med en användbar slutprodukt som uppfyller alla användarkrav Binär: Pass/Fail
Kundnöjdhet (förhandsversion) Systemutvärdering Mäta den övergripande användarnöjdheten i en konversation, identifiera användarnas frustration Mäter holistisk användarnöjdhet i sex dimensioner: användbarhet, fullständighet, klarhet, ton, upplösning och anpassningsbarhet 1–5 Likert-skala
Uppgiftsefterlevnad (förhandsversion) Systemutvärdering Se till att agenter följer systeminstruktioner och verifierar efterlevnad i reglerade miljöer Mäter om agentens åtgärder följer dess tilldelade uppgifter enligt regler, procedurer och principbegränsningar, baserat på dess systemmeddelande och tidigare steg Binär: Pass/Fail
Aktivitetsnavigeringseffektivitet Systemutvärdering Optimera agentarbetsflöden, minska onödiga steg, validera mot kända optimala sökvägar (kräver grundsanning) Mäter om agenten gjorde verktygsanrop effektivt för att slutföra en uppgift genom att jämföra dem med förväntade verktygssekvenser Binär: Pass/Fail
Avsiktsmatchning (förhandsversion) Systemutvärdering Kundsupportscenarier, konversations-AI, vanliga frågor och svar-system där det är viktigt att förstå användar avsikter Mäter om agenten identifierar användarens avsikt korrekt Binärt: Pass/Fail baserat på tröskelvärde (skala 1–5)
Noggrannhet för verktygsanrop Processutvärdering Övergripande verktyg anropar kvalitetsbedömning i agentsystem med verktygsintegrering, API-interaktioner för att slutföra sina uppgifter Mäter om agenten gjorde rätt verktygsanrop med rätt parametrar för att slutföra uppgiften Binärt: Pass/Fail baserat på tröskelvärde (skala 1–5)
Val av verktyg Processutvärdering Validering av valkvalitet för verktyg i orkestreringsplattformar, vilket säkerställer effektiv användning av verktyg utan redundans Mäter om agenten valde rätt verktyg utan att välja onödiga verktyg Binär: Pass/Fail
Precision för verktygsinmatning Processutvärdering Strikt validering av verktygsparametrar i produktionsmiljöer, API-integreringstester, kritiska arbetsflöden som kräver 100% parametern är korrekt Mått om alla parametrar för verktygsanrop är korrekta i sex strikta kriterier: grund, typefterlevnad, formatefterlevnad, obligatoriska parametrar, inga oväntade parametrar och värde lämplighet Binär: Pass/Fail
Verktygsutdataanvändning Processutvärdering Validera korrekt användning av API-svar, databasfrågeresultat, sökutdata i agentens resonemang och svar Mått om agenten förstod korrekt och använde verktyget anropar resultat kontextuellt i sitt resonemang och slutliga svar Binär: Pass/Fail
Verktygsanrop lyckades Processutvärdering Övervaka verktygets tillförlitlighet, identifiera API-fel, timeout-problem eller tekniska fel vid verktygskörning Mått om verktygsanrop lyckades eller resulterade i tekniska fel eller undantag Binär: Pass/Fail
Kvalitetsklassare (förhandsversion) Kvalitetsutvärdering Utvärderar den övergripande svarskvaliteten på turnivå, inklusive relevans, nedlagda röster, svars fullständighet och valfritt grundat och sammanhangstäckning Möjliggör kvalitetsutvärdering över flera dimensioner i en enskild utvärderare i stället för att köra enskilda utvärderare separat Binär: Pass/Fail

Systemutvärdering

Systemutvärderingen undersöker kvaliteten på det slutliga resultatet av ditt agentiska arbetsflöde. Dessa utvärderare gäller för enskilda agenter och, i system med flera agenter, för huvudorkestratorn eller den slutliga agenten som ansvarar för slutförande av uppgifter:

  • Slutförd uppgift – slutförde agenten den begärda aktiviteten?
  • Kundnöjdhet – Hur nöjd skulle en användare vara med agentens prestanda?
  • Uppgiftsefterlevnad – följde agenten reglerna och begränsningarna i sina instruktioner?
  • Aktivitetsnavigeringseffektivitet – utförde agenten de förväntade stegen effektivt?
  • Avsiktsmatchning – Identifierade och åtgärdade agenten användarens avsikter korrekt?

Mer specifikt för textutdata från agenter kan du även använda RAG-kvalitetsutvärderingar som Relevance och Groundedness som tar agentiska indata för att utvärdera den slutliga svarskvaliteten.

Examples:

Processutvärdering

Processutvärderingen undersöker kvaliteten och effektiviteten i varje steg i ditt agentiska arbetsflöde. Dessa utvärderare fokuserar på de verktygsanrop som körs i ett system för att utföra uppgifter:

  • Noggrannhet för verktygsanrop – gjorde agenten rätt verktygsanrop med rätt parametrar utan redundans?
  • Val av verktyg – Valde agenten rätt och nödvändiga verktyg?
  • Precision för indata för verktyg – angav agenten rätt parametrar för verktygsanrop?
  • Verktygsutdataanvändning – Har agenten korrekt använt verktygets anrop resulterar i dess resonemang och slutliga svar?
  • Lyckat verktygsanrop – lyckades verktygets anrop utan tekniska fel?

Examples:

Kvalitetsutvärdering (förhandsversion)

Kvalitetsutvärderingen utvärderar den övergripande kvaliteten på en AI-assistents svar på turnivå. Utvärderaren för kvalitetsklassare är samma kvalitetsutvärdering som används i Microsoft Copilot Studio agentutvärdering. Den undersöker flera dimensioner av svarskvalitet:

  • Relevans – är svaret relevant för användarens fråga?
  • Röstnedläggelse – avstår agenten på lämpligt sätt när den inte kan eller inte bör svara?
  • Svars fullständighet – tar svaret fullständigt upp användarens fråga?

När kontext tillhandahålls utvärderar kvalitetsklassaren dessutom:

  • Groundedness – är svaret grundat i det angivna sammanhanget?
  • Kontexttäckning – använder svaret relevant information i kontexten?

Examples:

Stöd för modell och verktyg

För AI-assisterade utvärderare kan du använda Azure OpenAI- eller OpenAI-reasoningsmodeller och icke-resonemangsmodeller för LLM-domaren. För komplex utvärdering som kräver förfinade resonemang rekommenderar gpt-5-mini vi för dess balans mellan prestanda, kostnad och effektivitet.

Verktyg som stöds

Agentutvärderingar stöder följande verktyg:

  • Filsökning
  • Funktionsverktyg (användardefinierade verktyg)
  • MCP
  • Kunskapsbaserad MCP

Följande verktyg har för närvarande begränsat stöd. Undvik att använda tool_call_accuracy, tool input accuracy, tool_output_utilization, tool_call_successeller groundedness utvärderare om agentkonversationen innehåller anrop till dessa verktyg:

  • Azure AI-sökning
  • Grundläggning i Bing
  • Anpassad Bing-sökning
  • SharePoint Grundläggning
  • Kodtolkare
  • Fabric dataagent
  • Web Search

Använda agentutvärderingar

Agentutvärderingar utvärderar hur väl AI-agenter utför uppgifter, följer instruktioner och använder verktyg effektivt. Varje utvärderare kräver specifika datamappningar och parametrar:

Utvärderare Obligatoriska indata Obligatoriska parametrar
Slutförd aktivitet (förhandsversion) query, response; valfritt: tool_definitions deployment_name
Kundnöjdhet (förhandsversion) messages model
Uppgiftsefterlevnad (förhandsversion) query, response deployment_name
Avsiktsmatchning (förhandsversion) query, response deployment_name
Noggrannhet för verktygsanrop (query, response, tool_definitions) ELLER (query, tool_calls, tool_definitions) deployment_name
Val av verktyg (query, response, tool_definitions) ELLER (query, tool_calls, tool_definitions) deployment_name
Precision för verktygsinmatning query, , responsetool_definitions deployment_name
Verktygsutdataanvändning query, , responsetool_definitions deployment_name
Verktygsanrop lyckades response deployment_name
Aktivitetsnavigeringseffektivitet actions, expected_actions (ingen)

Exempel på indata

Testdatauppsättningen ska innehålla de fält som refereras till i dina datamappningar. Båda fälten accepterar enkla strängar eller konversationsmatriser:

{"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."}

Om du vill ha mer komplexa agentinteraktioner med verktygsanrop använder du meddelandematriser för query och response. Dessa matriser använder samma OpenAI-meddelandestruktur som önskat messages schema. Se Separat fråge- och svarsformat. Systemmeddelandet är valfritt men användbart för utvärderare som utvärderar agentbeteende mot instruktioner, inklusive task_adherence, task_completion, tool_call_accuracy, tool_selection, tool_input_accuracyoch 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."}
    ]
}

Format för verktygsdefinitioner

Fältet tool_definitions beskriver de verktyg som är tillgängliga för agenten. Den innehåller en lista över verktygsobjekt med ett name, descriptionoch JSON-schemaobjekt 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"]
    }
  }
]

Inkludera den tool_definitions här listan som fält i testdatauppsättningen tillsammans med query och response.

Exempelkonfiguration:

Syntax för datamappning:

  • {{item.field_name}} refererar till fält från testdatauppsättningen (till exempel {{item.query}}).
  • {{sample.output_items}} refererar till agentens strukturerade utdata, inklusive verktygsanrop och resultat. Använd detta för utvärderare som behöver fullständig interaktionskontext (task_adherence, , tool_call_accuracytool_selection, tool_input_accuracy, tool_output_utilization).
  • {{sample.output_text}} refererar till agentens oformaterade textsvar. Använd detta för utvärderare som förväntar sig ett strängsvar (till exempel coherence, violence).

Här är ett exempel på en konfiguration för uppgiftsefterlevnad:

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}}",
        },
    },
]

Mer information om hur du kör utvärderingar och konfiguration av datakällor finns i Köra utvärderingar från SDK :t.

Exempel på utdata

Agentutvärderingar returnerar resultat för pass/fail med resonemang. Nyckelutdatafält:

{
    "type": "azure_ai_evaluator",
    "name": "Task Adherence",
    "metric": "task_adherence",
    "label": "pass",
    "reason": "Agent followed system instructions correctly",
    "threshold": 3,
    "passed": true
}

För utvärderare som använder en 1–5-skala före tröskelvärdet (till exempel intent_resolution och tool_call_accuracy) innehåller utdata ett numeriskt score fält tillsammans med resultatet för 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
}

Aktivitetsnavigeringseffektivitet

Aktivitetsnavigeringseffektivitet mäter om agenten vidtog en optimal sekvens med åtgärder genom att jämföra med en förväntad sekvens (grundsanning). Använd den här utvärderaren för arbetsflödesoptimering och regressionstestning.

{
    "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}}"
    },
}

Matchningslägen:

Mode Beskrivning
exact_match Agentens bana måste matcha den grundläggande sanningen exakt (ordning och innehåll)
in_order_match Alla mark sanningssteg måste visas i agentens bana i rätt ordning (extra steg tillåts)
any_order_match Alla mark sanningssteg måste visas i agentens bana, ordning spelar ingen roll (extra steg tillåts)

Åtgärdsformat:

Fältet actions tar en lista över meddelandeobjekt som följer OpenAI-meddelandeschemat. Varje meddelande representerar ett steg som agenten tog under konversationen:

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

Fälten actions och expected_actions använder olika format. actions kräver openAI-ordlistor för meddelandeschema (som representerar agentens faktiska beteende), medan expected_actions en enkel lista med verktygsnamn används (som representerar den grundläggande sanningen).

Format för förväntade åtgärder:

expected_actions Kan vara en enkel lista över förväntade steg:

expected_actions = ["identify_tools_to_call", "call_tool_A", "call_tool_B", "response_synthesis"]

Eller en tuppeln med verktygsnamn och parametrar för mer detaljerad validering:

expected_actions = (
    ["func_name1", "func_name2"],
    {
        "func_name1": {"param_key": "param_value"},
        "func_name2": {"param_key": "param_value"},
    }
)

Output:

Returnerar ett binärt resultat för pass/fail plus precision, träffsäkerhet och F1-poäng:

{
    "type": "azure_ai_evaluator",
    "name": "task_navigation_efficiency",
    "passed": true,
    "details": {
        "precision_score": 0.85,
        "recall_score": 1.0,
        "f1_score": 0.92
    }
}

Agentmeddelandeschema

Agentutvärderingar använder meddelandematriser när de behöver instruktioner, verktygsanrop och verktygsresultat. Den kanoniska meddelandestrukturen, rolldefinitionerna och exempeldata finns i Meddelanden med verktygsanrop och Separat fråge- och svarsformat.