Dentro – KI Entwicklung & KI Beratung

cartoon of a construction worker checking pipes

3 einfache Schritte um die Zuverlässigkeit von LLMs zu verbessern

Ihre LLM-Anwendung kann Sie zum Narren halten. Unsere hat es getan.
Ihre LLM-Anwendung kann in der Produktion plötzlich nicht mehr funktionieren. Unsere tat es.
Ihre LLM-Anwendung kann laufen, ohne dass Sie wissen, wie sie benutzt wird. Unsere tat es.

Sie wollen nicht in diese Probleme geraten. Machen Sie Ihre LLM-Anwendungen zuverlässig, indem Sie sicherstellen, dass Sie sie debuggen und überwachen können und über Fallbacks verfügen.

Die drei Säulen der Zuverlässigkeit von LLMs

Schritt 1: Beobachten der Entwicklung – Ihr Sicherheitsnetz für die KI-Entwicklung

      Bei der Entwicklung von LLM-Anwendungen haben Sie es oft mit komplexen Ketten von Aufforderungen zu tun. Insbesondere dann, wenn Sie Agenten-Frameworks und automatisierte Entscheidungsprozesse verwenden.

      Die Herausforderung dabei? Sie geben im Grunde die direkte Kontrolle über den Ablauf auf, was die Implementierung einer angemessenen Beobachtbarkeit unerlässlich macht.

      Beispiel aus der Praxis:
      Wir haben mit Mistral einen LLM-Agenten entwickelt, der Websites scrapen kann. Er lieferte uns bei unseren Tests erstaunliche Ergebnisse. Die Ergebnisse waren so gut, dass wir nicht wussten, von welcher Unterseite der Agent seine Informationen bezog. Wir dachten „wow, wir haben AGI erreicht, ein Agent, der bessere Arbeit leistet als ein Mensch“.

      Dann haben wir Langsmith überprüft und festgestellt:
      Unser Agent hat keine Werkzeuge benutzt, er hat sich die Verwendung von Werkzeugen nur eingebildet! Er hat alles erfunden. Lol.

      Ohne angemessene Beobachtbarkeit wäre diese Halluzination unbemerkt geblieben.

      Tools für die Beobachtbarkeit zeigen Ihnen alle wichtigen Metriken und Zwischenschritte in einer LLM-Pipeline. Z. B. wie lange die Pipeline gedauert hat, welche LLM-Aufrufe erfolgten, welche Tool-Aufrufe, welche Metadaten an die LLMs gesendet wurden usw.

      Wir sind große Fans von Langsmith, um unsere Agenten in der Entwicklung zu debuggen. Langsmith Tracking ist sehr einfach einzurichten:

      • Erstellen Sie ein Konto auf https://langsmith.com
      • Holen Sie sich Ihren API-Schlüssel
      • Fügen Sie 2 Umgebungsvariablen zu Ihrem Projekt hinzu

      Und bumm! Sie sind bereit, die kompliziertesten LLM-Setups zu beheben!
      Schritt 1 von 3 zur Erhöhung der LLM-Anwendungszuverlässigkeit ✅

      Werkzeuge zum Beobachten:

      Screenshot von Langsmith, unserem Chatbot, unten rechts auf dieser Webseite. Wir können all die verschiedenen Schritte sehen, die der Bot unter der Haube macht, um Ihnen eine gute Antwort zu geben!

      Schritt 2: Produktionsüberwachung – Halten Sie Ihre KI-Anwendungen gesund

        Denken Sie daran: Risikomanagement ist langweilig, bis es plötzlich sehr spannend wird.
        Die Produktionsüberwachung ist Ihr Frühwarnsystem für potenzielle Probleme.

        Gerade heute haben wir eine Situation erlebt, in der OpenAI unser Guthaben nicht automatisch aufgestockt hat. Dank unserer Überwachungseinrichtung in LangSmith haben wir den Anstieg der Fehler in unserer DentroChat-Anwendung schnell erkannt und konnten das Problem sofort beheben.

        Überwachung und Beobachtbarkeit sind sehr eng miteinander verwandt: das eine ist für die Entwicklung, das andere für die Produktion.

        Es ist schwierig herauszufinden, warum ein LLM-Setup in der Produktion fehlschlägt, wenn Sie nur die Protokolle Ihrer Anwendung haben. Deshalb empfehlen wir, die Observability-Tools auch für die Überwachung in der Produktion zu verwenden.

        Abhängig von Ihrer Anwendung möchten Sie vielleicht auch andere Metriken verfolgen. Wie nutzt der Benutzer die Webseite, Transaktions-E-Mails, Serverlast usw. Aber der erste Schritt ist die LLM-Überwachung, um die Zuverlässigkeit Ihrer LLM-Anwendung zu erhöhen!

        Best Practices für die Produktionsüberwachung:

        • Verfolgen Sie Zwischenschritte
        • Verfolgen Sie Benutzereingaben/-ausgaben nur dann, wenn Sie den Datenschutz einhalten können
        • Überwachen Sie Systemzustandsmetriken
        • Analysieren Sie die Nutzung Ihrer Anwendung
        • Verfolgen Sie benutzerdefinierte Metadaten wie z.B. Benutzer-Tracking, um Power-User zu identifizieren
        use Langsmith to monitor your LLM Application Reliability
        So sieht die Überwachung von DentroChat in Langsmith aus.

        Schritt 3: Implementierung von Fallbacks – Ihr Sicherheitsnetz

          Mit der zunehmenden Häufigkeit von Modellausfällen (schauen Sie einfach auf status.openai.com nach aktuellen Beispielen) ist die Implementierung von Fallbacks nicht optional – sie ist für die LLM-Anwendungszuverlässigkeit unerlässlich.

          Beispiel: Sie haben einen KI-Chatbot, der unter seiner Haube die Anthropic-API verwendet.
          Eines Tages schlagen die Anfragen an die Anthropic API plötzlich fehl!
          Es kann viele Gründe für fehlgeschlagene Anfragen geben:

          • Ausfall von Anthropic
          • Sie haben Ihre Anthropic-Rechnung nicht bezahlt
          • Das Modell ist veraltet, d.h. das LLM-Modell, das Sie angefordert haben, existiert nicht mehr
          • Die Anthropic-API blockiert Sie aufgrund einer schlechten IP-Adresse
          • Abgelaufener API-Schlüssel

          Wir haben Anthropic hier nur als Beispiel genommen. Aber wir bei Dentro hatten all diese Probleme in der Vergangenheit mit verschiedenen LLM-APIs!

          Ein Fallback leitet Ihre LLM-Anfragen an LLM B weiter, falls LLM A fehlschlägt.
          Wenn die Anfrage an Anthropic fehlschlägt, sendet es die Anfrage stattdessen an z.B. OpenAI!
          Auf diese Weise können Ihre Nutzer bedient werden, auch wenn es ein Problem mit einem bestimmten Modellanbieter gibt.

          Fallbacks können auch mehr tun, wie z.B. ein paar Mal versuchen, bevor sie an den Backup-LLM weitergeleitet werden.

          Bei Dentro verwenden wir oft die eingebaute Fallback-Funktionalität von Langchain. Sie können aber auch einfach eigenen Code schreiben, um fehlgeschlagene Anfragen anständig zu behandeln.

          Wie man Fallbacks implementiert:

          1. Richten Sie mehrere Modellanbieter ein (z. B. OpenAI und Anthropic)
          2. Konfigurieren Sie die automatische Ausfallsicherung in Ihrem Framework
          3. Erwägung der Verwendung mehrerer Modelle desselben Anbieters für eine bessere Kompatibilität (Verwendung eines OpenAI-Modells als Fallback für ein OpenAI-Hauptmodell)
          4. Erwägung der Verwendung von Modellen verschiedener Anbieter für eine höhere Ausfallsicherheit (Verwendung eines Anthropic-Modells als Fallback für ein OpenAI-Hauptmodell)
          Das werden Sie sein, wenn Sie diese 3 einfachen Schritte für die Zuverlässigkeit der LLM umgesetzt haben 😇.

          Maßnahmen ergreifen: Ihre Checkliste zur Zuverlässigkeit von LLMs

          Sind Sie bereit, Ihre LLM-Anwendungen zuverlässiger zu machen? Hier erfahren Sie, wie Sie beginnen können:

          1. Bewerten Sie Ihre aktuelle Einrichtung
            • Können Sie vollständig verstehen, was Ihre LLM-Anwendung tut?
            • Haben Sie Einblick in jeden Schritt Ihrer KI-Pipeline?
          2. Implementieren Sie Observability
            • Melden Sie sich für LangSmith an, wenn Sie LangChain verwenden
            • Oder integrieren Sie alternative Tools wie OpenTelemetry oder Weights & Biases
          3. Richten Sie die Produktionsüberwachung ein
            • Konfigurieren Sie datenschutzkonformes Tracking
            • Richten Sie Nutzungsanalysen ein
          4. Verwenden Sie LLM Fallbacks
            • Identifizieren Sie Anbieter von Backup-Modellen
            • Konfigurieren Sie eine automatische Ausfallsicherung

          Der Weg nach vorn

          Beim Aufbau ausfallsicherer LLM-Anwendungen geht es nicht nur darum, Fehler zu vermeiden – es geht darum, LLM-Anwendungszuverlässigkeit zu schaffen, der Ihre Benutzer vertrauen können. Durch die Implementierung dieser drei Säulen der Zuverlässigkeit erstellen Sie nicht nur bessere Anwendungen. Sie schaffen damit die Grundlage für die Zukunft der KI-Entwicklung.

          Denken Sie daran: Warten Sie nicht auf Fehler. Handeln Sie jetzt.

          Mehr zur Implementierung von KI-Lösungen mit Dentro