Der erste Schritt bei der Bewertung Ihrer generativen Modelle oder Anwendungen besteht darin, das Bewertungsziel zu identifizieren und die Bewertungsmesswerte zu definieren. Auf dieser Seite finden Sie einen Überblick über Konzepte im Zusammenhang mit der Definition von Bewertungs-Messwerten für Ihren Anwendungsfall.
Übersicht
Mit generativen KI-Modellen lassen sich Anwendungen für eine Vielzahl von Aufgaben erstellen, z. B. zum Zusammenfassen von Nachrichtenartikeln, zum Beantworten von Kundenanfragen oder zum Schreiben von Code. Mit dem Gen AI Evaluation Service in Vertex AI können Sie jedes Modell mit erklärbaren Messwerten bewerten.
Angenommen, Sie entwickeln eine Anwendung, mit der Artikel zusammengefasst werden. Um die Leistung Ihrer Anwendung bei dieser bestimmten Aufgabe zu bewerten, sollten Sie die Kriterien berücksichtigen, die Sie messen möchten, und die Messwerte, die Sie zur Bewertung verwenden:
Kriterien: Eine oder mehrere Dimensionen, die Sie auswerten möchten, z. B.
conciseness
,relevance
,correctness
oderappropriate choice of words
.Messwerte: Eine einzelne Punktzahl, mit der die Modellausgabe anhand von Kriterien gemessen wird.
Der Gen AI Evaluation Service bietet zwei Haupttypen von Messwerten:
Modellbasierte Messwerte: Bei unseren modellbasierten Messwerten wird Ihr Kandidatenmodell mit einem Richtermodell verglichen. Das Judge-Modell für die meisten Anwendungsfälle ist Gemini. Sie können aber auch Modelle wie MetricX oder COMET für Übersetzungsanwendungsfälle verwenden.
Sie können modellbasierte Messwerte paarweise oder punktweise analysieren:
Punktbasierte Messwerte: Das Bewertungsmodell bewertet die Ausgabe des Kandidatenmodells anhand der Bewertungskriterien. Die Punktzahl könnte beispielsweise zwischen 0 und 5 liegen, wobei 0 bedeutet, dass die Antwort die Kriterien nicht erfüllt, und 5, dass die Antwort die Kriterien gut erfüllt.
Paarweise Messwerte: Das Bewertungsmodell vergleicht die Antworten von zwei Modellen und wählt die bessere aus. Das wird häufig verwendet, wenn ein Kandidatenmodell mit dem Baseline-Modell verglichen wird. Paarweise Messwerte werden nur mit Gemini als Judge-Modell unterstützt.
Berechnungsbasierte Messwerte: Diese Messwerte werden mithilfe mathematischer Formeln berechnet, um die Ausgabe des Modells mit einer Grundwahrheit oder einem Referenzwert zu vergleichen. Häufig verwendete rechenbasierte Messwerte sind ROUGE und BLEU.
Sie können berechnungsbasierte Messwerte eigenständig oder zusammen mit modellbasierten Messwerten verwenden. Anhand der folgenden Tabelle können Sie entscheiden, wann Sie modellbasierte oder berechnungsbasierte Messwerte verwenden sollten:
Bewertungsansatz | Daten | Kosten und Geschwindigkeit | |
---|---|---|---|
Modellbasierte Messwerte | Mit einem Judge-Modell die Leistung anhand deskriptiver Bewertungskriterien bewerten | Ground Truth ist optional | Etwas teurer und langsamer |
Berechnungsbasierte Messwerte | Leistung mit mathematischen Formeln bewerten | In der Regel ist eine Grundwahrheit erforderlich | Geringe Kosten und schnelle Umsetzung |
Weitere Informationen finden Sie unter Dataset vorbereiten und Bewertung ausführen.
Modellbasierte Messwerte definieren
Bei der modellbasierten Bewertung wird ein Machine-Learning-Modell als Bewertungsmodell verwendet, um die Ausgaben des Kandidatenmodells zu bewerten.
Proprietäre Google-Bewertungsmodelle wie Gemini werden mit menschlichen Prüfern abgestimmt, um ihre Qualität zu gewährleisten. Sie werden verwaltet und sind sofort einsatzbereit. Die modellbasierte Bewertung variiert je nach den von Ihnen angegebenen Bewertungsstatistiken.
Die modellbasierte Bewertung folgt diesem Prozess:
Datenvorbereitung: Sie stellen Bewertungsdaten in Form von Eingabe-Prompts bereit. Die Kandidatenmodelle erhalten die Prompts und generieren entsprechende Antworten.
Bewertung: Die Bewertungsmesswerte und generierten Antworten werden an das Judge-Modell gesendet. Das Judge-Modell bewertet jede Antwort einzeln und liefert eine zeilenbasierte Bewertung.
Aggregation und Erklärung: Der Gen AI Evaluation Service fasst diese einzelnen Bewertungen zu einer Gesamtpunktzahl zusammen. Die Ausgabe enthält auch Chain-of-Thought-Erklärungen für jedes Urteil, in denen die Gründe für die Auswahl dargelegt werden.
Der Gen AI Evaluation Service bietet die folgenden Optionen zum Einrichten Ihrer modellbasierten Messwerte mit dem Vertex AI SDK:
Option | Beschreibung | Optimal für |
---|---|---|
Vorhandenes Beispiel verwenden | Verwenden Sie eine vordefinierte Prompt-Vorlage für Messwerte, um loszulegen. | Gängige Anwendungsfälle, Zeitersparnis |
Messwerte mit unserer Vorlagenoberfläche definieren | Sie erhalten Unterstützung beim Definieren Ihrer Messwerte. Unsere Vorlagenschnittstelle bietet Struktur und Vorschläge. | Anpassung mit Support |
Messwerte von Grund auf definieren | Sie haben die volle Kontrolle über Ihre Messwertdefinitionen. | Ideal für sehr spezifische Anwendungsfälle. Erfordert mehr technisches Fachwissen und Zeitaufwand. |
Sie möchten beispielsweise eine generative KI-Anwendung entwickeln, die flüssige und unterhaltsame Antworten liefert. Für diese Anwendung können Sie über die Vorlagenschnittstelle zwei Kriterien für die Bewertung definieren:
Flüssigkeit: Die Sätze sind flüssig und es werden keine umständlichen Formulierungen oder Schachtelsätze verwendet. Ideen und Sätze sind logisch miteinander verbunden und Übergänge werden bei Bedarf effektiv eingesetzt.
Unterhaltung: Kurzer, amüsanter Text mit Emojis, Ausrufezeichen und Fragen, um schnelle und spontane Kommunikation und Ablenkung zu vermitteln.
Um diese beiden Kriterien in einen Messwert umzuwandeln, benötigen Sie einen Gesamtscore zwischen -1 und 1, der als custom_text_quality
bezeichnet wird. So können Sie einen Messwert definieren:
# Define a pointwise metric with two criteria: Fluency and Entertaining.
custom_text_quality = PointwiseMetric(
metric="custom_text_quality",
metric_prompt_template=PointwiseMetricPromptTemplate(
criteria={
"fluency": (
"Sentences flow smoothly and are easy to read, avoiding awkward"
" phrasing or run-on sentences. Ideas and sentences connect"
" logically, using transitions effectively where needed."
),
"entertaining": (
"Short, amusing text that incorporates emojis, exclamations and"
" questions to convey quick and spontaneous communication and"
" diversion."
),
},
rating_rubric={
"1": "The response performs well on both criteria.",
"0": "The response is somewhat aligned with both criteria",
"-1": "The response falls short on both criteria",
},
),
)
Eine vollständige Liste der Vorlagen für Messwert-Prompts finden Sie unter Vorlagen für Messwert-Prompts für die Bewertung.
Übersetzungsmodelle bewerten
Der Gen AI Evaluation Service bietet die folgenden Messwerte für die Bewertung von Übersetzungsaufgaben:
MetricX und COMET sind punktbasierte, modellbasierte Messwerte, die für Übersetzungsaufgaben trainiert wurden. Sie können die Qualität und Genauigkeit der Ergebnisse von Übersetzungsmodellen für Ihre Inhalte bewerten, unabhängig davon, ob es sich um Ausgaben von NMT-, TranslationLLM- oder Gemini-Modellen handelt.
Sie können Gemini auch als Judge-Modell verwenden, um Ihr Modell in Kombination mit MetricX, COMET oder BLEU hinsichtlich Flüssigkeit, Kohärenz, Ausführlichkeit und Textqualität zu bewerten.
MetricX ist eine von Google entwickelte, auf Fehlern basierende Metrik, mit der ein Gleitkommawert zwischen 0 und 25 vorhergesagt wird, der die Qualität einer Übersetzung angibt. MetricX ist sowohl als referenzbasierte als auch als referenzfreie (QE) Methode verfügbar. Wenn Sie diesen Messwert verwenden, ist ein niedrigerer Wert besser, da er auf weniger Fehler hinweist.
COMET verwendet einen referenzbasierten Regressionsansatz, der Werte zwischen 0 und 1 liefert, wobei 1 für eine perfekte Übersetzung steht.
BLEU (Bilingual Evaluation Understudy) ist ein berechnungsbasierter Messwert. Der BLEU-Score gibt an, wie ähnlich der Kandidatentext dem Referenztext ist. Je näher ein BLEU-Score-Wert an 1 liegt, desto näher ist die Übersetzung dem Referenztext.
Beachten Sie, dass BLEU-Werte nicht für den Vergleich verschiedener Korpora und Sprachen empfohlen werden. Ein BLEU-Score von 50 für die Übersetzung von Englisch ins Deutsche ist beispielsweise nicht mit einem BLEU-Score von 50 für die Übersetzung von Japanisch ins Englische vergleichbar. Viele Übersetzungsexperten sind zu modellbasierten Messwertansätzen übergegangen, die eine höhere Korrelation mit menschlichen Bewertungen aufweisen und Fehler besser erkennen.
Informationen zum Ausführen von Bewertungen für Übersetzungsmodelle finden Sie unter Übersetzungsmodell bewerten.
Zwischen punktweiser und paarweiser Bewertung wählen
Anhand der folgenden Tabelle können Sie entscheiden, wann Sie die punktweise oder paarweise Auswertung verwenden möchten:
Definition | Geeignet für | Beispielanwendungsfälle | |
---|---|---|---|
Punktweise Bewertung | Ein Modell bewerten und anhand der Kriterien Werte generieren |
|
|
Paarweise Bewertung | Zwei Modelle miteinander vergleichen und auf Grundlage der Kriterien eine Präferenz generieren |
|
|
Berechnungsbasierte Messwerte
Berechnungsbasierte Messwerte vergleichen, ob die von LLM generierten Ergebnisse mit einem Ground Truth-Dataset von Eingabe/Ausgabe-Paaren konsistent sind. Die am häufigsten verwendeten Messwerte lassen sich in die folgenden Gruppen einteilen:
- Lexikonbasierte Messwerte: Verwenden Sie mathematische Methoden, um die String-Ähnlichkeiten zwischen den von LLM generierten Ergebnissen und der Ground Truth zu berechnen, z. B.
Exact Match
undROUGE
. - Zählbasierte Messwerte: Aggregieren Sie die Anzahl der Zeilen, die bestimmte Ground Truth-Labels wie
F1-score
,Accuracy
undTool Name Match
erreichen oder nicht erreichen. - Einbettungs-basierte Messwerte: Berechnen Sie den Abstand zwischen den von LLM generierten Ergebnissen und der Ground Truth im Einbettungsraum, um den Grad der Ähnlichkeit zu ermitteln.
Allgemeine Textgenerierung
Mithilfe der folgenden Messwerte können Sie bewerten, ob das Modell in der Lage ist, dafür zu sorgen, dass die Antworten für Ihre Nutzer nützlich, sicher und effektiv sind.
Genaue Übereinstimmung
Mit dem Messwert exact_match
wird berechnet, ob eine Modellantwort genau mit einer Referenz übereinstimmt.
- Tokenlimit: Keines
Bewertungskriterien
Nicht zutreffend.
Messwerteingabeparameter
Eingabeparameter | Beschreibung |
---|---|
response |
Die LLM-Antwort. |
reference |
Die goldene LLM-Antwort als Referenz. |
Ausgabewerte
Wert | Beschreibung |
---|---|
0 | Keine Übereinstimmung |
1 | Übereinstimmend |
BLEU
Der Messwert bleu
(BiLingual Evaluation Understudy) enthält das Ergebnis eines Algorithmus zur Bewertung der Qualität der Antwort, die von einer natürlichen Sprache in eine andere natürliche Sprache übersetzt wurde. Die Qualität der Antwort wird als Übereinstimmung zwischen einem response
-Parameter und dem zugehörigen reference
-Parameter betrachtet.
- Tokenlimit: Keines
Bewertungskriterien
Nicht zutreffend.
Messwerteingabeparameter
Eingabeparameter | Beschreibung |
---|---|
response |
Die LLM-Antwort. |
reference |
Die goldene LLM-Antwort für die Referenz. |
Ausgabewerte
Wert | Beschreibung |
---|---|
Eine Gleitkommazahl im Bereich [0,1] | Höhere Werte deuten auf bessere Übersetzungen hin. Ein Wert von 1 steht für eine perfekte Übereinstimmung mit dem reference . |
ROUGE
Mit dem ROUGE
-Messwert wird der angegebene response
-Parameter mit einem reference
-Parameter verglichen.
Alle rouge
-Messwerte geben den F1-Wert zurück. rouge-l-sum
wird standardmäßig berechnet. Sie können jedoch die rouge
-Variante angeben, die Sie verwenden möchten.
- Tokenlimit: Keines
Bewertungskriterien
Nicht zutreffend
Messwerteingabeparameter
Eingabeparameter | Beschreibung |
---|---|
response |
Die LLM-Antwort. |
reference |
Die goldene LLM-Antwort für die Referenz. |
Ausgabewerte
Wert | Beschreibung |
---|---|
Eine Gleitkommazahl im Bereich [0,1] | Ein Wert, der näher an 0 liegt, bedeutet eine geringe Ähnlichkeit zwischen response und reference . Je näher der Wert an 1 liegt, desto größer ist die Ähnlichkeit zwischen response und reference . |
Tool-Nutzung und Funktionsaufrufe
Die folgenden Messwerte helfen Ihnen, die Fähigkeit des Modells zu bewerten, einen gültigen Tool- (Funktions-)Aufruf vorherzusagen.
Aufruf gültig
Der Messwert tool_call_valid
beschreibt die Fähigkeit des Modells, einen gültigen Tool-Aufruf vorherzusagen. Nur der erste Tool-Aufruf wird geprüft.
- Tokenlimit: Keines
Bewertungskriterien
Bewertungskriterium | Beschreibung |
---|---|
Gültigkeit | Die Ausgabe des Modells enthält einen gültigen Tool-Aufruf. |
Formatierung | Ein JSON-Wörterbuch enthält die Felder name und arguments . |
Messwerteingabeparameter
Eingabeparameter | Beschreibung |
---|---|
prediction |
Die Ausgabe des Kandidatenmodells, ein JSON-serialisierter String mit den Schlüsseln content und tool_calls . Der Wert content ist die Textausgabe des Modells. Der Wert tool_calls ist ein JSON-serialisierter String einer Liste von Tool-Aufrufen. Hier ein Beispiel:{"content": "", "tool_calls": [{"name":
"book_tickets", "arguments": {"movie": "Mission Impossible Dead Reckoning
Part 1", "theater":"Regal Edwards 14", "location": "Mountain View CA",
"showtime": "7:30", "date": "2024-03-30","num_tix": "2"}}]} |
reference |
Die Referenzvorhersage für die Grundwahrheit, die dasselbe Format wie prediction hat. |
Ausgabewerte
Wert | Beschreibung |
---|---|
0 | Ungültiger Tool-Aufruf |
1 | Gültiger Tool-Aufruf |
Übereinstimmende Namen
Der Messwert tool_name_match
beschreibt die Fähigkeit des Modells, einen Toolaufruf mit dem richtigen Toolnamen vorherzusagen. Nur der erste Tool-Aufruf wird geprüft.
- Tokenlimit: Keines
Bewertungskriterien
Bewertungskriterium | Beschreibung |
---|---|
Namensabgleich | Der vom Modell vorhergesagte Toolaufruf stimmt mit dem Namen des Referenz-Toolaufrufs überein. |
Messwerteingabeparameter
Eingabeparameter | Beschreibung |
---|---|
prediction |
Die Ausgabe des Kandidatenmodells, ein JSON-serialisierter String mit den Schlüsseln content und tool_calls . Der Wert content ist die Textausgabe des Modells. Der Wert tool_call ist ein JSON-serialisierter String einer Liste von Tool-Aufrufen. Hier ein Beispiel:{"content": "","tool_calls": [{"name": "book_tickets", "arguments":
{"movie": "Mission Impossible Dead Reckoning Part 1", "theater":"Regal
Edwards 14", "location": "Mountain View CA", "showtime": "7:30", "date":
"2024-03-30","num_tix": "2"}}]} |
reference |
Die Referenzvorhersage für die Ground Truth, die dasselbe Format wie prediction hat. |
Ausgabewerte
Wert | Beschreibung |
---|---|
0 | Name des Toolaufrufs entspricht nicht der Referenz. |
1 | Der Name des Toolaufrufs entspricht der Referenz. |
Übereinstimmung des Parameterschlüssels
Der Messwert tool_parameter_key_match
beschreibt die Fähigkeit des Modells, einen Tool-Aufruf mit den richtigen Parameternamen vorherzusagen.
- Tokenlimit: Keines
Bewertungskriterien
Bewertungskriterium | Beschreibung |
---|---|
Verhältnis der übereinstimmenden Parameter | Das Verhältnis zwischen der Anzahl der vorhergesagten Parameter, die mit den Parameternamen des Referenz-Tool-Aufrufs übereinstimmen, und der Gesamtzahl der Parameter. |
Messwerteingabeparameter
Eingabeparameter | Beschreibung |
---|---|
prediction |
Die Ausgabe des Kandidatenmodells, ein JSON-serialisierter String, der die Schlüssel content und tool_calls enthält. Der Wert content ist die Textausgabe des Modells. Der Wert tool_call ist ein JSON-serialisierter String einer Liste von Tool-Aufrufen. Hier ein Beispiel:{"content": "", "tool_calls": [{"name": "book_tickets", "arguments":
{"movie": "Mission Impossible Dead Reckoning Part 1", "theater":"Regal
Edwards 14", "location": "Mountain View CA", "showtime": "7:30", "date":
"2024-03-30","num_tix": "2"}}]} |
reference |
Die Ground-Truth-Referenzmodellvorhersage, die dasselbe Format wie prediction hat. |
Ausgabewerte
Wert | Beschreibung |
---|---|
Eine Gleitkommazahl im Bereich [0,1] | Ein höherer Wert für 1 bedeutet, dass mehr Parameter den Namen der reference -Parameter entsprechen. |
KV-Übereinstimmung für Parameter
Der Messwert tool_parameter_kv_match
beschreibt die Fähigkeit des Modells, einen Tool-Aufruf mit den richtigen Parameternamen und Schlüsselwerten vorherzusagen.
- Tokenlimit: Keines
Bewertungskriterien
Bewertungskriterium | Beschreibung |
---|---|
Verhältnis der übereinstimmenden Parameter | Das Verhältnis zwischen der Anzahl der vorhergesagten Parameter, die sowohl mit den Parameternamen als auch mit den Werten des Referenz-Tool-Aufrufs übereinstimmen, und der Gesamtzahl der Parameter. |
Messwerteingabeparameter
Eingabeparameter | Beschreibung |
---|---|
prediction |
Die Ausgabe des Kandidatenmodells, ein JSON-serialisierter String mit den Schlüsseln content und tool_calls . Der Wert content ist die Textausgabe des Modells. Der Wert tool_call ist ein JSON-serialisierter String einer Liste von Tool-Aufrufen. Hier ein Beispiel:{"content": "", "tool_calls": [{"name": "book_tickets", "arguments":
{"movie": "Mission Impossible Dead Reckoning Part 1", "theater":"Regal
Edwards 14", "location": "Mountain View CA", "showtime": "7:30", "date":
"2024-03-30","num_tix": "2"}}]} |
reference |
Die Referenzvorhersage für die Grundwahrheit, die dasselbe Format wie prediction hat. |
Ausgabewerte
Wert | Beschreibung |
---|---|
Eine Gleitkommazahl im Bereich [0,1] | Je höher der Wert von 1 ist, desto mehr Parameter stimmen mit den Namen und Werten der reference -Parameter überein. |
Im Bewertungsdienst für generative KI können Sie berechnungsbasierte Messwerte über das Vertex AI SDK for Python verwenden.
Qualität der Baseline-Bewertung für generative Aufgaben
Beachten Sie bei der Bewertung der Ausgabe von generativen KI-Modellen, dass der Bewertungsprozess von Natur aus subjektiv ist und die Qualität der Bewertung je nach Aufgabe und Bewertungskriterien variieren kann. Diese Subjektivität gilt auch für menschliche Prüfer. Weitere Informationen zu den Herausforderungen bei der konsistenten Bewertung von generativen KI-Modellen finden Sie unter Judging LLM-as-a-Judge with MT-Bench and Chatbot Arena und Learning to summarize from human feedback.
Nächste Schritte
Suchen Sie nach einer Vorlage für modellbasierte Messwerte.
Probieren Sie ein Bewertungs-Beispielnotebook aus.