Zephyrnet-Logo

LangFlow | Benutzeroberfläche für LangChain zur Entwicklung von Anwendungen mit LLMs

Datum:

Einleitung

Große Sprachmodelle haben die Welt im Sturm erobert. Mit dem Eintrag von ChatGPT, GPT3, Bard und andere große Sprachmodelle arbeiten Entwickler ständig mit diesen Modellen, um neue Produktlösungen zu entwickeln. Mit jedem neuen Tag kommt ein neues Large Language Model oder neue Versionen bestehender LLMs. Es kann problematisch sein, mit diesen neuen Versionen oder neuen Modellen Schritt zu halten, da man die Dokumentation jedes einzelnen großen Sprachmodells durchgehen muss. LangChain, eine Bibliothek, die alle verschiedenen LLMs umfasst, macht die Sache einfacher. Darüber hinaus wurde LangFlow, eine auf LangChain basierende Benutzeroberfläche, eingeführt, um direkt mit Anwendungen zu arbeiten und diese zu erstellen, was die Dinge erheblich verbessert.

Lernziele

  • Um die LangFlow-Benutzeroberfläche zu verstehen
  • Zur Installation und Arbeit mit LangFlow
  • Um das Innenleben von LangFlow kennenzulernen
  • Mit LangFlow Anwendungen erstellen
  • Teilen Sie die über LangFlow erstellten Anwendungen

Dieser Artikel wurde als Teil des veröffentlicht Data Science-Blogathon.

Inhaltsverzeichnis

Was ist LangFlow und warum LangFlow?

LangFlow ist eine grafische Benutzeroberfläche, die auf dem basiert Python Paket LangChain mit React-Flow entwickelt. LangChain ist ein Python-Paket, mit dem Anwendungen mit großen Sprachmodellen erstellt werden können. Es besteht aus verschiedenen Komponenten wie Agenten, LLMs, Ketten, Speicher und Eingabeaufforderungen. Entwickler verketten diese Blöcke miteinander, um Anwendungen zu erstellen. LangChain enthält Wrapper für fast alle gängigen Large Language Models. Um nun LangChain verwenden zu können, muss man den Code zum Erstellen von Anwendungen schreiben. Das Schreiben von Code kann manchmal zeitaufwändig und sogar fehleranfällig sein.

Hier kommt LangFlow ins Spiel. Es handelt sich um eine grafische Benutzeroberfläche, die auf LangChain basiert. Es enthält alle Komponenten, die in LangChain enthalten sind. LangFlow bietet eine Drag-and-Drop-Funktion, mit der Sie Komponenten auf den Bildschirm ziehen und mit der Erstellung von Anwendungen aus großen Sprachmodellen beginnen können. Es enthält sogar reichhaltige Beispiele, mit denen jeder beginnen kann. In diesem Artikel gehen wir diese Benutzeroberfläche durch und sehen, wie man damit Anwendungen erstellt.

Beginnen wir mit Langflow

Nachdem wir uns nun angeschaut haben, was LangFlow ist und wie es dazu passt, wollen wir uns näher damit befassen, um seine Funktionalität besser zu verstehen. Die LangFlow-Benutzeroberfläche ist sowohl für Javascript als auch für Python verfügbar. Sie können eines davon herausnehmen und damit beginnen, damit zu arbeiten. Für die Python-Version muss man Python in seinem System und die LangChain-Bibliothek haben.

Wenn Sie mit LangFlow arbeiten möchten, benötigen Sie die folgenden Pakete

pip install langchain
pip install langflow

Dadurch werden das Langflow-Paket und das LangChain-Paket installiert. Um nun die Benutzeroberfläche zu starten, verwenden Sie den folgenden Befehl

python -m langflow (or) langflow

Jetzt ist die LangFlow-Benutzeroberfläche betriebsbereit. Es läuft auf dem lokalen Host unter der Portnummer 7860. Auf diese Weise können Sie LangFlow installieren und mit der Arbeit beginnen.

Die Macher von LangFlow, also die LogSpace-KI, haben LangFlow direkt auf der HuggingFace-Website bereitgestellt. Sie können klicken hier um die HuggingFace-Website zu besuchen oder bei Google zu suchen. Es sieht in etwa wie unten aus. Klicken Sie dann auf „Neues Projekt“.

LangFlow | Langkette | LLMs

Wenn Sie auf „Neues Projekt erstellen“ klicken, wird die LangFlow-Benutzeroberfläche angezeigt.

