9. Mai 2023

Nutzung von LLMs auf Ihrer domänenspezifischen Wissensbasis

Mitwirkende
Michiel De Koninck
Machine Learning Engineer
Keine Artikel gefunden.
Newsletter abonnieren
Diesen Beitrag teilen

In der heutigen schnelllebigen Welt ist es von entscheidender Bedeutung, mit den neuesten Fortschritten und Trends auf seinem Gebiet Schritt zu halten. Aus diesem Grund werden Wissensmanagementsysteme immer beliebter, da sie Unternehmen einen zentralen Ort bieten, an dem sie ihr Wissen speichern und abrufen können. Allerdings sind nicht alle Wissensmanagementsysteme gleich. In diesem Blogbeitrag werden wir untersuchen, wie der Einsatz von Sprachmodellen, wie dem kürzlich veröffentlichten LLM, die Effektivität Ihrer domänenspezifischen Wissensdatenbank verbessern kann. Wir behandeln die Grundlagen von Sprachmodellen und wie sie auf den Daten Ihres Unternehmens trainiert werden können, um die Suchgenauigkeit zu verbessern, die Markierung zu automatisieren und sogar neue Inhalte zu generieren. Tauchen wir ein!

LLMs, lernt eure Grenzen kennen ... und überschreitet sie

Ein LLM ist ein großes Sprachmodell. Das GPT-4 von OpenAI ist ein Beispiel, das LLamA von Meta ein anderes. Wir haben uns hier bewusst dafür entschieden, den allgemeinen Begriff LLM zu verwenden, um diese Modelle zu bezeichnen. Bedenken Sie: Jedes dieser Modelle wurde auf einer riesigen Menge von (öffentlich verfügbaren) Daten trainiert.

Es ist inzwischen klar erwiesen, dass diese LLMs ein sinnvolles Verständnis von allgemeiner Sprache haben und dass sie in der Lage sind, Informationen zu produzieren, die für die in ihren Trainingsdaten vorhandenen Informationen relevant sind. Das ist der Grund, warum generative Werkzeuge wie ChatGPT erstaunlich gut bei der Beantwortung von Fragen zu Themen abschneiden, denen das LLM während seines Trainings begegnet ist.

Was jedoch dem direkten Zugriff dieser massiven LLMs entzogen bleibt, sind die Daten, die innerhalb jeder Organisation so wertvoll sind: die interne Wissensbasis. Die Frage, die sich also massiv stellt, ist:

Wie können wir die Leistung dieser LLMs nutzen, um Informationen zu erschließen, die in einer spezifischen Wissensbasis gespeichert sind, auf der sie ursprünglich nicht trainiert wurden?

Oh, okay, können wir dazu nicht einfach unsere interne Wissensbasis als zusätzliche Daten einführen, auf denen das LLM trainiert werden sollte? Oder, wenn Sie so wollen, können wir das LLM auf unsere spezifische Wissensbasis abstimmen.

Ja, das können Sie höchstwahrscheinlich. Aber für die zuverlässige Beantwortung von Fragen ist das vielleicht nicht der richtige Weg.

Warum die Feinabstimmung nicht immer ausreicht

Darf ich vorstellen: Billy, der Bücherwurm. Billy ist ein großes Sprachmodell und hat eine gigantische Menge an Online-Informationen verschlungen, die ihm ein enormes Wissen vermitteln. Billy jedoch, so schlau er auch ist, hat die Bücher in Ihrer ganz speziellen Bibliothek zu Hause nicht durchgelesen.

Die Feinabstimmung besteht darin, dass Sie Billy, dem Bücherwurm, alle Bücher Ihrer ganz speziellen Wissensbasis vorlegen und ihn all diese schmackhaften Zusatzinformationen verschlingen lassen. Auf diese Weise kennt der LLM-Bücherwurm Billy nicht nur all die allgemeinen Informationen, sondern er "weiß" auch viel über den Inhalt Ihrer spezifischen Wissensbasis.

Klassischer Ansatz der Feinabstimmung auf bereichsspezifischen Daten (alle Icons von flaticon)

