AI development

Bewerten und Verbessern Sie Ihre Chatbots mit TruLens: Ein umfassender Leitfaden

A screenshot of chatbot conversation using TruLens and Langchain for evaluation.

Verbessern Sie Ihre LLM-Anwendungen mit TruLens

In diesem Tutorial werden wir erkunden, wie man einen kontextbezogenen Chatbot, auch bekannt als konversationelles LLM mit Gedächtnis, mit LangChain und TruLens aufbaut und bewertet. Unser Fokus liegt darauf, die Antworten des Bots zu verfolgen, um wichtige Moderationsmetriken wie Hassrede und schädliche Inhalte zu überwachen, während wir die Gesamtleistung und die Kosten optimieren.

Was ist TruLens?

TruLens ist eine leistungsstarke Suite von Evaluierungswerkzeugen, die zur Überwachung und Verbesserung der Leistung von LLM-basierten Anwendungen entwickelt wurde. Durch die Bewertung der Qualität von Eingaben, Ausgaben und internen Prozessen bietet TruLens eingebettete Feedback-Mechanismen für Verankerung, Relevanz und Moderationsbewertungen. Darüber hinaus berücksichtigt es benutzerdefinierte Evaluierungsbedürfnisse und bietet wesentliche Instrumentierung für verschiedene LLM-Anwendungen, einschließlich:

  • Fragebeantwortung
  • Retrieval-unterstützte Generierung
  • Agentenbasierte Lösungen

Diese Fähigkeit ermöglicht es den Nutzern, verschiedene Nutzungsmetriken und Metadaten zu überwachen und liefert wertvolle Einblicke in die Modellleistung.

Voraussetzungen

Um diesem Tutorial zu folgen, benötigen Sie:

  • Python 3.10+
  • Conda (empfohlen)
  • OpenAI API-Schlüssel
  • HuggingFace API-Schlüssel

Einrichtung

Beginnen wir damit, ein virtuelles Umfeld in einem neuen Ordner zu erstellen und die erforderlichen Bibliotheken zu installieren. Streamlit vereinfacht die sichere Speicherung, indem es eine dateibasierte Geheimnisverwaltung für einfachen Zugriff auf die API-Schlüssel Ihrer Anwendung bereitstellt.

Befolgen Sie diese Schritte, um Ihren OpenAI API-Schlüssel und den HuggingFace Zugangstoken in den Streamlit-Geheimnissen zu integrieren. Erstellen Sie eine .streamlit/secrets.toml-Datei in Ihrem Projektverzeichnis und fügen Sie die folgenden Zeilen ein, wobei Sie Ihre Schlüssel ersetzen:

[openai]
api_key = "IHRE_OPENAI_API_KEY"

[huggingface]
access_token = "IHRE_HUGGINGFACE_ACCESS_TOKEN"

Das ist erledigt, jetzt sind wir bereit, mit dem Bau zu beginnen!

Den Chatbot bauen

Erstellen Sie eine chatbot.py-Datei und öffnen Sie diese. Beginnen Sie damit, die erforderlichen Bibliotheken zu importieren und die Umgebungsvariablen zu laden.

Kettenaufbau

Als Nächstes werden wir unsere LLM-Kette mit einem einfachen Prompt erstellen, den wir später basierend auf unseren Evaluierungsergebnissen verbessern können.

TruLens integrieren

Nachdem Sie Ihre LLM-Kette eingerichtet haben, verwenden Sie TruLens zur Evaluierung und Nachverfolgung. TruLens bietet sofort einsatzbereite Feedback-Funktionen und ein erweiterbares Framework für die LLM-Evaluierung.

Eine Feedback-Funktion bewertet die Ausgabe einer LLM-Anwendung, indem sie den erzeugten Text und die Metadaten analysiert. In diesem Setup verfolgen wir die Relevanz der Antworten des Bots und bewerten auf Hassrede, Gewalt, Selbstverletzung oder schädliche Antworten.

Den Chatbot-UI mit Streamlit bauen

Wir werden die Chat-Elemente von Streamlit, einschließlich st.chat_message, st.chat_input und st.session_state, nutzen, um eine ChatGPT-ähnliche Benutzeroberfläche zu erstellen.

Schließlich initialisieren Sie das Dashboard von TruLens am Ende der Datei:

if __name__ == '__main__':
    TruLens.run()  # Dashboard von TruLens starten

Den Chatbot ausführen

Führen Sie den Chatbot mit dem folgenden Befehl in Ihrem Terminal aus:

streamlit run chatbot.py

Ein neuer Tab sollte sich in Ihrem Browser unter http://localhost:8501/ öffnen, und Sie können auch auf das Dashboard von TruLens unter http://192.168.0.7:8502/ zugreifen.

Bewertung und Verbesserung

Sobald der Chatbot läuft, beurteilen Sie seine Ausgabe mit TruLens Eval und nehmen Sie Anpassungen vor, um die Leistung zu verbessern. Eine Möglichkeit wäre, Ihre Vorlagenaufforderung ansprechender für die Nutzer zu gestalten.

Durch die Verfeinerung Ihrer Aufforderungen können Sie deutlich verbesserte Moderationswerte und durchdachtere Antworten erzielen. Das Experimentieren mit verschiedenen Modellen, z. B. durch einen Wechsel von chatgpt-3.5-turbo zu gpt-4, und die Anpassung der app_id können ebenfalls unterschiedliche Ergebnisse liefern.

Fazit

In diesem Tutorial haben wir erfolgreich einen Chatbot mit integriertem kontextuellem Gedächtnis und TruLens für umfassende Bewertungen gebaut. TruLens ermöglicht kontinuierliches Monitoring und die Verbesserung von LLM-Anwendungen, indem verschiedene Konfigurationen und Modellleistungen verglichen werden.

Die Bewertung der Auswirkungen spezifischer Kettenkonfigurationen auf die Antwortqualität, die Kosten und die Latenz ist entscheidend für die Entwicklung von LLM-Anwendungen. Die Kombination von TruLens und LangChain bildet ein effektives Toolkit zum Aufbau zuverlässiger Chatbots, die kontextuelle Informationen effektiv verwalten, während sie robuste Evaluierungsprozesse ermöglichen.

Für die Bereitstellung sollten Sie in Betracht ziehen, Ihre Anwendung auf GitHub hochzuladen und das Repository mit der Streamlit-Plattform zu verbinden.

Danke, dass Sie dieses Tutorial verfolgt haben!

Weiterlesen

Step-by-step illustration of getting started with Clarifai AI platform.
AI21 Studio Playground interface showcasing features for NLP development

Hinterlasse einen Kommentar

Alle Kommentare werden vor der Veröffentlichung geprüft.

Diese Website ist durch hCaptcha geschützt und es gelten die allgemeinen Geschäftsbedingungen und Datenschutzbestimmungen von hCaptcha.