- Anwendungen auf Basis von LLMs (Large Language Models) sind aufgrund ihrer nichtdeterministischen Ausgaben mit traditionellen Testmethoden nur schwer angemessen zu bewerten
- Daher sind spezielle Evaluierungsmethoden (Evals) unverzichtbar, um die Leistung von LLM-Systemen aufrechtzuerhalten und zu verbessern
Warum Evals wichtig sind
- Leistungsmaßstäbe festlegen: eine Richtung für die Modellleistung vorgeben und vergleichbare Benchmarks definieren
- Konsistenz und Zuverlässigkeit sicherstellen: unvorhersehbare Ausgaben frühzeitig erkennen und kontrollieren
- Verbesserungspotenziale aufzeigen: Leistungseinbrüche klar identifizieren und gezielte Optimierungen ermöglichen
- Regressionstests ermöglichen: prüfen, ob die Leistung nach Änderungen erhalten bleibt, und so Stabilität gewährleisten
Zentrale Elemente der Evaluierung vor dem Deployment
Warum Evaluierung vor dem Deployment wichtig ist
- Leistung lässt sich frühzeitig messen und vergleichen
- Regressionsprobleme bei Änderungen an Code, Prompts oder Parametern können vorab erkannt werden
Wie die Evaluierung durchgeführt wird
1. Ground-Truth-Datensätze erstellen
- Es wird ein Datensatz benötigt, der aus von Fachleuten erstellten Frage-Antwort-Paaren besteht
- Wichtig ist, vielfältige Szenarien einzubeziehen, die reale Fragetypen von Nutzern widerspiegeln
Kann ein LLM Ground Truth erzeugen?
- Ein LLM kann unterstützend eingesetzt werden, die alleinige Erstellung wird jedoch nicht empfohlen
- mangelndes Verständnis des Nutzerverhaltens
- für kontextgerechte Fragen und Antworten ist menschliche Prüfung erforderlich
- zur Sicherstellung von Domäneneignung und Qualität ist menschliche Begutachtung unverzichtbar
2. Evaluierungsmetriken auswählen
- Answer relevancy: ob eine direkte und sinnvolle Antwort auf die Frage gegeben wird
- Coherence: logischer Aufbau und Klarheit der Antwort
- Contextual relevance: wie gut der Gesprächskontext berücksichtigt wird
- Responsibility: ob die Ausgabe verantwortungsvoll ist, etwa hinsichtlich Ethik, Schädlichkeit oder Verzerrungen
3. RAG-Evaluierungsmetriken
- Generierungsmetriken:
- Faithfulness: ob die Antwort faktentreu ist
- Answer relevancy: Angemessenheit der Antwort
- Retrieval-Metriken:
- Context precision: Verhältnis von relevantem Signal zu Rauschen in den abgerufenen Informationen
- Context recall: ob die für die richtige Antwort notwendigen Informationen gut gefunden wurden
4. Aufgabenbezogene Metriken
- Es werden maßgeschneiderte Evaluierungsmetriken benötigt, die zur jeweiligen Aufgabe passen
- Beispiel: bei Zusammenfassungen Fluency, Coherence, Consistency, Relevance
5. Score-Berechnung und System-Tuning
- Für jede Metrik werden Scores berechnet, indem tatsächliche Ausgaben mit Ground Truth verglichen werden
- Zum Beispiel:
- schwacher Recall: Chunk-Größe verkleinern
- niedrige Precision: Einführung von Reranking erwägen
- Beispiele für Evaluierungsbibliotheken: DeepEval, Relari-ai
LLM-as-Judge als Evaluierungstechnik
- Bewertung auf Basis eines LLMs wie GPT-4 ohne Ground Truth
- Beispiele: G-eval-Framework, Vicuna, QLoRA-Paper
- Nachteile:
- Einige Metriken (z. B. Context Recall) lassen sich ohne Ground Truth nicht messen
- in Genauigkeit und Detailtiefe ist eine menschliche Bewertung überlegen
- Fazit: Die Kombination aus LLM-as-Judge und Ground Truth ist ideal
Wie man Evaluierung in die Deployment-Phase integriert
- Evaluierungsautomatisierung in die Deployment-Pipeline integrieren
- automatisierte Tests bei Code-Commits oder vor dem Deployment ausführen
- Beispiel: automatisierte Tests zur Erkennung von Schädlichkeit und Halluzinationen mit Giskard
- Es sollten auch Tests für die Phasen der Datenvorverarbeitung und Datenerhebung enthalten sein
Evaluierung nach dem Deployment und das Daten-Flywheel
Monitoring im Betrieb
- Ein- und Ausgaben in Echtzeit nachverfolgen
- regelmäßige Evaluierungssitzungen mit Domänenexperten
- Kanäle für Nutzerfeedback sicherstellen
Daten-Flywheel-Strategie
- Aufbau einer kontinuierlichen Verbesserungsschleife, indem im Betrieb entstandene Daten und Feedback genutzt werden
- Beispiel: Analyse von Nutzer-Fragemustern → Verbesserung des Retrieval-Verfahrens
- Metrikbasiertes Anpassen von Prompts, Inferenzparametern, Retrieval-Verfahren usw.
- Je nach Nutzerverhalten und Fehlerszenarien müssen auch die Metriken angepasst werden
Fazit: Die Strategie „Evals First“ ist der Schlüssel zu zuverlässigen LLM-Produkten
- Bereits zu Beginn der Entwicklung von LLM-Anwendungen sollte eine evaluierungszentrierte Denkweise eingeführt werden
- Entscheidend ist, die richtigen Metriken und Kriterien frühzeitig zu definieren und sie als Referenzpunkt für Entwicklung und Deployment zu nutzen
- Evaluierung sollte nicht als nachgelagerte Aktivität, sondern als zentraler Entwicklungsprozess verstanden werden, um nutzerzentrierte und vertrauenswürdige KI-Systeme aufzubauen
1 Kommentare
Meiner Erfahrung nach – und wie man auch an anderen Beispielen wie https://blog.lawrencejones.dev/ai-mvp/ sieht – garantieren neuere Modelle nicht automatisch bessere Ergebnisse. Jedes Mal, wenn man ein Modell oder einen Prompt tuned, muss man eine Evaluation anhand eines Datensatzes durchführen, und selbst wenn ein LLM die Beurteilung unterstützt, ist es doch ein wenig ironisch, dass Menschen den Ground-Truth-Datensatz für das LLM-Modell trotzdem einzeln von Hand erstellen müssen haha.