Agentenbewerter

Important

Elemente, die in diesem Artikel als Vorschau gekennzeichnet sind, befinden sich derzeit in der Vorschau. Diese Vorschau wird ohne Vereinbarung auf Serviceebene bereitgestellt, und Microsoft wird sie für Produktionsworkloads nicht empfohlen. Bestimmte Features werden möglicherweise nicht unterstützt oder weisen eingeschränkte Funktionen auf. Weitere Informationen finden Sie unter Supplementale Nutzungsbedingungen für Microsoft Azure Previews.

KI-Agents sind leistungsstarke Produktivitätsassistenten, die Workflows für geschäftliche Anforderungen erstellen können. Die Observability kann jedoch aufgrund ihrer komplexen Interaktionsmuster eine Herausforderung sein. Agent-Bewertungen bieten systematische Beobachtbarkeit in agentischen Workflows durch Messung von Qualität, Sicherheit und Leistung.

Ein Agentworkflow umfasst in der Regel die Begründung durch Benutzerabsichten, das Aufrufen relevanter Tools und die Verwendung von Toolergebnissen zum Ausführen von Aufgaben wie dem Aktualisieren einer Datenbank oder dem Entwerfen eines Berichts. Um produktionsfähige agentische Anwendungen zu erstellen, müssen Sie nicht nur die endgültige Ausgabe, sondern auch die Qualität und Effizienz jedes Schritts im Workflow auswerten.

Foundry stellt integrierte Agent-Evaluatoren bereit, die wie Komponententests für agentische Systeme funktionieren – sie nehmen Agentnachrichten als Eingabe- und Ausgabe-Binäre Pass/Fail-Bewertungen (oder skalierte Bewertungen, die auf Schwellenwerten basieren). Diese Bewerter unterstützen zwei bewährte Methoden für die Agentbewertung:

  • Systemauswertung - um die End-to-End-Ergebnisse des agentischen Systems zu untersuchen.
  • Prozessauswertung – um die schrittweise Ausführung zu überprüfen, um die Ergebnisse zu erzielen.
