LangSmith: Bester Weg, LLMs und KI-Anwendungen zu testen
Published on
Wenn Sie sich in der Welt der Sprachlernmodelle (LLMs) befinden, haben Sie wahrscheinlich schon von LangSmith gehört. Aber wissen Sie, wie es Ihre LLM-Anwendungen von gut zu großartig machen kann? Dieser Artikel ist Ihr umfassender Leitfaden für das Verständnis von LangSmith, einer Plattform, die eine Vielzahl von Funktionen zum Debuggen, Testen, Evaluieren und Überwachen von LLM-Anwendungen bietet.
Egal, ob Sie ein erfahrener Entwickler oder ein Anfänger im Bereich der LLMs sind, LangSmith hat für jeden etwas zu bieten. Von der nahtlosen Integration mit LangChain bis hin zum umfangreichen Kochbuch mit realen Beispielen ist LangSmith ein Game Changer. Tauchen wir ein!
Was ist LangSmith?
LangSmith ist eine modernste Plattform, die Ihre LLM-Anwendungen auf Produktionsniveau anheben soll. Was bedeutet das? Kurz gesagt ist LangSmith Ihr Werkzeugkasten zum Erstellen, Testen und Bereitstellen intelligenter Agenten und Ketten auf der Grundlage beliebiger LLM-Frameworks. Es wurde von LangChain entwickelt, dem gleichen Unternehmen, das auch das Open-Source-LangChain-Framework entwickelt hat, und integriert sich nahtlos damit.
Hauptfunktionen von LangSmith
-
Debugging und Testen: Bei LangSmith geht es nicht nur um das Erstellen, sondern auch um das richtige Erstellen. Die Plattform bietet interaktive Tutorials und eine Schnellstartanleitung, um Ihnen den Einstieg zu erleichtern. Egal, ob Sie in Python, TypeScript oder einer anderen Sprache codieren, LangSmith unterstützt Sie.
-
API- und Umgebungseinrichtung: Bevor Sie mit dem Bauen beginnen, müssen Sie Ihre Umgebung einrichten. LangSmith vereinfacht dies mit seinem API-Schlüsselzugriff und den einfachen Schritten zur Umgebungskonfiguration. Sie können beispielsweise die neueste Version von LangChain für Ihre Zielumgebung mit einfachen Befehlen wie
pip install -U langchain
installieren. -
Nachverfolgungsfunktionen: Eine der herausragenden Funktionen von LangSmith ist seine Fähigkeit zur Codeverfolgung. Dies ist entscheidend für das Debuggen und Verbessern Ihrer Anwendungen. Sie können Laufnamen anpassen, geschachtelte Aufrufe verfolgen und vieles mehr.
Warum LangSmith wählen?
-
Benutzerfreundlichkeit: LangSmith wurde mit Benutzerfreundlichkeit im Hinterkopf entwickelt. Die Plattform bietet eine Reihe von Tutorials und Dokumentationen, um Ihnen den Einstieg zu erleichtern.
-
Vielseitigkeit: Egal, ob Sie an einem kleinen Projekt oder einer groß angelegten Anwendung arbeiten, LangSmith ist vielseitig genug, um Ihre Bedürfnisse zu erfüllen.
-
Community-Support: LangSmith verfügt über eine starke Community von Entwicklern und Experten, die immer bereit sind zu helfen. Sie können sich in den Community-Foren anmelden oder sogar eigene Beispiele zum Kochbuch beitragen.
Jetzt sollten Sie ein gutes Verständnis dafür haben, was LangSmith ist und warum es ein wertvolles Werkzeug für jeden ist, der mit LLMs arbeitet. Im nächsten Abschnitt werden wir genauer darauf eingehen, wie Sie LangSmith einrichten und das Beste aus seinen Funktionen herausholen.
Einrichten von LangSmith
Die Einrichtung von LangSmith ist dank seiner benutzerfreundlichen Oberfläche und der gut dokumentierten Schritte ein Kinderspiel. Bevor Sie jedoch loslegen, benötigen Sie einen API-Schlüssel für den Zugriff. Keine Sorge, einen zu bekommen ist so einfach wie Kuchen.
Schritte zum Erhalten Ihres API-Schlüssels
-
Erstellen Sie ein LangSmith-Konto: Gehen Sie zur LangSmith-Website und melden Sie sich für ein Konto an. Sie können verschiedene unterstützte Anmeldeverfahren verwenden.
-
Navigieren Sie zu den Einstellungen: Sobald Ihr Konto eingerichtet ist, gehen Sie zur Einstellungsseite. Dort finden Sie die Option zum Erstellen eines API-Schlüssels.
-
Generieren Sie den API-Schlüssel: Klicken Sie auf die Schaltfläche "API-Schlüssel generieren" und voilà! Sie haben Ihren API-Schlüssel.
Konfigurieren Ihrer Umgebung
Nachdem Sie Ihren API-Schlüssel erhalten haben, ist der nächste Schritt das Konfigurieren Ihrer Laufzeitumgebung. LangSmith ermöglicht dies mit einfachen Shell-Befehlen. So geht's:
export LANGCHAIN_TRACING_V2=true
export LANGCHAIN_ENDPOINT=https://api.smith.langchain.com
export LANGCHAIN_API_KEY=<your-api-key>
Ersetzen Sie <your-api-key>
durch den zuvor generierten API-Schlüssel. Mit diesen Befehlen richten Sie Ihre Umgebungsvariablen ein, um die Interaktion mit LangSmith zu erleichtern.
LangSmith Cookbook: Praktische Beispiele von LangSmith
Das LangSmith Cookbook ist nicht nur eine Sammlung von Code-Schnipseln, sondern auch eine Goldgrube an praktischen Beispielen, die Sie in Ihren Projekten inspirieren und unterstützen sollen. Egal, ob Sie Anfänger oder Experte im Bereich der Sprachlernmodelle (LLMs) sind, das Cookbook bietet reichhaltige praktische Einblicke in gängige Muster und realen Anwendungsfälle. Tauchen wir also tiefer ein, was das LangSmith Cookbook zu bieten hat.
Was ist das LangSmith Cookbook?
Das LangSmith Cookbook ist ein Repository, das als praktischer Leitfaden zur Beherrschung von LangSmith dient. Es geht über die grundlegenden Informationen in der Standarddokumentation hinaus und widmet sich gängigen Mustern und realen Szenarien. Diese Rezepte ermöglichen es Ihnen, Ihre LLM-Anwendungen zu debuggen, zu evaluieren, zu testen und kontinuierlich zu verbessern.
Ihre Meinung ist gefragt
Das Cookbook ist eine ressourcengetriebene Gemeinschaft. Wenn Sie Erkenntnisse teilen möchten oder das Gefühl haben, dass ein bestimmter Anwendungsfall übersehen wurde, sind Sie eingeladen, ein GitHub-Problem zu melden oder das LangChain-Entwicklungsteam zu kontaktieren. Ihre Expertise prägt diese Gemeinschaft und macht das Cookbook zu einer dynamischen und sich ständig weiterentwickelnden Ressource.
Schlüsselbeispiele aus dem Cookbook
Verfolgung Ihres Codes
-
Verfolgung ohne LangChain (opens in a new tab): Erfahren Sie, wie Sie Anwendungen unabhängig von LangChain mittels des
@traceable
-Dekorators des Python SDKs verfolgen können. -
REST-API (opens in a new tab): Machen Sie sich mit den Funktionen der REST-API zum Protokollieren von LLM- und Chat-Modellläufen vertraut und verstehen Sie verschachtelte Läufe.
-
Anpassung der Ausführungsnamen (opens in a new tab): Verbessern Sie die Übersichtlichkeit der Benutzeroberfläche, indem Sie spezifische Namen für LangSmith-Kettenausführungen festlegen. Dies umfasst Beispiele für Ketten, Lambda-Funktionen und Agenten.
-
Verfolgung von geschachtelten Aufrufen innerhalb von Tools (opens in a new tab): Erfahren Sie, wie Sie alle geschachtelten Tool-Unteraufrufe in einer einzigen Trace einschließen können.
-
Anzeige von Trace-Links (opens in a new tab): Beschleunigen Sie Ihre Entwicklung, indem Sie Trace-Links zu Ihrer Anwendung hinzufügen. Dadurch können Sie schnell den Ausführungsfluss sehen, Feedback zu einer Ausführung hinzufügen oder die Ausführung zu einem Dataset hinzufügen.
LangChain Hub
-
RetrievalQA Chain (opens in a new tab): Verwenden Sie Prompts aus dem Hub in einem Beispiel-RAG-Pipeline.
-
Prompt-Versionierung (opens in a new tab): Gewährleisten Sie die Stabilität der Bereitstellung durch Auswahl bestimmter Prompt-Versionen.
-
Ausführbarer PromptTemplate (opens in a new tab): Speichern Sie Prompts im Hub aus dem Playground und integrieren Sie sie in ausführbare Ketten.
Tests & Evaluierung
-
Korrektur des Q&A-Systems (opens in a new tab): Evaluieren Sie Ihre retrieval-optimierte Q&A-Pipeline end-to-end basierend auf einem Datensatz.
-
Evaluierung von Q&A-Systemen mit dynamischen Daten (opens in a new tab): Verwenden Sie Evaluatoren, die Labels dereferenzieren, um Daten zu verarbeiten, die sich im Laufe der Zeit ändern.
-
RAG-Evaluierung mit festen Quellen (opens in a new tab): Evaluieren Sie die Response-Komponente einer RAG-Pipeline durch Bereitstellen von abgerufenen Dokumenten im Datensatz.
-
Vergleichs-Evaluierungen (opens in a new tab): Verwenden Sie bewertetes Präferenzscoring, um Systemversionen zu kontrastieren und die optimalsten Ausgaben zu bestimmen.
-
LangSmith in Pytest (opens in a new tab): Benchmarken Sie Ihre Kette in pytest und stellen Sie sicher, dass aggregierte Metriken die Qualitätsanforderungen erfüllen.
-
Unit Testing mit Pytest (opens in a new tab): Schreiben Sie individuelle Unittests und protokollieren Sie Assertions als Feedback.
-
Evaluierung bestehender Ausführungen (opens in a new tab): Fügen Sie künstliche Intelligenz-gestütztes Feedback und Evaluierungsmetrik zu bestehenden Trace-Ausführungen hinzu.
-
Benennung von Testprojekten (opens in a new tab): Benennen Sie Ihre Tests manuell mit
run_on_dataset(..., project_name='mein-projekt-name')
. -
So laden Sie Feedback und Beispiele herunter (opens in a new tab): Exportieren Sie Vorhersagen, Evaluierungsergebnisse und andere Informationen programmgesteuert für Ihre Berichte.
TypeScript / JavaScript-Testbeispiele
-
JS-Ketten in Python evaluieren (opens in a new tab): Evaluieren Sie JS-Ketten unter Verwendung von benutzerdefinierten Python-Evaluatoren.
-
Assertions als Feedback protokollieren (opens in a new tab): Konvertieren Sie CI-Test-Assertions in LangSmith-Feedback.
Verwendung von Feedback
-
Streamlit Chat-App (opens in a new tab): Eine minimale Chat-App, die Benutzerfeedback erfasst und Traces der Chat-Anwendung teilt.
-
Next.js Chat-App (opens in a new tab): Eine Chat-App, aber in einer Next.js-Version.
-
Echtzeit-Algorithmisches Feedback (opens in a new tab): Generieren Sie Feedback-Metriken für jede Ausführung mit einer Async-Rückruffunktion.
-
Echtzeit-RAG-Chatbot-Evaluierung (opens in a new tab): Überprüfen Sie automatisch Halluzinationen in den Antworten Ihres RAG-Chatbots anhand der abgerufenen Dokumente.
Datenexport für Feinabstimmung
-
OpenAI-Feinabstimmung (opens in a new tab): Listen Sie LLM-Ausführungen auf und konvertieren Sie sie in das Feinabstimmungsformat von OpenAI.
-
Lilac Dataset-Kuration (opens in a new tab): Verfeinern Sie Ihre LangSmith-Datasets mit Lilac, um nahezu identische Duplikate zu erkennen und auf PII zu prüfen.
Explorative Datenanalyse
-
Exportieren von LLM-Ausführungen und Feedback (opens in a new tab): Extrahieren und interpretieren Sie LangSmith LLM-Ausführungsdaten für verschiedene Analyseplattformen.
-
Lilac (opens in a new tab): Bereichern Sie Datasets mithilfe des Open-Source-Analysetools Lilac, um Ihre Daten besser zu kennzeichnen und zu organisieren.
Durch die Erkundung dieser Beispiele erhalten Sie ein umfassendes Verständnis der Fähigkeiten von LangSmith, mit denen Sie Ihre LLM-Anwendungen auf ein neues Level heben können. Also, worauf warten Sie? Tauchen Sie ein in das LangSmith Cookbook und starten Sie mit ein wenig Code-Magie!
Fazit
LangSmith ist nicht nur ein weiteres Tool; es handelt sich um eine umfassende Plattform, mit der Sie Ihre LLM-Anwendungen auf ein neues Level bringen können. Von seinen robusten Tracing-Funktionen bis hin zur nahtlosen Integration mit dem LangChain Hub bietet LangSmith eine Reihe von Funktionen, die darauf ausgelegt sind, Ihr Leben zu erleichtern. Und vergessen wir nicht das LangSmith Cookbook, eine Schatzkiste voller praxisnaher Beispiele und praktischer Code-Snippets. Egal, ob Sie gerade erst anfangen oder Ihre bestehenden Anwendungen optimieren möchten, LangSmith hat Sie abgedeckt.
Häufig gestellte Fragen
Was macht LangSmith?
LangSmith ist eine Plattform, die entwickelt wurde, um Ihnen beim Aufbau, Testen, Evaluieren und Überwachen von LLM-Anwendungen zu helfen. Es bietet eine Reihe von Funktionen, darunter Tracing, API-Zugriff und ein Kochbuch mit realen Beispielen.
Was ist der Unterschied zwischen LangSmith und LangChain?
Während sich LangSmith auf den Aufbau und das Management von LLM-Anwendungen konzentriert, dient LangChain als Framework zur Entwicklung von Sprachmodellen. LangSmith integriert sich nahtlos mit LangChain und bietet eine einheitliche Plattform für all Ihre LLM-Anforderungen.
Wie erhalte ich Zugriff auf LangSmith?
Um Zugriff auf LangSmith zu erhalten, müssen Sie sich auf ihrer Website registrieren. Nach der Registrierung können Sie einen API-Schlüssel generieren, der es Ihnen ermöglicht, mit der Plattform zu interagieren.