ZurĂĽck zum Blog
Blog

LangChain🦜🔗: Das leistungsstarke Framework, das Language Model-Anwendungen revolutioniert

Sep 7, 2023·6 min read·Palomi Jain
#Artificial Intelligence#Large Language Model#machine learning#Python
LangChain🦜🔗: Das leistungsstarke Framework, das Language Model-Anwendungen revolutioniert

LangChain🦜🔗: Das leistungsstarke Framework revolutioniert Anwendungen mit Sprachmodellen

Was ist LangChain?

LangChain ist ein leistungsstarkes Framework, das die Entwicklung von Anwendungen mit Sprachmodellen revolutionieren soll. Sprachmodelle wie ChatGPT und Llama sind unglaublich vielseitig und zeichnen sich durch eine breite Palette von Aufgaben aus. Sie können jedoch auf Schwierigkeiten stoßen, wenn es um präzise Antworten oder Aufgaben geht, die tiefes Fachwissen erfordern. Hier kommt LangChain zur Rettung.

Beispiel — Mit Hilfe von LangChain können wir ein LLM wie ChatGPT mit einem benutzerdefinierten Datensatz von Restaurantbewertungen trainieren. Der Datensatz enthält spezifische Informationen über verschiedene Küchen, Ambiente und Servicequalität.

Wenn Sie ChatGPT nun eine präzise Frage stellen wie „Welches Restaurant bietet das beste Sushi in der Stadt?", kann ChatGPT, da es auf dem benutzerdefinierten Restaurantbewertungs-Datensatz feinabgestimmt wurde, eine genauere und spezifischere Antwort geben. Es kann sein Wissen aus dem Datensatz nutzen, um das Restaurant mit den höchsten Bewertungen für Sushi basierend auf Kundenbewertungen zu empfehlen.

Mehr lesen: Offizielle Dokumentation

Bauen wir eine kleine Anwendung

In diesem Artikel werde ich eine Schritt-fĂĽr-Schritt-Anleitung zum Erstellen eines Dokument-Readers mit LangChain und HuggingFace zeigen. Ich werde Google Colab als Plattform verwenden, um die Anwendung zu erstellen

  1. Erstellen Sie ein neues Notebook in Google Collab und installieren Sie alle erforderlichen Abhängigkeiten

Klicken Sie auf „Neues Notebook" oder gehen Sie zu „Datei" > „Neues Notebook", um ein neues Colab-Notebook zu erstellen und diese Abhängigkeiten unten zu installieren.

Bild vom Autor

2. Abrufen des HuggingFace-API-SchlĂĽssels

Wenn Sie noch kein Hugging Face-Konto haben, müssen Sie eines erstellen. Sie können sich auf der Hugging Face-Website anmelden.

Nachdem Sie angemeldet sind, gehen Sie zum Profilbereich, indem Sie in der oberen rechten Ecke auf Ihr Profilsymbol klicken und „Einstellungen" aus dem Dropdown-Menü auswählen.

Gehen Sie dann zum Abschnitt „Zugangstoken" und erstellen Sie ein neues Token

Bild vom Autor

Erstellen Sie danach eine neue Code-Zelle und fügen Sie den folgenden Code hinzu —

Bild vom Autor

Ersetzen Sie den Dummy-Text durch Ihren API-SchlĂĽssel und fĂĽhren Sie den Code aus.

3. Erstellen von Embeddings und einem Vector Store fĂĽr Frage-Antwort

In vielen Anwendungen mit Sprachmodellen (LLM) besteht häufig die Anforderung, benutzerspezifische Daten zu verwenden, die nicht Teil des ursprünglichen Trainingsdatensatzes des Modells waren. LangChain stattet Sie mit den notwendigen Elementen aus, um Ihre benutzerdefinierten Daten zu importieren, zu transformieren, zu speichern und effizient abzufragen.

Quelle: LangChain Dokumentation

Der Prozess umfasst fĂĽnf verschiedene Phasen:

  1. Dokumentenladen: Diese Phase ist fĂĽr den Import von Daten in Form von Dokumenten verantwortlich.
  2. Dokumentensegmentierung: Hier wird das Dokument segmentiert und in handlichere Teile zerlegt.
  3. Embedding-Generierung: In diesem Schritt werden diese Teile in Vektordarstellungen umgewandelt, auch Embeddings genannt.
  4. Vector Store: Diese Komponente dient als Repository zum Speichern der genannten Chunk-Vektoren in einer dedizierten Vektordatenbank.
  5. Abruf-Mechanismus: Die letzte Phase beinhaltet einen Abruf-Mechanismus. Er wird verwendet, um einen oder mehrere Vektorsätze abzurufen, die die höchste Ähnlichkeit mit einer Abfrage aufweisen, wobei sowohl die Abfrage als auch die gespeicherten Vektoren im gleichen latenten Raum liegen.