Auswerter Beste Praxis Verwenden Sie, wenn Purpose Output
Vorgangsabschluss (Vorschau) Systemauswertung Bewerten des End-to-End-Vorgangserfolgs in der Workflowautomatisierung, zielorientierten KI-Interaktionen oder in jedem Szenario, in dem der Vollständige Aufgabenabschluss kritisch ist Maßnahmen, wenn der Agent die angeforderte Aufgabe mit einem verwendbaren Lieferumfang abgeschlossen hat, der alle Benutzeranforderungen erfüllt Binärdatei: Übergeben/Fehlschlagen
Kundenzufriedenheit (Vorschau) Systemauswertung Messen der Gesamtzufriedenheit der Benutzer in einer Unterhaltung, Erkennen von Benutzerfraktionen Misst ganzheitliche Benutzerzufriedenheit in sechs Dimensionen: Hilfreichkeit, Vollständigkeit, Klarheit, Ton, Auflösung und Anpassungsfähigkeit 1-5 Likert-Skala
Aufgabentreue (Vorschau) Systemauswertung Sicherstellen, dass Agents Systemanweisungen befolgen und die Compliance in regulierten Umgebungen überprüfen Maßnahmen, wenn die Aktionen des Agents ihren zugewiesenen Aufgaben entsprechend Regeln, Verfahren und Richtlinieneinschränkungen entsprechen, basierend auf der Systemmeldung und vorherigen Schritten Binärdatei: Übergeben/Fehlschlagen
Effizienz der Vorgangsnavigation Systemauswertung Optimieren von Agentenworkflows, Reduzieren unnötiger Schritte, Validieren gegen bekannte optimale Pfade (erfordert Bodenwahrung) Misst, ob der Agent eine Aufgabe effizient aufruft, indem er sie mit erwarteten Toolsequenzen vergleicht. Binärdatei: Übergeben/Fehlschlagen
Intent-Auflösung (Vorschau) Systemauswertung Kundensupportszenarien, Unterhaltungs-KI, FAQ-Systeme, bei denen das Verständnis der Benutzerabsicht unerlässlich ist Misst, ob der Agent die Absicht des Benutzers ordnungsgemäß identifiziert. Binärdatei: Pass/Fail basierend auf dem Schwellenwert (Skalierung 1-5)
Genauigkeit des Toolaufrufs Prozessauswertung Allgemeine Bewertung der Anrufqualität in Agentsystemen mit Toolintegration, API-Interaktionen zur Durchführung seiner Aufgaben Misst, ob der Agent die richtigen Toolaufrufe mit korrekten Parametern durchgeführt hat, um seine Aufgabe abzuschließen. Binärdatei: Pass/Fail basierend auf dem Schwellenwert (Skalierung 1-5)
Toolauswahl Prozessauswertung Überprüfen der Qualität der Toolauswahl in Orchestrierungsplattformen, sicherstellung einer effizienten Werkzeugnutzung ohne Redundanz Misst, ob der Agent die richtigen Tools ausgewählt hat, ohne unnötige Auszuwählen Binärdatei: Übergeben/Fehlschlagen
Eingabegenauigkeit des Tools Prozessauswertung Strenge Überprüfung von Toolparametern in Produktionsumgebungen, API-Integrationstests, kritische Workflows, die 100% Parameterkorrektur erfordern Measures, wenn alle Parameter für den Toolaufruf über sechs strenge Kriterien hinweg korrekt sind: Erdheit, Typkonformität, Formatkonformität, erforderliche Parameter, keine unerwarteten Parameter und Wert-Angemessenheit Binärdatei: Übergeben/Fehlschlagen
Toolausgabeverwendung Prozessauswertung Überprüfen der richtigen Verwendung von API-Antworten, Datenbankabfrageergebnissen, Suchausgaben in Agent-Gründen und -Antworten Maßnahmen, wenn der Agent ergebnisse kontextbezogen in der Begründung und endgültigen Antwort des Agents richtig verstanden und verwendet hat Binärdatei: Übergeben/Fehlschlagen
Erfolg des Toolaufrufs Prozessauswertung Überwachen der Zuverlässigkeit des Tools, Erkennen von API-Fehlern, Timeoutproblemen oder technischen Fehlern bei der Toolausführung Measures, wenn das Tool aufruft erfolgreich war oder zu technischen Fehlern oder Ausnahmen führte Binärdatei: Übergeben/Fehlschlagen
Quality Grader (veraltet) Qualitätsbewertung Überprüfen vorhandener Qualitätsbewertungskonfigurationen Zuvor wurde die Qualitätsbewertung über mehrere Dimensionen hinweg in einem einzelnen Evaluator aktiviert, anstatt einzelne Bewerter separat auszuführen. Sie kann nicht mehr in einer Auswertung ausgeführt werden. Nicht verfügbar
Ausgabequalität (Vorschau) System- und Qualitätsbewertung Bewerten von Antwortqualitäts- und Aufgabenergebnissen in mehreren Dimensionen und Reduzieren der Bewertungskosten und Latenz Batches Fluency, Coherence, Intent Resolution, Task Compliance, Groundedness, and Task Completion into one LLM judge call Zusammengesetzt: Komponentenbewertungen mit Pass/Fail
Tool :Qualität verwenden (Vorschau) Prozessauswertung Bewerten des gesamten Toolverwendungsprozesses bei gleichzeitiger Reduzierung der Auswertungskosten und Latenz Batches Tool Call Accuracy, Tool Call Success, Tool Input Accuracy, Tool Output Utilization und Tool Selection into one LLM judge call Zusammengesetzt: Komponentenbewertungen mit Pass/Fail

Systemauswertung

Die Systembewertung untersucht die Qualität des Endergebnisses Ihres agentischen Workflows. Diese Bewerter gelten für einzelne Agenten und in Multi-Agent-Systemen für den Haupt orchestrator oder den endgültigen Agenten, der für den Abschluss der Aufgabe verantwortlich ist:

  • Aufgabenabschluss – Hat der Agent die angeforderte Aufgabe vollständig abgeschlossen?
  • Kundenzufriedenheit – Wie zufrieden wäre ein Benutzer mit der Leistung des Agenten?
  • Aufgabenbefolgung - Hat der Agent die Regeln und Einschränkungen in seinen Anweisungen befolgt?
  • Effizienz der Aufgabennavigation – Hat der Agent die erwarteten Schritte effizient ausgeführt?
  • Absichtsauflösung – Hat der Agent die Absichten des Benutzers korrekt identifiziert und adressiert?

Insbesondere für textbezogene Ausgaben von Agenten können Sie auch RAG-Qualitätsbewertungen anwenden, wie z RelevanceGroundedness . B. agentische Eingaben, um die endgültige Antwortqualität zu bewerten.

Beispiele:

Prozessauswertung

