Wie man eine ChatGPT Super App erstellt

SingleStore ist ein leistungsstarkes Multi-Model-Datenbanksystem und eine Plattform, die entwickelt wurde, um eine Vielzahl von Geschäftsanwendungsfällen zu unterstützen. Ihre einzigartigen Funktionen ermöglichen es Unternehmen, mehrere Datenbanksysteme in eine einzige Plattform zu integrieren, was die Gesamtbetriebskosten reduziert und die Arbeitsabläufe für Entwickler vereinfacht, indem komplexe Integrationswerkzeuge überflüssig werden.

In diesem Artikel werden wir untersuchen, wie SingleStore E-Mail-Kampagnen für ein Web-Analyseunternehmen transformieren kann, um die Erstellung personalisierter und hoch zielgerichteter E-Mail-Inhalte zu ermöglichen.

Die im Artikel verwendete Notizdatei ist auf GitHub verfügbar.

Einführung

Ein Web-Analyseunternehmen ist auf E-Mail-Kampagnen angewiesen, um mit Kunden in Kontakt zu treten. Ein generischer Ansatz zur Zielgruppenansprache verpasst jedoch oft Chancen, das Geschäftspotenzial zu maximieren. Eine effektivere Lösung würde die Verwendung eines großen Sprachmodells (LLM) beinhalten, um personalisierte E-Mail-Nachrichten zu erstellen.

Stellen Sie sich ein Szenario vor, in dem Benutzerverhaltensdaten in einer NoSQL-Datenbank wie MongoDB gespeichert sind, während wertvolle Dokumentation in einer Vektordatenbank wie Pinecone vorhanden ist. Das Verwalten dieser verschiedenen Systeme kann komplex und ressourcenintensiv werden und unterstreicht die Notwendigkeit einer vereinheitlichten Lösung.

SingleStore, eine vielseitige Multi-Model-Datenbank, unterstützt verschiedene Datenformate, einschließlich JSON, und bietet integrierte Vektorfunktionen. Es integriert nahtlos mit LLMs und ist damit eine leistungsstarke Alternative zur Verwaltung mehrerer Datenbanksysteme. In diesem Artikel werden wir demonstrieren, wie einfach SingleStore sowohl MongoDB als auch Pinecone ersetzen kann, indem wir Operationen vereinfachen, ohne die Funktionalität zu beeinträchtigen.

In unserer Beispielanwendung verwenden wir ein LLM, um eindeutige E-Mails für unsere Kunden zu generieren. Um dem LLM beizubringen, wie es unsere Kunden ansprechen kann, verwenden wir eine Reihe bekannter Analyseunternehmen als Lernmaterial für das LLM.

Wir werden den Inhalt weiter anhand des Nutzerverhaltens anpassen. Kundendaten werden in MongoDB gespeichert. Unterschiedliche Phasen des Nutzerverhaltens werden in Pinecone gespeichert. Das Nutzerverhalten ermöglicht es dem LLM, personalisierte E-Mails zu generieren. Schließlich werden wir die in MongoDB und Pinecone gespeicherten Daten mit SingleStore konsolidieren.

Erstellen Sie ein SingleStore Cloud-Konto

Ein früherer Artikel hat die Schritte zur Erstellung eines kostenlosen SingleStore Cloud-Kontos gezeigt. Wir werden die Standard-Tier verwenden und die Standardnamen für die Arbeitsgruppe und den Arbeitsbereich übernehmen. Wir werden auch SingleStore Kai aktivieren.

Wir werden unseren OpenAI API-Schlüssel und Pinecone API-Schlüssel im geheimen Tresor unter Verwendung von OPENAI_API_KEY und PINECONE_API_KEY speichern.

Importieren Sie das Notebook

Wir werden das Notebook von GitHub herunterladen.

Von der linken Navigationsleiste im SingleStore-Cloud-Portal wählen wir „ENTWICKELN“ > „Data Studio.“

Oben rechts auf der Webseite wählen wir „Neues Notebook“ > „Aus Datei importieren.“ Wir verwenden den Assistenten, um das Notebook zu finden und zu importieren, das wir von GitHub heruntergeladen haben.

Notebook ausführen

Generische E-Mail-Vorlage

Wir beginnen mit der Erstellung generischer E-Mail-Vorlagen und verwenden dann ein LLM, um sie in personalisierte Nachrichten für jeden Kunden umzuwandeln. Auf diese Weise können wir jeden Empfänger beim Namen ansprechen und sie mit den Vorteilen unserer Web-Analyseplattform vertraut machen.

Wir können eine generische E-Mail wie folgt erstellen:

Python

 

Zum Beispiel würde Alice die folgende Nachricht sehen:

Plain Text

 

Andere Benutzer würden dieselbe Nachricht erhalten, jedoch mit ihrem jeweiligen Namen.

