Come Costruire un’App Super ChatGPT

SingleStore è un potente sistema di database multi-modello e piattaforma progettata per supportare una vasta gamma di casi d’uso aziendali. Le sue caratteristiche distintive consentono alle aziende di unificare più sistemi di database in una singola piattaforma, riducendo il Costo Totale di Possesso (TCO) e semplificando i flussi di lavoro degli sviluppatori eliminando la necessità di strumenti di integrazione complessi.

In questo articolo, esploreremo come SingleStore possa trasformare le campagne email per una società di analisi web, consentendo la creazione di contenuti email personalizzati e altamente mirati.

Il file del notebook utilizzato nell’articolo è disponibile su GitHub.

Introduzione

Una società di analisi web si affida alle campagne email per coinvolgere i clienti. Tuttavia, un approccio generico al targeting dei clienti spesso perde opportunità per massimizzare il potenziale commerciale. Una soluzione più efficace coinvolgerebbe l’uso di un grande modello linguistico (LLM) per creare messaggi email personalizzati.

Consideriamo uno scenario in cui i dati relativi al comportamento degli utenti sono memorizzati in un database NoSQL come MongoDB, mentre preziosa documentazione risiede in un database vettoriale, come Pinecone. Gestire questi sistemi multipli può diventare complesso e intensivo dal punto di vista delle risorse, evidenziando la necessità di una soluzione unificata.

SingleStore, un database multi-modello versatile, supporta vari formati di dati, inclusi JSON, e offre funzioni vettoriali integrate. Si integra senza soluzione di continuità con LLM, rendendolo un’alternativa potente per gestire più sistemi di database. In questo articolo, dimostreremo quanto sia facile per SingleStore sostituire sia MongoDB che Pinecone, semplificando le operazioni senza compromettere la funzionalità.

Nella nostra applicazione di esempio, utilizzeremo un LLM per generare email uniche per i nostri clienti. Per aiutare il LLM a imparare come mirare ai nostri clienti, utilizzeremo diverse aziende di analisi ben note come materiale didattico per il LLM.

Personalizzeremo ulteriormente i contenuti in base al comportamento dell’utente. I dati dei clienti sono memorizzati in MongoDB. Diverse fasi del comportamento dell’utente sono memorizzate in Pinecone. Il comportamento dell’utente permetterà al LLM di generare email personalizzate. Infine, consolideremo i dati memorizzati in MongoDB e Pinecone utilizzando SingleStore.

Crea un Account SingleStore Cloud

Un articolo precedente ha mostrato i passaggi per creare un account gratuito SingleStore Cloud. Utilizzeremo il Livello Standard e useremo i nomi predefiniti per il Gruppo Spazio di Lavoro e lo Spazio di Lavoro. Abiliteremo anche SingleStore Kai.

Memorizzeremo la nostra chiave API di OpenAI e la chiave API di Pinecone nella riserva segreta utilizzando rispettivamente OPENAI_API_KEY e PINECONE_API_KEY.

Importa il Notebook

Scaricheremo il notebook da GitHub.

Dal riquadro di navigazione a sinistra nel portale cloud di SingleStore, selezioneremo “SVILUPPA” > “Data Studio.”

Nell’angolo in alto a destra della pagina web, selezioneremo “Nuovo Notebook” > “Importa Da File.” Utilizzeremo la procedura guidata per individuare e importare il notebook scaricato da GitHub.

Eseguire il Notebook

Modello Email Generico

Inizieremo generando modelli di email generiche e poi utilizzeremo un LLM per trasformarle in messaggi personalizzati per ciascun cliente. In questo modo, possiamo rivolgerci a ciascun destinatario per nome e presentargli i vantaggi della nostra piattaforma di analisi web.

Possiamo generare un’email generica come segue:

Python

 

Ad esempio, Alice vedrebbe il seguente messaggio:

Plain Text

 

Gli altri utenti riceverebbero lo stesso messaggio, ma con il loro nome rispettivamente.

2. Aggiunta di un Modello di Linguaggio Ampio (LLM)