Die Prozessauswertung untersucht die Qualität und Effizienz jedes Schritts in Ihrem agentischen Workflow. Diese Auswertungen konzentrieren sich auf die Toolaufrufe, die in einem System ausgeführt werden, um Aufgaben auszuführen:

  • Tool call Accuracy – Hat der Agent die richtigen Toolaufrufe mit korrekten Parametern ohne Redundanz vorgenommen?
  • Toolauswahl - Hat der Agent die richtigen und erforderlichen Tools ausgewählt?
  • Eingabegenauigkeit des Tools – Hat der Agent richtige Parameter für Toolaufrufe bereitgestellt?
  • Toolausgabeauslastung – Hat der Agent den Toolaufruf ordnungsgemäß verwendet, was zu der begründungsbezogenen und endgültigen Antwort führt?
  • Erfolg des Toolanrufs – War der Aufruf des Tools ohne technische Fehler erfolgreich?

Beispiele:

Qualitätsbewertung (veraltet)

Important

Qualitätsnoter ist veraltet und kann nicht mehr in einer Auswertung ausgeführt werden.

Quality Grader bewertete die Gesamtqualität der Antwort eines KI-Assistenten auf der Turn-Ebene. Dabei wurden mehrere Dimensionen der Antwortqualität untersucht:

  • Relevanz – Ist die Antwort für die Abfrage des Benutzers relevant?
  • Enthaltung - Stimmt der Agent angemessen ab, wenn er nicht antworten kann oder nicht beantworten sollte?
  • Vollständigkeit der Antwort – Wird die Antwort vollständig auf die Frage des Benutzers eingehen?

Bei der Bereitstellung des Kontexts wurden auch Qualitätsbewertungen ausgewertet:

  • Geerdetheit - Ist die Antwort im bereitgestellten Kontext verankert?
  • Kontextabdeckung - Nutzt die Antwort die relevanten Informationen im Kontext?

Zusammengesetzte Bewerter (Vorschau)

Zusammengesetzte Bewerter messen mehrere Qualitätsdimensionen in einem LLM-Richteranruf. Verwenden Sie sie, um die Kosten und Latenz der Ausführung der entsprechenden integrierten Evaluatoren separat zu reduzieren und gleichzeitig eine Bewertung und einen Grund für jede Qualitätsdimension beizubehalten.

Note

Verwenden Sie ein Modell aus der GPT-5.6-Familie als LLM-Richter für zusammengesetzte Bewerter. Verwenden Sie gpt-5.6-lunafür die Option mit den niedrigsten Kosten, die eine hohe Bewertungsqualität gewährleistet.

Ausgabequalität

Die Ausgabequalitätsbewertung (builtin.output_quality) bewertet die Qualität der Antwort eines Agenten und dessen Erfolg bei der Behandlung der Aufgabe des Benutzers. Er stapelt die folgenden Auswertungen in einem LLM-Richteranruf:

Komponentenauswertung Gegenstand der Messung Score Standarddurchlaufschwellenwert
Sprachkompetenz Grammatikalische Qualität und Lesbarkeit. 1-5 3
Kohärenz Logischer Fluss und Organisation. 1-5 3
Auflösung der Absicht Gibt an, ob die Antwort die Absicht des Benutzers identifiziert und behebt. 1-5 3
Aufgabentreue Gibt an, ob der Agent seinen Anweisungen und Einschränkungen folgt. 0 oder 1 1
Verankerung Gibt an, ob die Antwort vom verfügbaren Kontext unterstützt wird. 1-5 3
Aufgabenabschluss Gibt an, ob der Agent die angeforderte Aufgabe mit einem verwendbaren Ergebnis abgeschlossen hat. 0 oder 1 1

Tool "Qualität verwenden"

Der Toolwert "Qualitätsbewertung" (builtin.tool_use_quality) bewertet den Toolverwendungsprozess eines Agenten aus der Toolauswahl mithilfe des zurückgegebenen Ergebnisses. Er stapelt die folgenden Auswertungen in einem LLM-Richteranruf:

Komponentenauswertung Gegenstand der Messung Score Standarddurchlaufschwellenwert
Genauigkeit des Toolaufrufs Gesamtkorrektur der Toolaufrufe, Parameter und Effizienz. 1-5 3
Erfolg des Toolaufrufs Gibt an, ob das Tool ohne technische Fehler abgeschlossen wird. 0 oder 1 1
Eingabegenauigkeit des Tools Gibt an, ob die Parameter für den Toolaufruf korrekt sind. 0 oder 1 1
Toolausgabeverwendung Gibt an, ob der Agent das Tool ordnungsgemäß verwendet, was zu seiner Antwort führt. 0 oder 1 1
Toolauswahl Gibt an, ob der Agent die erforderlichen Tools ohne unnötige Anrufe auswählt. 0 oder 1 1