LangFlow | Langkette | LLMs

Hier werden wir im Leerraum die Anwendungen erstellen, indem wir die Komponenten ziehen. Und die Comps sind auf der linken Seite vorhanden (Agenten, Ketten, Lader usw.). Wenn Sie also auf Comps klicken, werden Ihnen verschiedene Typen angezeigt, von denen Sie einen auswählen und ihn in den weißen Bereich ziehen. Im Leerraum kombinieren Sie dann verschiedene Comps, um die gesamte Anwendung zu bilden.

Die LangFlow-Benutzeroberfläche verstehen

In diesem Abschnitt werden wir kurz die Benutzeroberfläche von LangFlow, die Elemente, die sie darstellen, und die Funktionsweise der Benutzeroberfläche verstehen, um besser zu verstehen, wie man mit LangFlow schnell große Sprachanwendungen erstellt

LangFlow | Langkette | LLMs

Im Bild oben sehen wir den oberen rechten Abschnitt der LangFlow-Benutzeroberfläche. Die Bedeutung der Symbole kann verständlich sein. Das zweite Symbol stellt die Exportoption dar. Wenn wir also eine Anwendung über LangFlow erstellen und diese nun auf unseren lokalen Computer herunterladen möchten. Dann können wir dies tun, indem wir unsere Anwendungskonfiguration in eine JSON-Datei konvertieren. Wenn Sie auf die Option „Exportieren“ klicken, können Sie die JSON-Datei herunterladen, die die Informationen Ihrer Anwendung enthält. Wenn Ihr Freund nun dieselbe Anwendung erstellen möchte, kann er einfach auf die erste Option „Importieren“ klicken und dann Ihre JSON-Datei daran übergeben.

Die dritte Option konvertiert Ihre Anwendung in einen Python-Code, mit dem Sie dann direkt in Ihrem lokalen System arbeiten können, anstatt jedes Mal, wenn Sie diese Anwendung verwenden möchten, die LangFlow-Website aufzurufen.

LangFlow | Langkette | LLMs

LangChain verfügt über Wrapper für viele große Sprachmodelle. Jedes große Sprachmodell verfügt über eine eigene API, mit der es arbeiten kann. Wenn wir also versuchen, mit einem LLM im LangFlow zu arbeiten, bietet es uns die Möglichkeit, den oben gezeigten API-Schlüssel hinzuzufügen. Darüber hinaus haben wir sogar die Möglichkeit, den Typ des großen Sprachmodells auszuwählen, mit dem wir arbeiten möchten.

Erstellen einer einfachen Chat-Anwendung mit LangFlow

In diesem Abschnitt erstellen wir eine einfache Chatbot-Anwendung, die mit der LangFlow-Benutzeroberfläche arbeitet. Diese Anwendung beinhaltet die Arbeit mit OpenAI Large Language Models, daher sollte ein offener API-Schlüssel vorhanden sein, um mit dieser Anwendung arbeiten zu können. Die Anwendung, die wir erstellen werden, ist ein Chatbot, der Benutzerfragen auf lustige Weise beantwortet.

Die Anwendung, die wir erstellen werden, besteht also aus drei Elementen: dem Large Language Model, der Prompt Template und der LLM Chain, die sie verbindet. Beginnen wir zunächst damit, den OpenAI-Wrapper von LangChain auf den gepunkteten Abschnitt in der Benutzeroberfläche zu ziehen.

LangFlow | Langkette | LLMs

OpenAI Large Language Model Wrapper

Den Open AI Large Language Model-Wrapper finden Sie im LLM-Bereich von LangFlow. Wir können es in den weißen Bereich ziehen. Hier wählen wir nun den Modelltyp aus, mit dem wir arbeiten möchten. Vorerst werde ich es auf den Davinci-Modus einstellen. Und die Temperatur, also wie kreativ das Modell sein soll, ist auf 0.7 und die maximale Anzahl an Token auf 256 eingestellt. Im Feld Open API Key müssen wir den Open API Key angeben, und das Feld darunter kann leer bleiben.

"

Auf dem Bild sehen wir, dass wir die Eingabeaufforderungsvorlage in den weißen Bereich gezogen haben. Hier ist die Anwendung, die wir entwickeln, ein einfacher Bot, der witzig antwortet, daher müssen wir die Prompt-Vorlage entsprechend schreiben.

Eingabeaufforderungsvorlage