Possiamo facilmente integrare un LLM nella nostra applicazione fornendogli un ruolo e fornendogli alcune informazioni, come segue:

Python

 

Creeremo una funzione per chiamare il LLM:

Python

 

Scorrendo l’elenco degli utenti e chiamando il LLM si generano email uniche:

Python

 

Ad esempio, questo è ciò che potrebbe vedere Alice:

Plain Text

 

Saranno generate email altrettanto uniche per gli altri utenti.

3. Personalizzazione del Contenuto dell’Email Con il Comportamento dell’Utente

Classificando gli utenti in base alle fasi del comportamento, possiamo ulteriormente personalizzare i contenuti delle email per allinearli alle loro esigenze specifiche. Un LLM assisterà nella creazione di email che incoraggiano gli utenti a progredire attraverso diverse fasi, migliorando in definitiva la loro comprensione e utilizzo di vari servizi.

Attualmente, i dati degli utenti sono memorizzati in un database MongoDB con una struttura del record simile alla seguente:

JSON

 

Ci collegheremo a MongoDB per ottenere i dati nel seguente modo:

Python

 

Sostituiremo <password> e <host> con i valori da MongoDB Atlas.

Abbiamo diverse fasi del comportamento degli utenti:

Python

 

Utilizzando i dati sulle fasi del comportamento, chiederemo all’LLM di personalizzare ulteriormente l’email nel seguente modo:

Python

 

Ad esempio, ecco un’email generata per Michael:

Plain Text

 

4. Personalizzazione Ulteriore dei Contenuti delle Email

Per supportare il progresso dell’utente, utilizzeremo gli embedding vettoriali di Pinecone, permettendoci di indirizzare gli utenti alla documentazione rilevante per ciascuna fase. Questi embedding rendono semplice guidare gli utenti verso risorse essenziali e migliorare ulteriormente le loro interazioni con il nostro prodotto.

Python

 

Creeremo gli embedding nel seguente modo:

Python

 

Cercheremo corrispondenze in Pinecone nel seguente modo:

Python

 

Utilizzando i dati, possiamo chiedere all’LLM di personalizzare ulteriormente l’email, nel seguente modo:

Python

 

Ad esempio, ecco un’email generata per Melissa:

Plain Text

 

Possiamo vedere che abbiamo perfezionato il modello generico e sviluppato email piuttosto mirate.

Utilizzando SingleStore

Invece di gestire sistemi di database separati, ottimizzeremo le nostre operazioni utilizzando SingleStore. Con il supporto per JSON, testo e incorporamenti vettoriali, possiamo memorizzare in modo efficiente tutti i dati necessari in un unico posto, riducendo il TCO e semplificando i nostri processi di sviluppo.

Ingeriremo i dati da MongoDB utilizzando un pipeline simile al seguente:

SQL

 

Sostituiremo <primary>, <secondary>, <secondary> e <password> con i valori da MongoDB Atlas.

La tabella dei clienti sarà creata dal pipeline. Gli incorporamenti vettoriali per le fasi di comportamento possono essere creati come segue:

Python

 

Averemo bisogno di una tabella per memorizzare i dati:

SQL

 

Successivamente, possiamo salvare i dati nella tabella:

Python

 

Cercheremo corrispondenze in SingleStore come segue:

Python

 

Utilizzando i dati, possiamo chiedere al LLM di personalizzare l’email come segue:

Python

 

Ad esempio, ecco un’email generata per Joseph:

Plain Text

 

Riepilogo

Attraverso questa dimostrazione pratica, abbiamo visto come SingleStore migliorare le nostre campagne email con le sue capacità multi-modello e personalizzazione basata sull’IA. Utilizzando SingleStore come nostra unica fonte di verità, abbiamo semplificato i nostri flussi di lavoro e garantito che le nostre campagne email offrano massimo impatto e valore ai nostri clienti.

Riconoscimenti

Ringrazio Wes Kennedy per il codice demo originale, adattato per questo articolo.

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