Zusammengesetzte Ergebnisse

Das primäre output_quality Oder tool_use_quality Ergebnis wird nur übergeben, wenn alle anwendbaren Komponenten übergeben werden. Eine nicht zutreffende Komponente wird übersprungen und führt nicht dazu, dass das primäre Ergebnis fehlschlägt. Wenn alle Komponenten übersprungen werden, lautet not_applicabledas primäre Ergebnis .

Jeder zusammengesetzte Evaluator gibt ein primäres binäres Ergebnis und die Ergebnisse seiner Komponentenvaluatoren zurück. Verwenden Sie das Primäre Ergebnis für ein strenges Qualitätsgate, und verwenden Sie die Komponentenergebnisse, um die Qualitätsdimension zu identifizieren, die zu einem Fehler führte.

Output BESCHREIBUNG
output_quality oder tool_use_quality Primäre Punktzahl. Ein Wert von 1 bedeutet, dass jede anwendbare Komponente übergeben wird. Der Wert bedeutet 0 , dass mindestens eine anwendbare Komponente fehlgeschlagen ist.
<component>_score Numerischer Wert aus der Komponentenauswertung.
<component>_result Pass/Fail-Ergebnis basierend auf dem Schwellenwert der Komponente.
<component>_reason Erläuterung für die Komponentenbewertung.
<component>_status Gibt an, ob die Komponente abgeschlossen oder übersprungen wurde.
<composite>_reason Liste der fehlgeschlagenen Komponenten oder gibt an, dass Komponenten übersprungen wurden.
<composite>_properties Enthält Listen mit fehlgeschlagenen und übersprungenen Komponenten sowie Modell- und Tokenmetadaten.

Ein Ergebnis der Ausgabequalität schlägt z. B. fehl, wenn Fluency, Coherence, Intent Resolution, Task-Compliance und Vorgangsabschluss bestanden werden, aber die Bodenigkeit fehlschlägt. Die output_quality_reason "Bodenigkeit" wird als fehlgeschlagene Komponente identifiziert, und die groundedness_reason Bewertung wird erläutert.

Konfigurieren zusammengesetzter Bewerter

Beide zusammengesetzten Bewerter unterstützen die Bewertung der Turn-Level- und Unterhaltungsebene. Das Eingabe-Shape bestimmt standardmäßig die Auswertungsebene:

  • Zuordnen query und response für die Bewertung der Turn-Level-Ebene.
  • Zuordnung messages zur Auswertung auf Unterhaltungsebene.

Legen Sie den Initialisierungsparameter evaluation_level auf turn dieses Verhalten fest oder conversation überschreibt diesen Parameter.

Die folgende Konfiguration führt beide zusammengesetzten Bewerter auf der Turn-Ebene aus. Die Antwort enthält Agentnachrichten mit Toolaufrufen und Toolergebnissen, und die Tooldefinitionen beschreiben die tools, die für den Agent verfügbar sind.

testing_criteria = [
    {
        "type": "azure_ai_evaluator",
        "name": "output_quality",
        "evaluator_name": "builtin.output_quality",
        "initialization_parameters": {
            "deployment_name": model_deployment,
            "evaluation_level": "turn",
        },
        "data_mapping": {
            "query": "{{item.query}}",
            "response": "{{item.response}}",
            "tool_definitions": "{{item.tool_definitions}}",
        },
    },
    {
        "type": "azure_ai_evaluator",
        "name": "tool_use_quality",
        "evaluator_name": "builtin.tool_use_quality",
        "initialization_parameters": {
            "deployment_name": model_deployment,
            "evaluation_level": "turn",
        },
        "data_mapping": {
            "query": "{{item.query}}",
            "response": "{{item.response}}",
            "tool_definitions": "{{item.tool_definitions}}",
        },
    },
]

Referenz: Ausführen von Auswertungen aus dem SDK

Um eine vollständige Unterhaltung auszuwerten, ordnen Sie die vollständige Unterhaltung zumessages, und legen evaluation_level Sie sie entweder weg, oder legen Sie sie auf :conversation

