promptflow.evals.evaluate Modul#
- promptflow.evals.evaluate.evaluate(*, evaluation_name: Optional[str] = None, target: Optional[Callable] = None, data: Optional[str] = None, evaluators: Optional[Dict[str, Callable]] = None, evaluator_config: Optional[Dict[str, Dict[str, str]]] = None, azure_ai_project: Optional[Dict] = None, output_path: Optional[str] = None, **kwargs)#
- Evaluiert Ziel oder Daten mit integrierten oder benutzerdefinierten Evaluatoren. Wenn sowohl Ziel als auch Daten angegeben sind,
werden die Daten durch die Zielfunktion ausgeführt und dann die Ergebnisse ausgewertet.
- Parameter:
evaluation_name (Optional[str]) – Anzeigename der Auswertung.
target (Optional[Callable]) – Ziel, das ausgewertet werden soll. target und data dürfen nicht beide None sein
data (Optional[str]) – Pfad zu den auszuwertenden Daten oder zu übergebenden Daten an target, wenn target gesetzt ist. Nur .jsonl-Dateien werden unterstützt. target und data dürfen nicht beide None sein
evaluators (Optional[Dict[str, Callable]) – Zu verwendende Evaluatoren für die Auswertung. Es sollte ein Wörterbuch mit dem Schlüssel als Alias für den Evaluator und dem Wert als Evaluatorfunktion sein.
evaluator_config (Optional[Dict[str, Dict[str, str]]) – Konfiguration für Evaluatoren. Die Konfiguration sollte ein Wörterbuch mit Evaluatornamen als Schlüssel und einem Wörterbuch mit Spaltenzuordnungen als Werte sein. Die Spaltenzuordnungen sollten ein Wörterbuch mit Spaltennamen in der Evaluatoreingabe als Schlüssel und Spaltennamen in den Eingabedaten oder von target generierten Daten als Werte sein.
output_path (Optional[str]) – Der lokale Ordner oder Dateipfad, an den die Auswertungsergebnisse gespeichert werden sollen, wenn gesetzt. Wenn ein Ordnerpfad angegeben wird, werden die Ergebnisse in einer Datei namens evaluation_results.json im Ordner gespeichert.
azure_ai_project (Optional[Dict]) – Protokolliert Auswertungsergebnisse in AI Studio, wenn gesetzt.
- Gibt zurück:
Auswertungsergebnisse.
- Rückgabetyp:
dict
- Beispiel:
Die Evaluate API kann wie folgt verwendet werden
from promptflow.core import AzureOpenAIModelConfiguration from promptflow.evals.evaluate import evaluate from promptflow.evals.evaluators import RelevanceEvaluator, CoherenceEvaluator model_config = AzureOpenAIModelConfiguration( azure_endpoint=os.environ.get("AZURE_OPENAI_ENDPOINT"), api_key=os.environ.get("AZURE_OPENAI_KEY"), azure_deployment=os.environ.get("AZURE_OPENAI_DEPLOYMENT") ) coherence_eval = CoherenceEvaluator(model_config=model_config) relevance_eval = RelevanceEvaluator(model_config=model_config) path = "evaluate_test_data.jsonl" result = evaluate( data=path, evaluators={ "coherence": coherence_eval, "relevance": relevance_eval, }, evaluator_config={ "coherence": { "answer": "${data.answer}", "question": "${data.question}" }, "relevance": { "answer": "${data.answer}", "context": "${data.context}", "question": "${data.question}" } } )