Herzlichen Glückwunsch, durch diesen Feinabstimmungsprozess haben Sie Billy in einen sehr spezifischen Billy verwandelt, der viel über Ihren spezifischen Bereich weiß! Im Folgenden zeigen wir Ihnen, wie Sie Billy an die Arbeit schicken können. Wenn Sie Ihrem verbesserten Bücherwurm Fragen stellen, können Sie Antworten erwarten, die sowohl die Informationen aus seinem gigantischen allgemeinen Trainingssatz als auch die in Ihrer spezifischen Wissensbasis gespeicherten Informationen nutzen.

Nutzung des fein abgestimmten LLM, um Fragen zu Ihrer internen Wissensbasis zu stellen.

Dieser Lösungsansatz ist zwar sehr leistungsfähig, aber das entscheidende Problem ist, dass Sie immer noch wenig Einblick in die Art und Weise haben, wie Ihr Bücherwurm auf seine Antworten gekommen ist. Außerdem hat die Feinabstimmung eines LLM (kostspielige) Konsequenzen.

Wir nennen die Hauptgründe, warum die Feinabstimmung mit Billy zu kurz kommt:

  • Keine klare Quelle. Es ist schwierig, Halluzinationen zu vermeiden, und Ihr LLM hat keine klare Unterscheidung zwischen "allgemeinem" und "spezifischem" Wissen.
  • Keine Zugangsbeschränkung. Stellen Sie sich einen Fall vor, in dem einige Benutzer in der Lage sein sollen, die Informationen strategischer Dokumente abzufragen, während andere dies nicht dürfen. Wie würden Sie dieses Problem angehen? Ihr fein abgestimmter Billy weiß einfach alles, er kann sich nicht dafür entscheiden, Wissen zur Inferenzzeit auszulassen.
  • Der Betrieb eines LLM ist kostspielig. Sobald Sie ein fein abgestimmtes LLM haben, müssen Sie es am Laufen halten. Ein großes Sprachmodell ist nun einmal... groß. Die Kosten, um es am Laufen zu halten, werden sich summieren. Überwiegen die Vorteile diese Kosten?
  • Wiederholungen zur Feinabstimmung. Ein erneutes Training des Modells ist erforderlich, wenn Sie möchten, dass das Modell Änderungen an der Wissensbasis widerspiegelt.

Glücklicherweise sind all diese Probleme lösbar. Wenn es Ihnen darum geht, Fragen auf nachprüfbare Weise zu beantworten und Halluzinationen zu vermeiden, brauchen Sie vielleicht nicht den hypermodernen Bücherwurm, sondern fragen Sie einfach den guten alten Bibliothekar, wo Sie die Antworten auf Ihre Fragen finden.

Mit RAG zu Reichtum

Die Idee hinter Retrieval-Augmented Generation (RAG) ist recht einfach. Das Ziel besteht darin, die Informationen in unserer Wissensbasis zu erschließen. Anstatt unseren Bücherwurm darauf zu entfesseln (d.h. zu verfeinern), indizieren wir die Informationen unserer Wissensbasis umfassend.

Indem Sie die Einbettungen Ihrer internen Wissensdatenbank indexieren, erschließen Sie intelligente Suchfunktionen.

Im obigen Schema wird veranschaulicht, wie der Smart Retriever wie ein Bibliothekar funktioniert. Im Idealfall weiß der Bibliothekar genau, was sich in seiner Bibliothek befindet. Wenn ein Besucher eine bestimmte Frage stellt, weiß er genau, welches Kapitel aus welchem Buch er empfehlen muss.

Technisch gesehen handelt es sich um eine semantische Suchmaschine. In diesem Fall sind die Einbettungen vektorielle Darstellungen von Dokumentabschnitten und ermöglichen eine mathematische Beschreibung der tatsächlichen Bedeutung, die in jedem Abschnitt gespeichert ist. Durch den Vergleich von Einbettungen lässt sich feststellen, welche Textabschnitte eine ähnliche Bedeutung haben wie andere Textabschnitte. Dies ist entscheidend für den unten dargestellten Suchprozess.