2. Hinzufügen eines Large Language Model (LLM)

Wir können leicht ein LLM in unsere Anwendung integrieren, indem wir ihm eine Rolle zuweisen und ihm einige Informationen geben, wie folgt:

Python

 

Wir werden eine Funktion erstellen, um das LLM aufzurufen:

Python

 

Indem wir die Liste der Benutzer durchlaufen und das LLM aufrufen, werden einzigartige E-Mails generiert:

Python

 

Zum Beispiel könnte Alice Folgendes sehen:

Plain Text

 

Ebenso einzigartige E-Mails werden für die anderen Benutzer generiert.

3. Anpassen des E-Mail-Inhalts an das Nutzerverhalten

Durch die Kategorisierung von Benutzern basierend auf ihren Verhaltensstufen können wir den E-Mail-Inhalt weiter anpassen, um ihn an ihre spezifischen Bedürfnisse anzupassen. Ein LLM wird dabei helfen, E-Mails zu erstellen, die Benutzer dazu ermutigen, durch verschiedene Stufen voranzukommen und letztendlich ihr Verständnis und ihre Nutzung verschiedener Dienste zu verbessern.

Zurzeit werden Benutzerdaten in einer MongoDB-Datenbank mit einer Aufzeichnungsstruktur ähnlich der folgenden gespeichert:

JSON

 

Wir werden uns mit MongoDB verbinden, um die Daten wie folgt zu erhalten:

Python

 

Wir werden <password> und <host> durch die Werte von MongoDB Atlas ersetzen.

Wir haben eine Reihe von Benutzerverhaltensstufen:

Python

 

Basierend auf den Daten zu Verhaltensstufen werden wir den LLM bitten, die E-Mail weiter anzupassen, wie folgt:

Python

 

Zum Beispiel hier ist eine E-Mail für Michael generiert:

Plain Text

 

4. E-Mail-Inhalt weiter anpassen

Um den Fortschritt der Benutzer zu unterstützen, werden wir die Vektor-Einbettungen von Pinecone verwenden, um Benutzer zu relevanten Dokumentationen für jede Stufe zu leiten. Diese Einbettungen machen es mühelos, Benutzer zu wichtigen Ressourcen zu lenken und ihre Interaktionen mit unserem Produkt weiter zu verbessern.

Python

 

Wir werden die Einbettungen wie folgt erstellen:

Python

 

Wir werden Pinecone nach Übereinstimmungen durchsuchen, wie folgt:

Python

 

Basierend auf den Daten können wir den LLM bitten, die E-Mail weiter anzupassen, wie folgt:

Python

 

Zum Beispiel hier ist eine E-Mail für Melissa generiert:

Plain Text

 

Wir können sehen, dass wir die generische Vorlage verfeinert und ziemlich zielgerichtete E-Mails entwickelt haben.

Unter Verwendung von SingleStore

Anstatt separate Datenbanksysteme zu verwalten, werden wir unsere Abläufe durch die Verwendung von SingleStore optimieren. Mit seiner Unterstützung für JSON, Text und Vektoreinbettungen können wir alle erforderlichen Daten effizient an einem Ort speichern, was die Gesamtkosten reduziert und unsere Entwicklungsprozesse vereinfacht.

Die Daten werden aus MongoDB über eine ähnliche Pipeline wie die folgende eingelesen:

SQL

 

Wir werden <primary>, <secondary>, <secondary> und <password> durch die Werte aus MongoDB Atlas ersetzen.

Die Kundentabelle wird durch die Pipeline erstellt. Die Vektoreinbettungen für die Verhaltensstufen können wie folgt erstellt werden:

Python

 

Wir benötigen eine Tabelle, um die Daten zu speichern:

SQL

 

Dann können wir die Daten in der Tabelle speichern:

Python

 

Wir werden SingleStore nach Übereinstimmungen durchsuchen, wie folgt:

Python

 

Mit den Daten können wir den LLM bitten, die E-Mail anzupassen, wie folgt:

Python

 

Als Beispiel hier eine für Joseph generierte E-Mail:

Plain Text

 

Zusammenfassung

In dieser praktischen Demonstration haben wir gesehen, wie SingleStore unsere E-Mail-Kampagnen mit seinen Multi-Model-Fähigkeiten und KI-gesteuerter Personalisierung verbessert. Durch die Verwendung von SingleStore als unsere einzige Wahrheitsquelle haben wir unsere Abläufe vereinfacht und sichergestellt, dass unsere E-Mail-Kampagnen maximalen Einfluss und Wert für unsere Kunden bieten.

Danksagungen

Ich danke Wes Kennedy für den ursprünglichen Demo-Code, der für diesen Artikel angepasst wurde.

Source:
https://dzone.com/articles/how-to-build-a-chatgpt-super-app