You are an AI bot that responds to each query given by the Human in a funny way. Human: {query} AI:
"

Kommen wir nun zum letzten Element, dem Kettenelement. Die LLM-Kette ist diejenige, die unser OpenAI Large Language Model und die Prompt-Vorlage miteinander verbindet bzw. verkettet. Wir können sehen, dass die LLMChain im Abschnitt „Ketten“ auf der linken Seite der Benutzeroberfläche zu finden ist. Schließlich ist es an der Zeit, alle Dinge miteinander zu verketten.

"
"

Verbinden Sie wie in den Bildern oben die Prompt-Vorlage mit dem Prompt der LLMChain und verbinden Sie das OpenAI-Ende mit dem LLM-Ende von LLMChain.

Jetzt ist es Zeit, unsere Anwendung zu testen. Um die Anwendung auszuführen, klicken Sie auf das Thunderbolt-Symbol im unteren rechten Teil der Benutzeroberfläche. Wenn der OpenAI-Schlüssel gültig ist, wird auf jedem der Elemente oben neben dem Elementnamen ein grüner Punkt angezeigt (zunächst gelb), dann sehen Sie ein blaues Chat-Symbol unter dem Thunderbolt-Symbol. Klicken Sie auf das blaue Chat-Symbol.

"
"

Nachdem Sie darauf geklickt haben, öffnet sich ein Chatfenster, in dem Sie chatten können. Jetzt können Sie mit dem Large Language Model chatten, das wir in der Benutzeroberfläche bereitgestellt haben. Versuchen wir, den Bot zu fragen: „Wie geht es dir?“ Dazu muss der Bot eine lustige Antwort geben.

"
"

Wir können sehen, dass der Bot tatsächlich witzig reagiert hat, indem wir unserer Eingabeaufforderungsvorlage gefolgt sind. Teilen Sie es mit anderen, indem Sie es einfach in JSON exportieren. Dies ist nur einer der Beispielanwendungsfälle dessen, was wir mit LangFlow und LangChain erreichen können.

Zusammenfassung

Die LangFlow-Benutzeroberfläche basiert auf dem LangChain Framework von Python, einem Paket, mit dem intensiv gearbeitet wird, um Anwendungen mit großen Sprachmodellen zu erstellen. Wir haben die Komponenten in der Benutzeroberfläche gesehen und gesehen, wie man Modelle mit der Benutzeroberfläche erstellen und sie mit einer anderen Person teilen kann, indem man sie in eine JSON-Datei exportiert. Mit dieser Benutzeroberfläche sind die Möglichkeiten zur Erstellung von High-End-Anwendungen endlos.

Key Take Away

  • LangFlow bietet eine einfache Drag-and-Drop-Funktion zum Erstellen von Anwendungen mit LLMs
  • Die LangFlow-Benutzeroberfläche ist sowohl in Python als auch in JavaScript verfügbar
  • Diese Benutzeroberfläche ermöglicht es Benutzern, ihre Anwendung in JSON-Dateien zu konvertieren und sie so einfacher zu teilen
  • LangFlow wird sogar mit einem Python-Paket geliefert, mit dem der Benutzer die in LangFlow erstellte Anwendung installieren und ausführen kann, indem er den Pfad zur JSON-Datei angibt
  • LangFlow erleichtert Nicht-Entwicklern das Erstellen von Anwendungen mit Large Language Model

Häufig gestellte Fragen

Q1. Was ist LangChain?

A. LangChain ist ein Python-Paket zum Erstellen von Anwendungen mit großen Sprachmodellen. Es enthält eine Reihe von Komponenten, die zur Erstellung dieser Anwendungen miteinander verkettet sind.

Q2. Wie unterscheiden sich LangFlow und LangChain?

A. Während LangChain ein Framework ist, das Tools für die Entwicklung von Anwendungen mit großen Sprachmodellen bereitstellt. LangFlow ist eine auf LangChain basierende Benutzeroberfläche, um den Entwicklungsprozess mit einem No-Code-Low-Code-Konzept reibungsloser zu gestalten.

Q3. Welche Sprachen unterstützt LangFlow?

A. Die Programmiersprachen Python und JavaScript unterstützen LangFlow. Man kann damit direkt über die HuggingFace-Website arbeiten.

Die in diesem Artikel gezeigten Medien sind nicht Eigentum von Analytics Vidhya und werden nach Ermessen des Autors verwendet.

spot_img

Neueste Intelligenz

spot_img