Durch den Einsatz unseres Smart Retrievers können wir unseren Generator zwingen, sich an den Inhalt unserer Wissensbasis zu halten, der für die Beantwortung der Frage am relevantesten ist. Et voilà: Retrieval-erweiterte Generierung.

Dabei sind zwei Komponenten von entscheidender Bedeutung:

  1. Der Smart Retriever (d. h. der Bibliothekar)
  2. Der Generator (d. h. der Bücherwurm)

Es sollte inzwischen klar sein, warum dieser Ansatz als Retrieval-Augmented Generation bezeichnet wird . Auf der Grundlage der gestellten Frage rufen Sie zunächst die relevantesten Informationen aus Ihrer internen Wissensbasis ab; anschließend erweitern Sie die typische Generierungsphase, indem Sie diese relevanten Informationen explizit an die Generatorkomponente weitergeben.

Die wichtigsten Merkmale dieser RAG-basierten Einrichtung

  1. Klare Angabe der Quelle, auf die sich die Antwort stützt. Ermöglicht die Validierung der vom Generator gelieferten Antwort.
  2. Es ist sehr unwahrscheinlich, dass wir halluzinieren, denn wenn wir unsere Generator-Komponente auf den Korpus unserer Wissensbasis beschränken, wird sie zugeben, dass sie keine Antwort formulieren kann, wenn keine relevanten Quellen vom Retriever gefunden wurden.
  3. Wartungsfähiger Suchindex. Eine Wissensdatenbank ist eine lebendige Sache. Wenn sie sich ändert, können wir unseren Suchindex anpassen, um diese Änderungen widerzuspiegeln.

Abgesehen von diesen Highlights ist der mehrsprachige Aspekt von LLMs eine schöne Sache. Sie können über eine Wissensbasis verfügen, die aus rein italienischen Rezepten besteht, mit denen sich Ihr pasta-liebender französischer Freund in einem rein französischen Dialog unterhalten kann.

Feinabstimmung - neu überdacht

Im obigen Abschnitt haben wir die Feinabstimmung als nützliche Option verworfen, weil wir die Klarheit der Quelle kaum kontrollieren konnten, was das Risiko von Halluzinationen erhöhte .

Es ist anzumerken, dass der RAG-Ansatz, der von einem allgemeinen LLM unterstützt wird, nur so lange gut funktioniert, wie die spezifische Wissensbasis keinen superspezifischen Jargon enthält, den der LLM aufgrund seiner allgemeinen Ausbildung nicht verstehen kann.

Stellen Sie sich vor, Sie möchten, dass die Antworten Ihrer Lösung "dem Ton und der Sprache" folgen, die in Ihrer Wissensbasis vorhanden sind. In diesem Fall scheint die Feinabstimmung Ihres LLM weniger vermeidbar.

Es könnte ein sinnvoller Ansatz sein, mit spezifischem Fachjargon umgehen zu können und dann Ihr fein abgestimmtes LLM in die RAG-Architektur einzubinden, um die kombinierten Vorteile zu nutzen. Anstatt mit einem allgemeinen Bücherwurm zu arbeiten, würden Sie dann Ihren speziell ausgebildeten Billy verwenden, um den Generator und/oder die Smart Retriever-Komponenten zu betreiben.

Warum jetzt? Was gibt es Neues?

Hervorragende Frage.
Semantische Suche (Smart Retrieval) gibt es schon seit geraumer Zeit, ebenso wie generative KI (einige primitive Formen gibt es schon seit Jahrzehnten).
In den letzten Monaten haben wir jedoch entscheidende Fortschritte gesehen.

Auf technologischer Ebene haben wir in letzter Zeit große Sprünge in der LLM-Leistung erlebt. Diese wirken sich in zweierlei Hinsicht positiv auf die RAG-Lösung aus:

  • Einbettungen (z. B. Embedding API von OpenAI oder Googles PaLM)
  • Generative Fähigkeiten (z. B. die ChatGPT-Lösung von OpenAI)

