LLM-gestützte Anwendungen mit LangChain erstellen

Auf dieser Seite wird erläutert, wie Sie LLM-basierte Anwendungen mit LangChain erstellen. Die Übersichten auf dieser Seite verweisen zu den Verfahrensanleitungen in GitHub.

Was ist LangChain?

LangChain ist ein LLM-Orchestrierungs-Framework, mit dem Entwickler generative KI-Anwendungen oder RAG-Workflows (Retrieval Augmented Generation) erstellen können. Es bietet die Struktur, die Tools und die Komponenten, um komplexe LLM-Workflows zu optimieren.

Weitere Informationen zu LangChain finden Sie auf der Seite Google LangChain. Weitere Informationen zum LangChain-Framework finden Sie in der Produktdokumentation LangChain.

LangChain-Komponenten für Cloud SQL for MySQL

Cloud SQL for MySQL bietet die folgenden LangChain-Schnittstellen:

Mehr über die Verwendung von LangChain mit der LangChain-Kurzanleitung für Cloud SQL for MySQL erfahren

Vektorspeicher für Cloud SQL for MySQL

Mit dem Vektorspeicher werden Dokumente und Metadaten aus einer Vektordatenbank abgerufen und gespeichert. Der Vektorspeicher bietet einer Anwendung die Möglichkeit, semantische Suchen durchzuführen, die die Bedeutung einer Nutzerabfrage interpretieren. Diese Art der Suche wird als Vektorsuche bezeichnet und kann Themen finden, die konzeptionell der Abfrage entsprechen. Zum Zeitpunkt der Abfrage ruft der Vektorspeicher die Einbettungsvektoren ab, die der Einbettung der Suchanfrage am ähnlichsten sind. In LangChain übernimmt ein Vektorspeicher das Speichern eingebetteter Daten und das Ausführen der Vektorsuche für Sie.

Verwenden Sie die Klasse MySQLVectorStore, um mit dem Vektorspeicher in Cloud SQL for MySQL zu arbeiten.

Weitere Informationen finden Sie in der Produktdokumentation zu LangChain Vector Stores.

Anleitung zum Verfahren für den Vektorspeicher

Die Cloud SQL for MySQL-Anleitung für Vektorspeicher zeigt Ihnen Folgendes:

  • Integrationspaket und LangChain installieren
  • Erstellen Sie ein MySQLEngine-Objekt und konfigurieren Sie einen Verbindungspool zu Ihrer Cloud SQL for MySQL-Datenbank.
  • Tabelle initialisieren
  • Einbettungsobjekt mit VertexAIEmbeddings erstellen
  • Standard-MySQLVectorStore initialisieren
  • Texte hinzufügen
  • Texte löschen
  • Nach Dokumenten suchen
  • Dokumente anhand eines Vektors suchen
  • Index hinzufügen, um Vektorsuchanfragen zu beschleunigen
  • Index entfernen
  • Benutzerdefinierten Vektorspeicher erstellen
  • Mit einem Metadatenfilter nach Dokumenten suchen

Dokument-Loader für Cloud SQL for MySQL

Der Dokument-Loader speichert, lädt und löscht LangChain-Document-Objekte. Beispielsweise können Sie Daten zur Verarbeitung in Einbettungen laden und entweder im Vektorspeicher speichern oder sie als Tool verwenden, um spezifischen Kontext für Ketten bereitzustellen.

Verwenden Sie die Klasse MySQLLoader, um Dokumente aus dem Dokument-Loader in Cloud SQL for MySQL zu laden. Methoden vom Typ MySQLLoader geben ein oder mehrere Dokumente aus einer Tabelle zurück. Verwenden Sie die Klasse MySQLDocumentSaver, um Dokumente zu speichern und zu löschen.

Weitere Informationen finden Sie unter LangChain-Dokument-Loader.

Anleitung zum Laden von Dokumenten

Im Cloud SQL for MySQL-Leitfaden für den Dokument-Loader werden die folgenden Schritte erläutert:

  • Integrationspaket und LangChain installieren
  • Dokumente aus einer Tabelle laden
  • Filter zum Loader hinzufügen
  • Verbindung und Authentifizierung anpassen
  • Dokumenterstellung durch Angabe von Kundeninhalten und Metadaten anpassen
  • MySQLDocumentSaver zum Speichern und Löschen von Dokumenten verwenden und anpassen

Verlauf von Chatnachrichten für Cloud SQL for MySQL

Frage-und-Antwort-Anwendungen erfordern einen Verlauf der in der Unterhaltung gesprochenen Dinge, um der Anwendung Kontext zur Beantwortung weiterer Fragen des Nutzers zu bieten. Die LangChain-Klasse ChatMessageHistory ermöglicht der Anwendung, Nachrichten in einer Datenbank zu speichern und bei Bedarf zur Formulierung weiterer Antworten abzurufen. Eine Nachricht kann eine Frage, eine Antwort, eine Aussage, eine Begrüßung oder andere Texte sein, die der Nutzer oder die Anwendung während der Unterhaltung gibt. ChatMessageHistory speichert jede Nachricht und verkettet Nachrichten für jede Unterhaltung.

Cloud SQL for MySQL erweitert diese Klasse mit MySQLChatMessageHistory.

Anleitung zum Verfahren für den Chat-Nachrichtenverlauf

Im Cloud SQL for MySQL-Leitfaden für den Verlauf von Chatnachrichten werden folgende Schritte erläutert:

  • LangChain installieren und bei Google Cloud authentifizieren
  • Erstellen Sie ein MySQLEngine-Objekt und konfigurieren Sie einen Verbindungspool zu Ihrer Cloud SQL for MySQL-Datenbank.
  • Tabelle initialisieren
  • Initialisieren Sie die MySQLChatMessageHistory-Klasse, um Nachrichten hinzuzufügen und zu löschen.
  • Erstellen Sie eine Kette für den Nachrichtenverlauf mit der LangChain Expression Language (LCEL) und den Vertex AI-Chatmodellen von Google.