Beginnen wir nun mit dem Laden des Dokuments. Ich lade eine kurze Zusammenfassung der indischen Verfassung, die von ChatGPT generiert wurde.

Bild vom Autor

Nach dem Laden des Dokuments unterteilen wir längere Textdokumente in kleinere, nicht überlappende Teile von jeweils 1000 Zeichen

Bild vom Autor

Nach der Dokumentensegmentierung initialisieren wir unsere Embeddings. Wir verwenden die von der Hugging Face Transformers-Bibliothek bereitgestellten Embeddings.

Bild vom Autor

Jetzt werden wir einen Vector Store mit Faiss einrichten. Im Wesentlichen werden Ihre Textdaten mit den bereitgestellten Embeddings in Vektoren umgewandelt, und Faiss wird verwendet, um diese Vektoren effizient zu indexieren und zu durchsuchen.

Bild vom Autor

Jetzt laden wir Google's flan-t5-xxl LLM von HuggingFace. Es ist ein wertvolles Werkzeug bei Frage-Antwort-Aufgaben aufgrund seines Text-zu-Text-Ansatzes, des vortrainierten und groĂźen Modells.

Bild vom Autor

Danach erstellen wir eine Kette mit LangChain. Ketten ermöglichen es uns, mehrere Komponenten in eine kohärente Anwendung zusammenzubauen.

Bild vom Autor

Wir erstellen eine einfache Kette: Sie beginnt mit einer Abfrage, und die Abfrage wird dann an das LLM gesendet.

Bild vom Autor

Zur Orientierung finden Sie unten den Teil der Zusammenfassung, aus dem das LLM antwortete —

"Präambel: Die Präambel der indischen Verfassung skizziert die Ideale und Ziele, die die Verfasser der Verfassung erreichen wollten. Sie hebt Indien als souveräne, sozialistische, säkulare und demokratische Republik hervor, die Gerechtigkeit, Freiheit, Gleichheit und Brüderlichkeit für ihre Bürger anstrebt."

Stellen wir eine weitere Frage dazu

Bild vom Autor

Anwendungen —

  1. KI-Chatbots und virtuelle Assistenten: Die in diesem Code eingebetteten Frage-Antwort-Funktionen bilden die Grundlage für die Erstellung von KI-Chatbots und virtuellen Assistenten, die sofortige, kontextbewusste Antworten auf Benutzerabfragen geben können. Dies hat Anwendungen im Kundenservice, E-Learning und mehr.
  2. Bildungswerkzeuge: Pädagogen und Schüler können von automatisiertem Frage-Beantworten profitieren und so Zweifel klären und das Lernerlebnis verbessern. Es kann auch bei der Generierung von Bildungsinhalten eingesetzt werden.
  3. Inhaltsempfehlungs-Engines: Durch das Verständnis des Kontexts und der Absicht hinter Abfragen kann dieser Code verwendet werden, um Content-Empfehlungssysteme zu entwickeln, die sicherstellen, dass Benutzer hochrelevante Vorschläge erhalten.

Für Leser, die tiefer in diese Anwendungen eintauchen und zusätzliche Werkzeuge für ihre Projekte erkunden möchten, finden Sie hier einige wertvolle Ressourcen:

FlowiseAI - Erstellen Sie einfach LLM-Apps Open Source UI-Visualisierungstool zum Erstellen Ihres benutzerdefinierten LLM-Flows mit Langchainflowiseai.comLangflow Warteliste Treten Sie heute der Langflow-Warteliste bei und entdecken Sie einen optimierten Ansatz fĂĽr LLMs. Open Source und benutzerfreundlich, Langflow...www.langflow.org

Fazit —

Dieser Artikel zeigte, wie LangChain bei der Entwicklung von Anwendungen mit Sprachmodellen eingesetzt werden kann, und wie seine flexiblen Abstraktionen und umfangreiche Werkzeugsammlung es Entwicklern ermöglichen, die Kraft von LLMs zu nutzen.

In der sich ständig weiterentwickelnden KI-Landschaft haben sich LLMs als Game-Changer etabliert, und wir sind stolz, Teil dieser aufregenden Reise zu einer intelligenteren und effizienteren Zukunft zu sein. Wir freuen uns darauf, LLMs zu nutzen, um Innovation voranzutreiben, komplexe Herausforderungen zu lösen und unseren Kunden und Partnern bei My Next Developer noch mehr Mehrwert zu bieten.