Mit der verbesserten generativen Qualität geht auch die zunehmende Verbreitung einher. Früher konnten sich Unternehmen die Möglichkeiten eines Systems, das auf generativer KI beruht, nicht ohne weiteres vorstellen. Dank der breiten Medienberichterstattung und der Einführung von Tools wie ChatGPT ist das allgemeine Interesse nun jedoch exponentiell gestiegen.

Obwohl also seit geraumer Zeit nur mittelmäßige Versionen der RAG möglich sind, ergeben sich durch die technologischen Verbesserungen und die erhöhte Attraktivität fruchtbare Marktchancen.

Herausforderungen auf Ihrem Weg zum Erfolg

In diesem Abschnitt möchten wir Ihnen einige der wichtigsten Herausforderungen beim Aufbau einer erfolgreichen RAG-Lösung vorstellen.

  • Starke Abhängigkeit von der Leistung des Smart Retriever.
    Die Qualität der von Ihrer generativen Komponente gegebenen Antworten hängt direkt von der Relevanz der Informationen ab, die ihr vom Smart Retriever übermittelt werden. Wie bereits erwähnt, können wir den LLM-Fortschritten dafür danken, dass wir reichhaltige und leistungsstarke Texteinbettungen erhalten haben. Aber diese Einbettungen ausschließlich über APIs abzurufen, ist vielleicht nicht die beste Option. Sie sollten bei der Entwicklung Ihrer semantischen Suchkomponente sehr bewusst vorgehen, denn vielleicht hat Ihre Wissensdatenbank einen speziellen Jargon und Sie benötigen eine maßgeschneiderte (d. h. fein abgestimmte) Komponente, um damit umzugehen. Ein ausführlicherer praktischer Leitfaden zur semantischen Suche findet sich in diesem Blogpost [1] .
  • Kompromiss bei der Beschränkung auf Informationen in der Wissensbasis.
    Wie in der RAG-Architektur erläutert, können wir unsere generative LLM-Komponente dazu zwingen, sich auf die in den relevanten Dokumenten gefundenen Informationen zu beschränken. Während dies sicherstellt, dass Halluzinationen (d.h. unsinnige Antworten) kaum eine Chance haben, bedeutet es auch, dass Sie die Informationen, die Ihr LLM besitzt, kaum nutzen. Vielleicht möchten Sie, dass Ihre Lösung auch dieses Wissen nutzt, aber vielleicht nur, wenn es vom Benutzer angefordert wird.
  • Konversationsdesign, um einen komplexen Dialog zu ermöglichen.
    Während unsere obigen Darstellungen das Benutzerverhalten als eine "einmalige Frage" dargestellt haben, möchte Ihr Benutzer vielleicht die von Ihrer Lösung gegebene Antwort näher betrachten (in einer Unterhaltung im Stil von ChatGPT). Glücklicherweise gibt es Werkzeuge, die Sie in diesem Kampf unterstützen. Das langchain-Framework hilft Ihnen dabei, dies richtig zu machen.
  • Prompt-Engineering als Möglichkeit, die Generierung zum Erfolg zu führen.
    Damit die Antwort Ihrer generativen Komponente genau richtig ist, müssen Sie ihr genau sagen, welche Art von Ausgabe Sie erwarten. Das ist alles andere als eine Raketenwissenschaft. Aber die richtige Einstellung Ihres Prompts für Ihren Anwendungsfall braucht Zeit und verdient genügend Aufmerksamkeit. Es kann sich lohnen, sich mit Prompt-Management-Systemen zu beschäftigen, um sicherzustellen, dass Sie den Überblick darüber behalten, welche Prompts für welche Situationen am besten geeignet sind.
  • Die Wahl der richtigen LLM: Was kostet sie und wohin gehen meine Daten?
    In diesem Text haben wir keine ausdrückliche Wahl bezüglich der LLM getroffen, die in Ihrer Lösung verwendet werden soll(en). Bei der Wahl des LLM (API), das Sie verwenden möchten, sollten Sie Datenschutz- und Kostenbeschränkungen in Betracht ziehen. Es gibt bereits einige sehr gute Optionen. Wir haben GPT von OpenAI, LLaMA von Meta, PaLM von Google und mit Elon Musk, der behauptet, der LLM-Szene beizutreten, wer weiß, wohin die Reise gehen wird. Die aufregende Nachricht ist: Es wird mehr Optionen geben und der Wettbewerb sollte die LLM-Leistung erhöhen und die Preise senken.
  • LLM-Lösungen in Produktion bringen und halten (LLMOps).
    Wie bei allen ausgereiften KI-Lösungen: Sie zu bauen ist eine Sache, sie in Produktion zu bringen/halten eine andere. Der Bereich der LLMOps konzentriert sich auf die Operationalisierung von LLMs. Überwachen Sie die Leistung Ihrer LLM-basierten Lösung, halten Sie Ihre Wissensdatenbank und Ihren Suchindex auf dem neuesten Stand, verarbeiten Sie den Gesprächsverlauf...
    Bevor Sie Ihre LLM-Lösung in die Produktion werfen, denken Sie klugerweise darüber nach, wie sie gewartet wird und wie sie auf lange Sicht fruchtbar bleibt.

