Der Weg zur Produktion: Evaluierungen und Observability für LLM-Anwendungen
Da sich viele Machine-Learning-Teams darauf vorbereiten, große Sprachmodelle (LLMs)) in der Produktion einzusetzen, stehen sie vor erheblichen Herausforderungen, etwa dem Umgang mit Halluzinationen und der Sicherstellung einer verantwortungsvollen Bereitstellung. Bevor diese Probleme angegangen werden, ist es entscheidend, sie effektiv zu evaluieren und zu identifizieren.
Kürzlich teilte Hakan Tekgul, ML Solutions Architect bei Arize AI, beim Unstructured Data Meetup aufschlussreiche Strategien zur Durchführung schneller und präziser LLM-Evaluierungen. Diese Ansätze wahren hohe Standards bei Antwortqualität und Zuverlässigkeit und stellen die Lieferung greifbaren geschäftlichen Mehrwerts sicher.
Sehen Sie sich die Aufzeichnung von Hakan Tekguls Vortrag an
Falls Sie die Veranstaltung verpasst haben, keine Sorge! Hier ist eine detaillierte Aufschlüsselung von Hakans Präsentation.
Der Übergang von GenAI-Demos zur Produktion ist herausfordernd!
Der Aufbau von GenAI-Anwendungen mag anfangs einfach erscheinen, insbesondere mit benutzerfreundlichen Tools wie LangChain und LlamaIndex, die die Erstellung von Demo-Anwendungen erleichtern. Der Übergang zu vollwertigen Produkten, die greifbaren geschäftlichen Mehrwert schaffen können, ist jedoch herausfordernd. Der Kern liegt darin, zu gewährleisten, dass diese Anwendungen in einer Produktionsumgebung konsistent zuverlässige, hochwertige Ergebnisse liefern.
Wie ist es, von einer Twitter-Demo zu einem realen Produkt überzugehen
Veranschaulichen wir diese Herausforderung anhand eines E-Commerce-Chatbot-Beispiels. Benutzer interagieren mit diesem Chatbot, um ihre Urlaube zu planen.
Die Oberfläche des E-Commerce-Chatbots
Während die Anwendung aus Sicht des Benutzers einfach erscheinen mag, sind die Abläufe im Hintergrund komplex. Hier sind die wichtigsten Schritte in diesem Workflow:
Chat-Initiierung: Benutzer initiieren die Sitzung durch Interaktion mit dem Chatbot.
Parameterextraktion: Das LLM extrahiert strukturierte Parameter aus der Eingabe des Benutzers.
Ranking/Empfehlung: Das Modell generiert auf Grundlage der extrahierten Parameter eine Liste potenzieller Urlaubsziele.
Embedding-Suche und Abruf: Das System verfeinert die Liste, indem es eine Vektorsuche nach relevanteren Informationen durchführt.
Antwortgenerierung: Das LLM generiert auf Grundlage der abgerufenen Daten eine personalisierte Antwort.
Die wichtigsten Schritte im Chatbot-Workflow und potenzielle Strategien zur Fehlerbehebung
Jeder Schritt in diesem Workflow kann spezifische Probleme aufweisen. Effektive Fehlerbehebung ist entscheidend, um eine nahtlose Benutzererfahrung und optimale Leistung sicherzustellen. Beispielsweise müssen Sie möglicherweise:
Den reibungslosen Betrieb von Tools wie LangChain und LlamaIndex ohne Fehler sicherstellen.
Prompts erstellen und verfeinern, um Daten aus Benutzereingaben präzise zu extrahieren.
Das Empfehlungssystem kontinuierlich evaluieren und optimieren.
Die Genauigkeit und Relevanz der abgerufenen Informationen verbessern.
Das gesamte System sowie jede Komponente einzeln beheben.
Feedback nutzen, um das System kontinuierlich zu verfeinern und zu verbessern.
LLM-Observability kommt zur Rettung!
Um die zuvor skizzierten Herausforderungen zu bewältigen, ist es entscheidend, Evaluierungstools für nahtlose LLM-Observability zu nutzen. Fünf primäre Facetten der LLM-Observability erfordern Aufmerksamkeit, um vollständige Sichtbarkeit Ihrer Anwendungen zu gewährleisten. Durch die kompetente Durchführung dieser Evaluierungen können Teams eine ganzheitliche Beobachtung ihrer Anwendungen erreichen und so Zuverlässigkeit und optimale Leistung sicherstellen.
| Fünf Säulen der LLM-Observability | ||
| Säule | Beschreibung | Häufige Probleme |
| Evaluation | Systematische Bewertung von LLM-Ausgaben mithilfe eines separaten Evaluations-LLM | Ausgabequalität und Ausrichtung |
| Spans und Traces | Detaillierte Sichtbarkeit in Workflow-Aufschlüsselungen | Identifizierung spezifischer Fehlerpunkte |
| Prompt Engineering | Iterative Verfeinerung von Prompt-Vorlagen für verbesserte Ergebnisse | Verbesserung der Antwortgenauigkeit und Relevanz |
| Suche und Retrieval | Abgerufenen Kontext lokalisieren und verbessern | Verbesserung der Retrieval-Genauigkeit |
| Fine-tuning | Erneutes Training von LLMs mit spezifischen Daten für maßgeschneiderte Leistung | Ausrichtung an geschäftsspezifischen Anforderungen |
In den folgenden Abschnitten werden wir die Kategorien LLM Evaluation und LLM Spans und Traces genauer untersuchen, um ihre Bedeutung bei der Optimierung der LLM-Observability hervorzuheben.
LLM-Evaluierungen
LLM-Evaluierungen (LLM Evals) beziehen sich auf die systematische Bewertung der Ausgaben Ihrer GenAI-Anwendung mithilfe eines separaten LLM als „Richter“. Regelmäßige Evaluierungen stellen sicher, dass die generierten Inhalte Qualitätsstandards erfüllen und die Erwartungen der Benutzer erfüllen. Beispielsweise setzt ein Dienst für Urlaubsvorschläge ein Evaluations-LLM ein, um Empfehlungen regelmäßig zu überprüfen. Dieses Evaluierungssystem löst einen Überprüfungsprozess aus, um die Trainingsdaten zu aktualisieren, wenn Empfehlungen veraltet oder irrelevant werden.
Model Evals vs. LLM Evals
Bevor wir ins Detail gehen, vergleichen wir zwei ähnliche Konzepte: Model Evals und LLM Evals.
Model Evals helfen Ihnen, das grundlegende Modell für Ihre Anwendung auszuwählen und sicherzustellen, dass es mit den allgemeinen Anwendungsfällen übereinstimmt.
LLM Evals messen die Leistung bestimmter Aufgaben und Komponenten innerhalb Ihrer LLM-basierten Anwendung. LLM Evals umfassen die Evaluierung von Retrieval, Halluzination, Benutzerfrustration, Q&A, Zusammenfassung und Codegenerierung, wie im folgenden Bild dargestellt.
Production LLM Evals- Task Performance Measurement | Arize
Wie LLM Evals funktionieren
Die Bewertung der Leistung großer Sprachmodelle (LLMs) mithilfe eines Richter-LLM mag komplex erscheinen, wird jedoch mit den richtigen Tools und Methoden deutlich besser handhabbar. Die Phoenix LLM Evals library ist ein Open-Source-Tool, das entwickelt wurde, um schnelle und unkomplizierte LLM-Evaluierungen zu ermöglichen. Diese Bibliothek integriert ein Richter-LLM, Evaluierungsvorlagen und Modellparameter in ein kohärentes Framework.
Wie funktioniert dieser Prozess? Ihre Eingabedaten werden zusammen mit den von Ihrer LLM-Anwendung generierten Ausgabedaten in die Phoenix library eingespeist. Das Judge LLM innerhalb der Bibliothek verwendet dann diese Eingabe- und Ausgabedaten zusammen mit einer Prompt-Vorlage, um die Leistung Ihres Systems bei einer bestimmten Aufgabe zu bewerten.
LLM Evals- How They Work in General
Sehen wir uns den Evaluierungsprozess an. Betrachten Sie eine Retrieval Augmented Generation (RAG)-Anwendung, die Kontext aus einer Vektordatenbank wie Milvus abruft und dann auf Grundlage der Frage des Benutzers und des abgerufenen Kontexts Antworten generiert.
Bei der Messung der Leistung in einer RAG-Retrieval-Aufgabe werden die Eingabedaten (die Frage des Benutzers) und die Ausgabedaten (Referenztext) in die Phoenix Library eingespeist. Das Judge LLM verwendet das Eval Template, um zu bewerten, wie gut der Referenztext die Frage des Benutzers beantwortet. Wenn die Frage des Benutzers beispielsweise „Finde traditionelle französische Rezepte“ lautet und der Referenztext ein Rezept für karamellisierte Zwiebel-Brotsuppe bereitstellt, vergleicht das Eval Template diese beiden, um ihre Relevanz zu bewerten.
LLM Evals – Wie sie in einem RAG-Anwendungsfall funktionieren
Benchmarking Ihrer LLM-Eval-Ergebnisse
Wir haben besprochen, wie der LLM-Evaluierungsprozess funktioniert, aber wie können Sie sicher sein, dass er für Ihren spezifischen Anwendungsfall effektiv ist? Die Antwort liegt im Benchmarking Ihrer Evaluierungsergebnisse.
Nachfolgend finden Sie die wichtigsten Schritte, die wir unternehmen, um die Ergebnisse zu benchmarken.
Zunächst nutzen wir öffentliche Datensätze, die von Menschen gelabelte Antworten enthalten. Diese Datensätze bestehen aus Benutzerfragen und Referenztexten, mit Annotationen, die ihre Relevanz angeben. Mit diesen etablierten Datensätzen schaffen wir eine solide Grundlage für den Vergleich.
Als Nächstes vergleichen wir die Leistung unserer Prompt Templates mit den von Menschen bereitgestellten Antworten in diesen öffentlichen Datensätzen. Dieser Schritt ermöglicht es uns zu beurteilen, wie gut unsere Templates relevante Antworten identifizieren, wobei menschliches Urteil als Benchmark dient.
Schließlich berechnen wir Precision- und Recall-Werte, um die Leistung unserer Prompt Templates zu quantifizieren. Precision misst die Genauigkeit der relevanten Ergebnisse, die vom RAG-System zurückgegeben werden, während Recall die Fähigkeit des Systems misst, alle relevanten Instanzen abzurufen.
Diese Precision- und Recall-Werte zeigen, wie effektiv unsere Prompt Templates über ein breites Spektrum von durch Menschen gelabelten Beispielen hinweg funktionieren. Dieser Benchmarking-Prozess stellt sicher, dass die Evaluierung und die Prompt Templates zuverlässig sind und zur Bewertung der Leistung Ihrer LLM-Anwendungen vertrauenswürdig eingesetzt werden können.
Bestimmen Sie nach diesen Messungen, welches Modell Sie für Ihr Judge LLM verwenden sollten. Unterschiedliche Aufgaben können unterschiedliche Judge-Modelle erfordern. Beispielsweise schneidet GPT-3.5-turbo-instruct bei einer Q&A-Korrektheits-Evaluierung möglicherweise nicht gut ab, erzielt aber bei der Retrieval-Evaluierung hervorragende Ergebnisse. Möglicherweise müssen Sie Foundation Models wechseln, wenn Sie etwas anderes evaluieren. Deshalb ist Benchmarking entscheidend.
Nach diesen Messungen besteht der nächste Schritt darin, zu bestimmen, welches Modell Sie für Ihr Judge LLM verwenden sollten. Unterschiedliche Aufgaben können unterschiedliche Judge-Modelle erfordern. Beispielsweise schneidet GPT-3.5-turbo-instruct bei einer Q&A-Korrektheits-Evaluierung möglicherweise nicht gut ab, glänzt aber bei Retrieval-Evaluierungen. Möglicherweise müssen Sie grundlegende Modelle wechseln, um einen anderen Aspekt zu evaluieren. Diese Flexibilität ist der Grund, warum Benchmarking entscheidend ist.
LLM Spans und Traces
Nun haben wir gelernt, wie Sie Ihre LLM-Anwendungen als Ganzes evaluieren. Aber wie evaluieren Sie die Interaktion Ihrer Anwendung Komponente für Komponente? Betrachten Sie eine vollständige Kette von Retrieval-Systemen, die auf Frameworks wie LamaIndex oder LangChain aufgebaut sind. Wenn eine Q&A-Evaluierung eine falsche Antwort anzeigt, wissen Sie lediglich, dass die Interaktion fehlgeschlagen ist, müssen aber noch ermitteln, wo. Hier kommt das Konzept von LLM Spans und Traces ins Spiel.
Verschiedene Arten von Span-Evaluierungen können dabei helfen, den Fehler genau zu lokalisieren. Sie können zum Beispiel Folgendes verwenden:
User-Frustration-Eval zur Überprüfung der Chatbot-Interaktion
Classification-Eval während der Attributextraktion
Retrieval-Eval zur Bewertung der Retrieval-Komponente
Classification-Eval für den Klassifizierungsprozess
Evals auf LLM Spans
Wenn es ein Problem mit der Retrieval-Evaluation gibt, wirkt sich das direkt auf die Korrektheit der Q&A aus. LLM Spans and Traces helfen dabei, diese Probleme innerhalb Ihrer Anwendung zu visualisieren und zu diagnostizieren.
Hakan teilte außerdem eine Demo, die zeigt, wie LLM Spans and Traces funktioniert. Sehen Sie sich die Aufzeichnung seines Vortrags auf YouTube an, um weitere Demo-Details zu sehen.
Fazit
Wenn man auf Hakan Tekguls Vortrag zurückblickt, wird deutlich, dass die Bereitstellung von LLMs in der Produktion keine Kleinigkeit ist. Der Weg von einer ausgefeilten Demo zu einer zuverlässigen, geschäftstauglichen Anwendung ist voller Herausforderungen, die Liebe zum Detail und ein robustes Observability-Framework erfordern.
Hakan stellte zwei primäre Strategien zur LLM-Evaluation vor, die LLM Evaluation und die LLM Spans and Traces, und erklärte anhand detaillierter Beispiele, wie sie funktionieren. Diese Strategien evaluieren LLM-Anwendungen systematisch und stellen ihre Zuverlässigkeit und Effektivität in realen Anwendungsfällen sicher.
Weiterlesen

What Is a Vector Lakebase?
A Vector Lakebase is a unified, lake-native data architecture for AI that combines vector-database-grade serving with open lake storage, reusable lake-level indexes, and a shared semantic layer.

Why Not All VectorDBs Are Agent-Ready
Explore why choosing the right vector database is critical for scaling AI agents, and why traditional solutions fall short in production.

DeepSeek-VL2: Mixture-of-Experts Vision-Language Models for Advanced Multimodal Understanding
Explore DeepSeek-VL2, the open-source MoE vision-language model. Discover its architecture, efficient training pipeline, and top-tier performance.



