Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Zurzeit wird folgendes angezeigt:Foundry (klassische) Portalversion - Wechseln zur Version für das neue Foundry-Portal
Note
Das Microsoft Foundry SDK für Die Auswertung und das Gießereiportal befindet sich in der öffentlichen Vorschau, die APIs sind jedoch allgemein für die Modell- und Datasetauswertung verfügbar (die Agentauswertung verbleibt in der öffentlichen Vorschau). Das in diesem Artikel markierte Azure AI Evaluation SDK und Bewerter (Vorschau) befinden sich derzeit überall in der öffentlichen Vorschau.
Agenten sind mächtige Produktivitätsassistenten. Sie planen, treffen Entscheidungen und führen Aktionen aus. Agenten argumentieren typischerweise durch die Absichten der Nutzer in Gesprächen, wählen die richtigen Tools aus, um Nutzerwünsche zu erfüllen, und erledigen Aufgaben gemäß den Anweisungen. Microsoft Foundry unterstützt diese agentenspezifischen Evaluatoren für agentische Workflows:
- Absichtsauflösung (Vorschau)
- Genauigkeit der Werkzeugaufrufe (Vorschau)
- Aufgabeneinhaltung (Vorschau)
Bewertung von Azure AI-Agenten
Agenten senden Nachrichten aus, und Eingaben erfordern typischerweise das Parsen dieser Nachrichten, um relevante Informationen zu extrahieren. Wenn Sie Agenten mit Azure AI Agent Service erstellen, bietet der Dienst eine native Integration zur Bewertung, die direkt deren Agentennachrichten aufnimmt. Ein Beispiel finden Sie unter KI-Agenten bewerten.
Zusätzlich zu IntentResolution, ToolCallAccuracy, und TaskAdherence, die spezifisch für agentische Workflows sind, können Sie weitere Qualitäts- und Sicherheitsaspekte dieser Workflows mit einer umfassenden Suite integrierter Evaluatoren bewerten. Foundry unterstützt diese Liste von Evaluatoren für Azure-KI-Agentennachrichten von unserem Konverter:
-
Qualität:
IntentResolution,ToolCallAccuracy, ,TaskAdherence,Relevance,CoherenceundFluency -
Sicherheit:
CodeVulnerabilities,Violence,Self-harm, ,Sexual,HateUnfairness, ,IndirectAttackundProtectedMaterials
Dieser Artikel enthält Beispiele für IntentResolution, ToolCallAccuracy, und TaskAdherence. Beispiele für andere Evaluatoren mit Azure KI-Agenten-Nachrichten siehe evaluating Azure AI-Agenten.
Modellkonfiguration für KI-unterstützte Evaluatoren
Zur Orientierung verwenden die KI-unterstützten Evaluatoren in den folgenden Codeschnippeln eine Modellkonfiguration für den großen Sprachmodell-Judge (LLM-Judge):
import os
from azure.ai.evaluation import AzureOpenAIModelConfiguration
from dotenv import load_dotenv
load_dotenv()
model_config = AzureOpenAIModelConfiguration(
azure_endpoint=os.environ["AZURE_ENDPOINT"],
api_key=os.environ.get("AZURE_API_KEY"),
azure_deployment=os.environ.get("AZURE_DEPLOYMENT_NAME"),
api_version=os.environ.get("AZURE_API_VERSION"),
)
Unterstützung von Evaluatormodellen
Azure AI Agent Service unterstützt AzureOpenAI oder OpenAI Reasoning-Modelle sowie Non-Reasoning-Modelle für den LLM-Judge, abhängig von den Evaluatoren:
| Evaluators | Logische Modelle als Richter (Beispiel: O-Serien-Modelle von Azure OpenAI / OpenAI) | Nicht-logische Modelle als Richter (Beispiel: GPT-4.1 oder GPT-4O) | To enable |
|---|---|---|---|
IntentResolution, TaskAdherence, , ResponseCompletenessToolCallAccuracy, Coherence, Fluency, Similarity, , , Groundedness, , RetrievalRelevance |
Supported | Supported | Setzen Sie den zusätzlichen Parameter is_reasoning_model=True beim Initialisieren von Evaluatoren |
| Other evaluators | Not Supported | Supported | -- |
Für komplexe Bewertungen, die verfeinertes Schließen erfordern, verwenden Sie ein starkes Argumentationsmodell, wie 4.1-mini ein Gleichgewicht zwischen Schlussfolgerleistung und Kosteneffizienz.
Intent resolution
IntentResolutionEvaluator Misst, wie gut das System die Anfrage eines Nutzers erkennt und versteht. Dieses Verständnis umfasst, wie gut es die Absicht des Nutzers erfasst, Fragen zur Klärung stellt und die Endnutzer an seine Fähigkeiten erinnert. Eine höhere Punktzahl zeigt eine bessere Identifikation der Nutzerabsicht.
Beispiel für eine Absichtsauflösung
from azure.ai.evaluation import IntentResolutionEvaluator
intent_resolution = IntentResolutionEvaluator(model_config=model_config, threshold=3)
intent_resolution(
query="What are the opening hours of the Eiffel Tower?",
response="Opening hours of the Eiffel Tower are 9:00 AM to 11:00 PM."
)
Absichtsauflösungsausgabe
Die numerische Punktzahl verwendet eine Likert-Skala (ganzzahlig 1 bis 5), wobei eine höhere Punktzahl besser ist. Gegeben eine numerische Schwelle (standardmäßig ist 3), gibt der Prüfer bestanden , wenn der Wert höher oder gleich dem Schwellenwert ist , oder fällt anderweitig durch. Die Verwendung von Reason und anderen Bereichen kann Ihnen helfen zu verstehen, warum die Punktzahl hoch oder niedrig ist.
{
"intent_resolution": 5,
"intent_resolution_result": "pass",
"intent_resolution_threshold": 3,
"intent_resolution_reason": "The response provides the opening hours of the Eiffel Tower clearly and accurately, directly addressing the user's query. It includes specific times, which fully resolves the user's request for information about the opening hours.",
}
Wenn Sie Agenten außerhalb des Foundry Agent Service erstellen, akzeptiert dieser Evaluator ein typisches Schema für Agentennachrichten. Um ein Musternotizbuch zu erkunden, siehe Absichtsauflösung.
Werkzeugrufgenauigkeit
ToolCallAccuracyEvaluator Misst die Genauigkeit und Effizienz von Werkzeugaufrufen, die ein Agent während eines Laufs macht. Es gibt eine Punktzahl von 1 bis 5 basierend auf:
- Die Relevanz und Nützlichkeit des verwendeten Werkzeugs
- Die Korrektheit der in Werkzeugaufrufen verwendeten Parameter
- Die Anzahl der fehlenden oder übermäßigen Anrufe
Unterstützung der Toolanrufeauswertung
ToolCallAccuracyEvaluator unterstützt die Bewertung im Agent Service für die folgenden Werkzeuge:
- File Search
- Azure KI-Suche
- Bing Grounding
- Benutzerdefinierte Bing-Suche
- SharePoint Grounding
- Code Interpreter
- Fabric Daten-Agent
- OpenAPI
- Funktionstool (benutzerdefinierte Tools)
Wenn im Agentenlauf ein nicht unterstütztes Tool verwendet wird, gibt der Evaluator einen Pass aus und erklärt, dass die Bewertung der Tools nicht unterstützt wird. Dieser Ansatz macht es einfach, diese Fälle herauszufiltern. Wir empfehlen, nicht unterstützte Werkzeuge als benutzerdefinierte Werkzeuge zu verpacken, um die Bewertung zu ermöglichen.
Beispiel für Werkzeugrufgenauigkeit
from azure.ai.evaluation import ToolCallAccuracyEvaluator
tool_call_accuracy = ToolCallAccuracyEvaluator(model_config=model_config, threshold=3)
# provide the agent response with tool calls
tool_call_accuracy(
query="What timezone corresponds to 41.8781,-87.6298?",
response=[
{
"createdAt": "2025-04-25T23:55:52Z",
"run_id": "run_DmnhUGqYd1vCBolcjjODVitB",
"role": "assistant",
"content": [
{
"type": "tool_call",
"tool_call_id": "call_qi2ug31JqzDuLy7zF5uiMbGU",
"name": "azure_maps_timezone",
"arguments": {
"lat": 41.878100000000003,
"lon": -87.629800000000003
}
}
]
},
{
"createdAt": "2025-04-25T23:55:54Z",
"run_id": "run_DmnhUGqYd1vCBolcjjODVitB",
"tool_call_id": "call_qi2ug31JqzDuLy7zF5uiMbGU",
"role": "tool",
"content": [
{
"type": "tool_result",
"tool_result": {
"ianaId": "America/Chicago",
"utcOffset": None,
"abbreviation": None,
"isDaylightSavingTime": None
}
}
]
},
{
"createdAt": "2025-04-25T23:55:55Z",
"run_id": "run_DmnhUGqYd1vCBolcjjODVitB",
"role": "assistant",
"content": [
{
"type": "text",
"text": "The timezone for the coordinates 41.8781, -87.6298 is America/Chicago."
}
]
}
],
tool_definitions=[
{
"name": "azure_maps_timezone",
"description": "local time zone information for a given latitude and longitude.",
"parameters": {
"type": "object",
"properties": {
"lat": {
"type": "float",
"description": "The latitude of the location."
},
"lon": {
"type": "float",
"description": "The longitude of the location."
}
}
}
}
]
)
# alternatively, provide the tool calls directly without the full agent response
tool_call_accuracy(
query="How is the weather in Seattle?",
tool_calls=[{
"type": "tool_call",
"tool_call_id": "call_CUdbkBfvVBla2YP3p24uhElJ",
"name": "fetch_weather",
"arguments": {
"location": "Seattle"
}
}],
tool_definitions=[{
"id": "fetch_weather",
"name": "fetch_weather",
"description": "Fetches the weather information for the specified location.",
"parameters": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "The location to fetch weather for."
}
}
}
}
]
)
Ergebnis-Genauigkeit der Werkzeugaufrufe
Der numerische Wert liegt auf einer Likert-Skala (ganze Zahl 1 bis 5). Eine höhere Punktzahl ist besser. Gegeben ein numerischer Schwellenwert (standardmäßig 3), gibt der Evaluator auch 'bestanden ' aus, wenn der Wert >= Schwelle ist, oder scheitert anderleicht. Verwenden Sie die Detailfelder für Gründe und Werkzeugaufrufe, um zu verstehen, warum die Punktzahl hoch oder niedrig ist.
{
"tool_call_accuracy": 5,
"tool_call_accuracy_result": "pass",
"tool_call_accuracy_threshold": 3,
"details": {
"tool_calls_made_by_agent": 1,
"correct_tool_calls_made_by_agent": 1,
"per_tool_call_details": [
{
"tool_name": "fetch_weather",
"total_calls_required": 1,
"correct_calls_made_by_agent": 1,
"correct_tool_percentage": 100%,
"tool_call_errors": 0,
"tool_call_success_result": "pass"
}
],
"excess_tool_calls": {
"total": 0,
"details": []
},
"missing_tool_calls": {
"total": 0,
"details": []
}
}
}
Wenn Sie Agenten außerhalb des Azure AI Agent Service bauen, akzeptiert dieser Evaluator ein typisches Schema für Agentenmeldungen. Für ein Beispielnotizbuch siehe Tool Call Accuracy.
Task adherence
In verschiedenen aufgabenorientierten KI-Systemen, wie etwa agentischen Systemen, ist es wichtig zu bewerten, ob der Agent auf Kurs bleibt, um eine Aufgabe zu erledigen, anstatt ineffiziente oder außerhalb des Umfangs liegende Schritte zu unternehmen.
TaskAdherenceEvaluator Misst, wie gut die Reaktion eines Agenten seinen zugewiesenen Aufgaben entspricht, entsprechend seiner Aufgabenanleitung und verfügbaren Werkzeugen. Die Task-Instruktion wird aus der Systemnachricht und der Benutzeranfrage extrahiert. Eine höhere Punktzahl zeigt eine bessere Einhaltung der Systemanweisung zur Aufgabe an.
Beispiel für Aufgabeneinhaltung
from azure.ai.evaluation import TaskAdherenceEvaluator
task_adherence = TaskAdherenceEvaluator(model_config=model_config)
task_adherence(
query="What are the best practices for maintaining a healthy rose garden during the summer?",
response="Make sure to water your roses regularly and trim them occasionally."
)
Ausgabe der Aufgabeneinhaltung
Der Prüfer gibt ansonsten Bestanden - oder Nichtbestehen aus. Verwenden Sie das Motivfeld, um die Begründung hinter der Punktzahl zu verstehen
{
"task_adherence_result": "fail",
"task_adherence_reason": "The response partially addresses the query by mentioning relevant practices but lacks critical details and depth, making it insufficient for a comprehensive understanding of maintaining a rose garden in summer."
}
Wenn Sie Agenten außerhalb des Azure AI Agent Service erstellen, akzeptiert dieser Evaluator ein Schema, das typisch für Agentennachrichten ist. Für ein Beispielnotizbuch siehe Aufgabeneinhaltsamkeit.