Begeistert von den Möglichkeiten der RAG und fasziniert von den damit verbundenen Herausforderungen, gehen wir nun dazu über, eine tatsächliche RAG-basierte Lösung zu betrachten.

Die Hände schmutzig machen mit einer RAG

Wenn Ihr Interesse durch das Konzept der Retrieval-Augmented Generation geweckt wurde, fragen Sie sich vielleicht:

Habe ich das Zeug dazu, eine RAG-basierte Lösung auszuprobieren?

Nun, wenn Sie das haben:

  • spezifisches Wissen: eine moderate (vorzugsweise organisierte) Datenbank mit "Wissensartikeln", die nützliche Informationen enthalten, die im World Wide Web nicht leicht zu finden sind (z. B. technische Dokumente, Einführungsrichtlinien, bearbeitete Support-Tickets usw.)
  • Geschäftswert: eine klare Definition des Geschäftswerts, wenn diese Informationen für die beabsichtigten Nutzer freigeschaltet werden können

Dann könnte die RAG der richtige Weg für Sie sein.

Als Experiment haben wir kürzlich eine kleine Demo erstellt, um zu zeigen, wie diese Technologie genutzt werden kann, um Regierungsmitarbeiter bei der Beantwortung parlamentarischer Anfragen zu unterstützen.
In diesem Fall besteht das spezifische Wissen aus:

  • eine Reihe von flämischen Gesetzesdokumenten
  • eine Reihe von parlamentarischen Anfragen aus der Vergangenheit

Der geschäftliche Nutzen ist inzwischen da:

  • Verbesserung der Effizienz durch automatische Vorschläge für Antworten auf parlamentarische Anfragen auf der Grundlage der flämischen Wissensdatenbank
  • Verbesserung der Transparenz und der Nutzerakzeptanz durch ausdrückliche Zitate
Screenshot der Demolösung zum Thema "Anwendung zur Unterstützung bei der Beantwortung parlamentarischer Anfragen".

Wenn Sie einen Leitfaden für die technische Umsetzung einer ähnlichen Lösung suchen, bleiben Sie dran für einen weiteren Blogpost, in dem wir uns mit den technischen Details der Einrichtung von RAG befassen werden.


Referenzen

Verwandte Beiträge

Alle anzeigen
Keine Ergebnisse gefunden.
Es gibt keine Ergebnisse mit diesen Kriterien. Versuchen Sie, Ihre Suche zu ändern.
Stiftung Modelle
Unternehmen
Unser Team
Verantwortungsvolle und ethische KI
Strukturierte Daten
Chat GPT
Nachhaltigkeit
Stimme und Ton
Front-End-Entwicklung
Schutz und Sicherheit von Daten
Verantwortungsvolle/ethische KI
Infrastruktur
Hardware und Sensoren
MLOps
Generative KI
Verarbeitung natürlicher Sprache
Computer Vision