"initialization_parameters": {
    "deployment_name": model_deployment,
    "evaluation_level": "conversation",
},
"data_mapping": {
    "messages": "{{item.messages}}",
    "tool_definitions": "{{item.tool_definitions}}",
},

Referenz: Nachrichten mit Toolaufrufen

Modell- und Toolunterstützung

Bei KI-unterstützten Bewertern können Sie Azure OpenAI oder OpenAI reasoning Models und Nicht-Reasoning-Modelle für den LLM-Richter verwenden.

Unterstützte Tools

Agent-Auswertungen unterstützen die folgenden Tools:

  • Dateisuche
  • Funktionstool (benutzerdefinierte Tools)
  • MCP
  • Wissensbasierte MCP

Die folgenden Tools haben derzeit eingeschränkte Unterstützung. Vermeiden Sie die Verwendung von tool_call_accuracy, , tool input accuracy, tool_output_utilization, tool_call_successoder groundedness Evaluatoren, wenn Ihre Agent-Unterhaltung Anrufe an diese Tools enthält:

  • Azure KI-Suche
  • Bing Grundlagen
  • Benutzerdefinierte Bing-Suche
  • SharePoint Grundlagen
  • Codedolmetscher
  • Fabric Daten-Agent
  • Web Search

Verwenden von Agent-Auswertungen

Agent-Bewertungen bewerten, wie gut KI-Agents Aufgaben ausführen, Anweisungen befolgen und Tools effektiv verwenden. Jeder Evaluator erfordert spezifische Datenzuordnungen und Parameter:

Auswerter Erforderliche Eingaben Erforderliche Parameter Unterstützte Auswertungsstufen
Vorgangsabschluss (Vorschau) (query, response) oder messages; optional: tool_definitions deployment_name; optional: evaluation_level Turn, conversation
Kundenzufriedenheit (Vorschau) (query, response) oder messages deployment_name; optional: threshold, evaluation_level Turn, conversation
Aufgabentreue (Vorschau) (query, response) oder messages; optional: tool_definitions deployment_name Drehung
Intent-Auflösung (Vorschau) (query, response) oder messages deployment_name; optional: evaluation_level Drehung
Genauigkeit des Toolaufrufs (query, tool_definitions) oder (messages, tool_definitions) und tool_callsresponse sind optional mitquery deployment_name; optional: evaluation_level Drehung
Toolauswahl (query, tool_definitions) oder (messages, tool_definitions) und tool_callsresponse sind optional mitquery deployment_name; optional: evaluation_level Drehung
Eingabegenauigkeit des Tools (query, , tool_definitionsresponse) oder (messages, tool_definitions) deployment_name; optional: evaluation_level Drehung
Toolausgabeverwendung (query, , tool_definitionsresponse) oder (messages, tool_definitions) deployment_name; optional: evaluation_level Drehung
Erfolg des Toolaufrufs response oder messages deployment_name; optional: evaluation_level Drehung
Effizienz der Vorgangsnavigation (actions oder messages), expected_actions (none; optional: matching_mode) Drehung
Ausgabequalität queryund ; oder responsemessages. tool_definitions ist optional. deployment_name; optional: evaluation_level Turn, conversation
Tool "Qualität verwenden" query, responseund ; oder tool_definitionsmessages und .tool_definitions deployment_name; optional: evaluation_level Turn, conversation

Bewertung der Turn-Level-Bewertung bewertet eine einzelne Agentantwort; Die Auswertung auf Unterhaltungsebene bewertet die vollständige Interaktion. Wird verwendet evaluation_level , um die Ebene auszuwählen, wenn der Evaluator beides unterstützt. Informationen zur Nachrichtenstruktur finden Sie unter "Nachrichten mit Toolaufrufen".

Beispieleingabe

Ihr Test-Dataset sollte die Felder enthalten, auf die in Ihren Datenzuordnungen verwiesen wird. Beispiele für das folgende Format:

{"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."}
{"messages": [{"role": "user", "content": "Book a flight to Paris."}, {"role": "assistant", "content": "I booked your flight to Paris."}]}

Verwenden Sie für komplexere Agent-Interaktionen mit Toolaufrufen Nachrichtenarrays für query und response. Diese Arrays verwenden dieselbe OpenAI-Nachrichtenstruktur wie das bevorzugte messages Schema. Siehe Separates Abfrage- und Antwortformat. Die Systemmeldung ist optional, aber nützlich für Evaluatoren, die das Verhalten des Agenten anhand von Anweisungen bewerten, einschließlich task_adherence, , task_completion, , tool_call_accuracy, tool_selectiontool_input_accuracy, tool_output_utilizationund 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", "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."}
    ]
}

