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.
Mit dem Fabric SDK können Sie programmgesteuert testen, wie gut Ihr Daten-Agent auf Fragen in natürlicher Sprache reagiert. Mit einer einfachen Python-Programmierschnittstelle können Sie Ground-Truth-Beispiele definieren, Auswertungen durchführen und Ergebnisse analysieren – alles innerhalb Ihrer Notebook-Umgebung. Auf diese Weise können Sie die Genauigkeit überprüfen, Fehler debuggen und Ihren Agenten mit Zuversicht verbessern, bevor Sie ihn in die Produktion überführen.
Von Bedeutung
Dieses Feature befindet sich in der Vorschauphase.
Voraussetzungen
- Eine bezahlte F2 oder höhere Fabric-Kapazität oder eine Power BI Premium pro Benutzer (P1 oder höher) Kapazität mit Microsoft Fabric aktiviert.
- Aktivieren Sie die geoübergreifende Verarbeitung und die geoübergreifende Speicherung für KI basierend auf den Anforderungen, die in den Fabric-Daten-Agent-Mandanteneinstellungen erläutert werden.
- Mindestens eine dieser Datenquellen mit Daten: Ein Warehouse, ein Lakehouse, ein Power BI-Semantikmodell, eine KQL-Datenbank, eine gespiegelte Datenbank oder eine Ontologie. Sie müssen über Lesezugriff auf die Datenquelle verfügen.
Installieren des Daten-Agent-SDK
Um mit der programmgesteuerten Auswertung Ihres Fabric Daten-Agents zu beginnen, müssen Sie the Fabric Data Agent Python SDK installieren. Dieses SDK stellt die Tools und Methoden bereit, die erforderlich sind, um mit Ihrem Daten-Agent zu interagieren, Auswertungen auszuführen und Ergebnisse zu protokollieren. Installieren Sie die neueste Version, indem Sie den folgenden Befehl in Ihrem Notizbuch ausführen:
%pip install -U fabric-data-agent-sdk
Mit diesem Schritt wird sichergestellt, dass Sie über die aktuellsten Features und Korrekturen im SDK verfügen.
Laden des Grundwahrheitsdatasets
Um Ihren Fabric Daten-Agent auszuwerten, benötigen Sie eine Reihe von Beispielfragen zusammen mit den erwarteten Antworten. Diese Fragen werden verwendet, um zu überprüfen, wie genau der Agent auf reale Abfragen reagiert.
Sie können diese Fragen direkt in Ihrem Code mithilfe eines Pandas DataFrame definieren:
import pandas as pd
# Define a sample evaluation set with user questions and their expected answers.
# You can modify the question/answer pairs to match your scenario.
df = pd.DataFrame(
columns=["question", "expected_answer"],
data=[
["Show total sales for Canadian Dollar for January 2013", "46,117.30"],
["What is the product with the highest total sales for Canadian Dollar in 2013", "Mountain-200 Black, 42"],
["Total sales outside of the US", "19,968,887.95"],
["Which product category had the highest total sales for Canadian Dollar in 2013", "Bikes (Total Sales: 938,654.76)"]
]
)
Wenn Sie über ein vorhandenes Auswertungsdatenset verfügen, können Sie es auch aus einer CSV-Datei mit den Spalten question und expected_answer laden.
# Load questions and expected answers from a CSV file
input_file_path = "/lakehouse/default/Files/Data/Input/curated_2.csv"
df = pd.read_csv(input_file_path)
Dieses Dataset dient als Eingabe für die Ausführung automatisierter Auswertungen für Ihren Datenagent, um die Genauigkeit und Abdeckung zu bewerten.
Auswerten und Bewerten Ihres Datenagent
Der nächste Schritt besteht darin, die Auswertung mithilfe der evaluate_data_agent Funktion auszuführen. Diese Funktion vergleicht die Antworten des Agents mit den erwarteten Ergebnissen und speichert die Auswertungsmetriken.
from fabric.dataagent.evaluation import evaluate_data_agent
# Name of your Data Agent
data_agent_name = "AgentEvaluation"
# (Optional) Name of the workspace if the Data Agent is in a different workspace
workspace_name = None
# (Optional) Name of the output table to store evaluation results (default: "evaluation_output")
# Two tables will be created:
# - "<table_name>": contains summary results (e.g., accuracy)
# - "<table_name>_steps": contains detailed reasoning and step-by-step execution
table_name = "demo_evaluation_output"
# Specify the Data Agent stage: "production" (default) or "sandbox"
data_agent_stage = "production"
# Run the evaluation and get the evaluation ID
evaluation_id = evaluate_data_agent(
df,
data_agent_name,
workspace_name=workspace_name,
table_name=table_name,
data_agent_stage=data_agent_stage
)
print(f"Unique ID for the current evaluation run: {evaluation_id}")
Zusammenfassung der Auswertung abrufen
Nach dem Ausführen der Auswertung können Sie mithilfe der get_evaluation_summary Funktion eine allgemeine Zusammenfassung der Ergebnisse abrufen. Diese Funktion bietet Einblicke in die Gesamtausführung Ihres Daten-Agents – einschließlich Metriken wie der Anzahl der Antworten, die den erwarteten Antworten entsprechen.
from fabric.dataagent.evaluation import get_evaluation_summary
# Retrieve a summary of the evaluation results
df = get_evaluation_summary(table_name)
Standardmäßig sucht diese Funktion nach einer Tabelle mit dem Namen evaluation_output. Wenn Sie während der Auswertung einen benutzerdefinierten Tabellennamen angegeben haben (z. B. "demo_evaluation_output"), übergeben Sie diesen Namen als table_name Argument.
Der zurückgegebene DataFrame enthält aggregierte Metriken wie die Anzahl der korrekten, falschen oder unklaren Antworten. Dieses Ergebnis hilft Ihnen, die Genauigkeit des Agenten schnell zu bewerten und Bereiche zur Verbesserung zu identifizieren.
get_Evaluationsübersicht
Gibt einen DataFrame zurück, der allgemeine Zusammenfassungsmetriken für einen abgeschlossenen Auswertungslauf enthält, z. B. die Anzahl der korrekten, falschen und unklaren Antworten.
get_evaluation_summary(table_name='evaluation_output', verbose=False)
Eingabeparameter:
-
table_name(str, optional) – Der Name der Tabelle, die die Auswertungszusammenfassungsergebnisse enthält. Der Standardwert lautetevaluation_output. -
verbose(bool, optional) – Bei Festlegung aufTrue, druckt eine Zusammenfassung der Auswertungsmetriken in der Konsole. Wird standardmäßig aufFalsefestgelegt.
Rückgaben:
-
DataFrame– Ein Pandas DataFrame mit Zusammenfassungsstatistiken für die Auswertung, z. B.:- Gesamtanzahl der bewerteten Fragen
- Anzahl wahrer, falscher und unklarer Ergebnisse
- Genauigkeit
Überprüfen detaillierter Auswertungsergebnisse
Verwenden Sie die get_evaluation_details Funktion, um tiefer zu erfahren, wie Ihr Daten-Agent auf jede einzelne Frage reagiert hat. Diese Funktion gibt eine detaillierte Aufschlüsselung der Auswertungsausführung zurück, einschließlich der tatsächlichen Agentantworten, ob sie der erwarteten Antwort entsprechen, und einen Link zum Auswertungsthread (nur für den Benutzer sichtbar, der die Auswertung ausgeführt hat).
from fabric.dataagent.evaluation import get_evaluation_details
# Table name used during evaluation
table_name = "demo_evaluation_output"
# Whether to return all evaluation rows (True) or only failures (False)
get_all_rows = False
# Whether to print a summary of the results
verbose = True
# Retrieve evaluation details for a specific run
eval_details = get_evaluation_details(
evaluation_id,
table_name,
get_all_rows=get_all_rows,
verbose=verbose
)
get_evaluation_details
Gibt einen DataFrame zurück, der detaillierte Ergebnisse für einen bestimmten Auswertungslauf enthält, einschließlich Fragen, erwartete Antworten, Agentantworten, Auswertungsstatus und Diagnosemetadaten.
Eingabeparameter:
-
evaluation_id(str) – Erforderlich. Der eindeutige Bezeichner für die Auswertungsausführung, zu der Details abgerufen werden sollen. -
table_name(str, optional) – Der Name der Tabelle, die die Auswertungsergebnisse enthält. Wird standardmäßig aufevaluation_outputfestgelegt. -
get_all_rows(bool, optional) – Gibt an, ob alle Zeilen aus der Auswertung (True) oder nur Zeilen zurückgegeben werden sollen, in denen die Antwort des Agents falsch oder unklar (False) war. Wird standardmäßig aufFalsefestgelegt. -
verbose(bool, optional) – Wenn dieser Wert auf "True" festgelegt ist, wird eine Zusammenfassung der Auswertungsmetriken in der Konsole gedruckt. Wird standardmäßig aufFalsefestgelegt.
Rückgaben:
DataFrame– Ein Pandas DataFrame mit Auswertungsergebnissen auf Zeilenebene, einschließlich:questionexpected_answeractual_answer-
evaluation_result(true,false,unclear) -
thread_url(nur für den Benutzer zugänglich, der die Auswertung ausgeführt hat)
Anpassen Ihres Prompts für die Auswertung
Standardmäßig verwendet das Fabric SDK eine integrierte Eingabeaufforderung, um auszuwerten, ob die tatsächliche Antwort des Daten-Agents mit der erwarteten Antwort übereinstimmt. Sie können jedoch ihre eigene Aufforderung für differenzierte oder domänenspezifische Auswertungen mithilfe des critic_prompt Parameters bereitstellen.
Ihre benutzerdefinierte Eingabeaufforderung sollte die Platzhalter {query}, {expected_answer} und {actual_answer} enthalten. Diese Platzhalter werden während der Auswertung dynamisch für jede Frage ersetzt.
from fabric.dataagent.evaluation import evaluate_data_agent
# Define a custom prompt for evaluating agent responses
critic_prompt = """
Given the following query, expected answer, and actual answer, please determine if the actual answer is equivalent to expected answer. If they are equivalent, respond with 'yes'.
Query: {query}
Expected Answer:
{expected_answer}
Actual Answer:
{actual_answer}
Is the actual answer equivalent to the expected answer?
"""
# Name of the Data Agent
data_agent_name = "AgentEvaluation"
# Run evaluation using the custom critic prompt
evaluation_id = evaluate_data_agent(df, data_agent_name, critic_prompt=critic_prompt)
Dieses Feature ist besonders nützlich, wenn:
- Sie möchten mehr oder weniger strengere Kriterien dafür anwenden, was als Übereinstimmung gilt.
- Ihre erwarteten und tatsächlichen Antworten können im Format variieren, sind aber dennoch semantisch gleichwertig.
- Sie müssen domänenspezifische Nuancen erfassen, um zu ermitteln, wie Antworten beurteilt werden sollen.
Schaltfläche "Diagnose"
Über die Schaltfläche " Diagnose " können Sie eine vollständige Momentaufnahme der Konfigurations- und Ausführungsschritte Ihres Daten-Agents herunterladen. Dieser Export enthält Details wie Datenquelleneinstellungen, angewendete Anweisungen, verwendete Beispielabfragen und die zugrunde liegenden Schritte, die der Daten-Agent zum Generieren seiner Antwort ausgeführt hat.
Verwenden Sie dieses Feature, wenn Sie mit Microsoft-Support arbeiten oder unerwartetes Verhalten beheben. Indem Sie die heruntergeladene Datei überprüfen, können Sie genau sehen, wie der Daten-Agent Ihre Anforderung verarbeitet hat, welche Konfigurationen angewendet wurden und wo potenzielle Probleme aufgetreten sind. Diese Transparenz erleichtert das Debuggen und Optimieren der Leistung Des Daten-Agents.