Tooldefinitionsformat

Das tool_definitions Feld beschreibt die tools, die für den Agent verfügbar sind. Es enthält eine Liste von Toolobjekten mit einem name, description, und 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"]
    }
  }
]

Fügen Sie diese Liste als Feld tool_definitions in Ihr Testdatenset zusammen und queryresponse.

Konfigurationsbeispiel

Datenzuordnungssyntax:

  • {{item.field_name}} verweist auf Felder aus Ihrem Test-Dataset (z. B {{item.query}}. ).
  • {{sample.output_items}} verweist auf die strukturierte Ausgabe des Agents, einschließlich Toolaufrufe und Ergebnisse. Verwenden Sie dies für Evaluatoren, die einen vollständigen Interaktionskontext (task_adherence, tool_call_accuracy, , tool_selection) tool_input_accuracytool_output_utilizationbenötigen.
  • {{sample.output_text}} verweist auf die Nur-Text-Antwort des Agents. Verwenden Sie dies für Evaluatoren, die eine Zeichenfolgenantwort erwarten (z coherence. B. , violence).

Hier ist eine Beispielkonfiguration für die Einhaltung von Aufgaben:

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

Ausführliche Informationen zum Ausführen von Auswertungen und zum Konfigurieren von Datenquellen finden Sie unter "Auswertungen ausführen" aus dem SDK .

Beispielausgabe

Agent-Auswertungen geben Pass-/Fail-Ergebnisse mit Gründen zurück. Schlüsselausgabefelder:

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

Bei Auswertungen, die vor dem Schwellenwert eine Skalierung von 1 bis 5 verwenden (z intent_resolution . B. und tool_call_accuracy), enthält die Ausgabe ein numerisches score Feld neben dem Pass-/Fail-Ergebnis:

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

Effizienz der Aufgabennavigation

Die Effizienz der Vorgangsnavigation misst, ob der Agent eine optimale Abfolge von Aktionen durchgeführt hat, indem er mit einer erwarteten Sequenz (Bodenwahrung) vergleicht. Verwenden Sie diesen Evaluator für Workflowoptimierungs- und Regressionstests.

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

Abgleichsmodi:

Modus BESCHREIBUNG
exact_match Die Flugbahn des Agenten muss genau mit der Bodenwahrung übereinstimmen (Reihenfolge und Inhalt)
in_order_match Alle Schritte der Bodenwahrheit müssen in der richtigen Reihenfolge des Agenten angezeigt werden (zusätzliche Schritte zulässig)
any_order_match Alle Boden-Wahrheitsschritte müssen in der Flugbahn des Agenten erscheinen, Reihenfolge spielt keine Rolle (zusätzliche Schritte zulässig)

Aktionsformat:

Karte entweder actions oder messages mit expected_actions. Das actions Feld akzeptiert eine Zeichenfolge oder eine Liste von Nachrichtenobjekten. Das messages Feld akzeptiert die vollständige Interaktion als Array von Nachrichtenobjekten. Jede Aktionsnachricht stellt einen Schritt dar, den der Agent während der Unterhaltung ausgeführt hat:

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

Die actions Felder expected_actions verwenden unterschiedliche Formate. actions enthält das tatsächliche Verhalten des Agents als Text- oder Nachrichtenobjekte, enthält jedoch expected_actions die erwarteten Toolnamen und optional deren Parameter.

So stellen Sie die Agent-Interaktion als Nachrichten anstelle von actions, karte messages und expected_actions:

"data_mapping": {
    "messages": "{{item.messages}}",
    "expected_actions": "{{item.expected_actions}}",
}

Erwartetes Aktionsformat:

Dies expected_actions kann eine einfache Liste der erwarteten Schritte sein:

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

Oder ein Tupel mit Toolnamen und Parametern für eine detailliertere Überprüfung:

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

Ausgabe:

Gibt ein binäres Pass-/Fail-Ergebnis plus Genauigkeit, Rückruf und F1-Bewertungen zurück:

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

Agent-Nachrichtenschema

Agent-Auswertungen verwenden Nachrichtenarrays, wenn sie Anweisungen, Toolaufrufe und Toolergebnisse benötigen. Informationen zur kanonischen Nachrichtenstruktur, Rollendefinitionen und Beispieldaten finden Sie unter Nachrichten mit Toolaufrufen und separatem Abfrage- und Antwortformat.