Applicazioni conversazionali con grandi modelli di linguaggio che comprendono la sequenza di input utente, prompt e risposte

Applicazioni conversazionali avanzate con modelli di linguaggio potenti che comprendono l'input dell'utente, i prompt e le risposte

Le applicazioni conversazionali stanno diventando una parte integrante della nostra vita quotidiana, dalle assistenti virtuali ai chatbot e all’interfaccia vocale. Ti sei mai chiesto cosa succede dietro le quinte quando interagisci con questi sistemi? In questo articolo, approfondiremo gli aspetti tecnici di come vengono elaborati gli input degli utenti, convertiti in prompt, inviati a grandi modelli di linguaggio (LLM) e vengono generate e presentate le risposte agli utenti. Spiegheremo la sequenza degli eventi in modo semplificato, rendendolo facile da comprendere sia per i lettori tecnici che non tecnici.

Input dell’utente

Tutto inizia con un input dell’utente, che può essere un comando vocale, un messaggio di testo o anche un clic su un pulsante. Ad esempio, diciamo che un utente dice: “Ehi, com’è il tempo oggi?”

Preprocessing

Una volta ricevuto l’input dell’utente, passa attraverso una serie di passaggi di preprocessing. Questi passaggi possono includere:

  • Tokenizzazione: Suddividere l’input in singole parole o token. Nel nostro esempio, “Ehi” sarebbe un token, “Com’è” sarebbe un altro, e così via.
  • Identificazione delle entità nominate (NER): Individuazione di entità specifiche all’interno dell’input, come nomi, luoghi, organizzazioni, ecc. Ad esempio, se l’utente avesse detto: “Com’è il tempo a New York City?”, l’entità nominata sarebbe “New York City”.
  • Part-of-speech Tagging (POS tagging): Identificazione della categoria grammaticale di ogni parola, come sostantivo, verbo, aggettivo, ecc.
  • Analisi delle dipendenze: Analisi delle relazioni tra i token, come le relazioni soggetto-verbo-oggetto.

Questi passaggi di preprocessing aiutano a preparare i dati di input per la fase successiva, ovvero la conversione dell’input dell’utente in un prompt.

Generazione del prompt

L’input preelaborato viene quindi trasformato in un prompt, che è una rappresentazione concisa della richiesta o interrogazione dell’utente. Il prompt è progettato per fornire al LLM informazioni sufficienti per generare una risposta appropriata.

Per il nostro esempio, il prompt potrebbe apparire così:

{“intent”: “controlla_meteo”, “luogo”: “New York City” }

Nota come il prompt contenga due informazioni chiave: l’intento (controlla_meteo) e il luogo (New York City). Queste informazioni aiutano il LLM a capire cosa vuole l’utente e adattare la sua risposta di conseguenza.

Elaborazione del Grande Modello di Linguaggio (LLM)

Il prompt è ora pronto per essere inviato al LLM per l’elaborazione. Il LLM utilizza algoritmi di comprensione del linguaggio naturale (NLU) per comprendere il significato del prompt e generare una risposta.

Supponiamo che il LLM generi la seguente risposta:

“La previsione per oggi a New York City indica cieli sereni con una temperatura massima di 75 gradi Fahrenheit e una minima di 50 gradi Fahrenheit.”

Post-elaborazione

Dopo aver ricevuto la risposta dal LLM, potrebbero esserci ulteriori passaggi di post-elaborazione per migliorare l’output. Alcuni di questi passaggi potrebbero includere:

  • Analisi del sentiment: Determinare se il tono della risposta è positivo, negativo, neutro o misto.
  • Classificazione dell’intento: Assicurarsi che la risposta sia in linea con l’intento originale dell’input dell’utente.
  • Valutazione della fluidità: Valutare la coerenza e la leggibilità della risposta.

Se necessario, la risposta potrebbe essere sottoposta a ulteriori affinamenti tramite algoritmi di apprendimento automatico o motori basati su regole per garantire che soddisfi determinati standard di qualità.

Presentazione della risposta

Infine, la risposta viene presentata all’utente tramite l’interfaccia scelta, come un assistente vocale, una piattaforma di messaggistica o un’applicazione web. Nel nostro caso, la risposta sarebbe pronunciata ad alta voce o visualizzata come testo su uno schermo.

Prendiamo alcuni scenari specifici del settore su come funziona il flusso. Qui prendo in considerazione il concetto di “risoluzione delle entità”, uno degli elementi importanti nello spazio della gestione dei dati, ed esploro come potrebbero funzionare le applicazioni di conversazione basate su LLM.

Il seguente diagramma fornisce una visione del flusso delle sequenze, dei dati e degli eventi.

Inoltre, prendo in considerazione due scenari del settore, Bancario e della Vendita al Dettaglio, per mostrare il flusso.

Esempio 1: Risoluzione dell'”Entità Utente” nel Contesto del Processo Know Your Customer (KYC) nello Spazio dei Servizi Bancari

Input Utente

“Ciao, sono un nuovo cliente e vorrei aprire un conto corrente.”

Preprocessing

Il sistema di intelligenza artificiale conversazionale inizia analizzando l’input dell’utente per identificare le entità chiave menzionate. In questo caso, l’utente ha menzionato un istituto finanziario (“banca”) e un prodotto finanziario (“conto corrente”). Il sistema esegue il riconoscimento delle entità per identificare la banca specifica e il tipo di conto che corrispondono alla descrizione dell’utente. Supponiamo che il sistema identifichi la banca come “ABC Bank” e il tipo di conto come “Conto Corrente Personale”.

Generazione del Prompt

Il sistema crea quindi un prompt che codifica le entità identificate e il contesto della richiesta dell’utente. Il prompt potrebbe avere un aspetto simile a questo:

{“entità1”: “ABC Bank”, “entità2”: “Conto Corrente Personale”, “contesto”: “apertura conto”}

Elaborazione del Modello di Linguaggio Avanzato (LLM)

Il prompt viene quindi passato a un grande modello di linguaggio (LLM) addestrato specificamente per i processi KYC nel settore bancario. L’LLM elabora il prompt e genera una risposta basata sul contesto e sulle entità fornite. La risposta potrebbe contenere domande relative all’identità dell’utente, come nome, indirizzo e data di nascita, oltre a richieste di documentazione per verificare la loro identità.

Post-elaborazione

Dopo aver ricevuto la risposta dall’LLM, il sistema di intelligenza artificiale conversazionale effettua ulteriori elaborazioni per perfezionare l’output. Ciò potrebbe includere:

  • Link dell’Entità: Identificazione delle relazioni tra le entità nella risposta e collegarle a database esterni o sistemi. Ad esempio, il sistema potrebbe collegare il nome dell’utente ai loro report di credito o ai loro record di documenti di identità governativi.
  • Rilevamento del Rischio: Analisi delle risposte dell’utente e della documentazione per individuare potenziali rischi o problemi di conformità. Ad esempio, il sistema potrebbe segnalare un utente che fornisce documenti di identificazione incoerenti o le cui informazioni personali corrispondono a un truffatore noto.
  • Conformità Regolamentare: Verifica che le informazioni dell’utente e la documentazione soddisfino i requisiti regolamentari per il KYC. Il sistema potrebbe effettuare controlli rispetto a regolamenti federali, come il USA PATRIOT Act, o a standard internazionali, come i Principi di Wolfsberg.

Presentazione della Risposta

Infine, il sistema presenta la risposta all’utente in un formato di linguaggio naturale, tenendo conto delle preferenze dell’utente per il canale di comunicazione e lo stile. Ad esempio, il sistema potrebbe mostrare un elenco di documenti richiesti e istruzioni per caricarli in modo sicuro, offrendo anche opzioni per parlare con un rappresentante o prenotare un appuntamento presso una filiale.

In questo esempio, il sistema di intelligenza artificiale conversazionale ha utilizzato processi KYC per identificare accuratamente la banca e il tipo di conto menzionato dall’utente, generando poi domande e richieste appropriate per la verifica e la valutazione del rischio. Sfruttando modelli di linguaggio avanzati e sofisticate tecniche di elaborazione del linguaggio naturale, il sistema è stato in grado di ottimizzare il processo di apertura del conto garantendo al contempo la conformità normativa e la mitigazione del rischio.

Esempio 2: Risoluzione dell'”Entità Prodotto” nel Contesto del Processo di Catena di Approvvigionamento nell’Industria della Vendita al Dettaglio

Input Utente

“Abbiamo ricevuto forniture duplicate dello stesso prodotto da fornitori diversi. Puoi aiutarci a abbinare i prodotti e risolvere il problema?”

Preprocessing

Il sistema di intelligenza artificiale conversazionale inizia analizzando l’input dell’utente per individuare le entità chiave menzionate. In questo caso, l’utente ha menzionato un prodotto e diversi fornitori. Il sistema esegue il riconoscimento delle entità per identificare il prodotto specifico e i fornitori corrispondenti alla descrizione dell’utente. Supponiamo che il sistema identifichi il prodotto come “Widget X” e i fornitori come “Fornitore A” e “Fornitore B”.

Generazione del prompt

Il sistema crea quindi un prompt che codifica le entità identificate e il contesto della richiesta dell’utente. Il prompt potrebbe apparire così:

{“entità1”: “Widget X”,”entità2″: [“Fornitore A,” “Fornitore B”],”contesto”: “corrispondenza di prodotto” }

Elaborazione del modello di linguaggio avanzato (LLM)

Il prompt viene quindi passato a un modello di linguaggio avanzato (LLM) addestrato appositamente per la corrispondenza di prodotti nel settore della catena di approvvigionamento al dettaglio. Il LLM elabora il prompt e genera una risposta basata sul contesto e sulle entità fornite. La risposta potrebbe contenere domande relative alle caratteristiche del prodotto, come la sua dimensione, colore e materiale, oltre a richieste di documentazione o immagini per verificare l’autenticità del prodotto.

Post-elaborazione

Dopo aver ricevuto la risposta dal LLM, il sistema di intelligenza artificiale conversazionale esegue un’elaborazione aggiuntiva per affinare l’output. Ciò potrebbe comportare:

  • Analisi delle caratteristiche del prodotto: Confrontare le caratteristiche del prodotto menzionate dall’utente e dai fornitori per individuare eventuali incongruenze o differenze. Ad esempio, se il Fornitore A descrive Widget X come blu e fatto di plastica, ma il Fornitore B lo descrive come rosso e fatto di metallo, il sistema potrebbe segnalarlo come un potenziale problema.
  • Verifica della documentazione: Richiesta e revisione della documentazione fornita dai fornitori per confermare l’origine e l’autenticità del prodotto. Ciò potrebbe includere certificati di autenticità, numeri di serie o altre informazioni identificative.
  • Riconoscimento delle immagini: Utilizzo di algoritmi di visione artificiale per analizzare le immagini del prodotto fornite dai fornitori e confrontarle tra loro e con un database di prodotti conosciuti. Ciò può aiutare a individuare eventuali differenze o somiglianze tra i prodotti.

Presentazione della risposta

Infine, il sistema presenta la risposta all’utente in un formato di linguaggio naturale, tenendo conto delle preferenze dell’utente per il canale di comunicazione e lo stile. Ad esempio, il sistema potrebbe visualizzare una tabella comparando le caratteristiche del prodotto e la documentazione fornita da ciascun fornitore, evidenziando eventuali incongruenze o corrispondenze. In alternativa, il sistema potrebbe fornire una raccomandazione su quale prodotto del fornitore utilizzare in base a fattori come prezzo, qualità e disponibilità.

In questo esempio, il sistema di intelligenza artificiale conversazionale ha utilizzato tecniche di corrispondenza di prodotto per identificare accuratamente il prodotto e i fornitori menzionati dall’utente, per poi generare domande appropriate e richieste di verifica e autenticazione. Sfruttando modelli di linguaggio avanzati e sofisticate tecniche di elaborazione del linguaggio naturale, il sistema è stato in grado di abbinare efficacemente il prodotto e risolvere il problema, migliorando l’accuratezza ed efficienza del processo di catena di approvvigionamento al dettaglio.

Conclusioni

Ora che abbiamo analizzato la sequenza di eventi, dovrebbe essere chiaro come gli input degli utenti vengono convertiti in prompt, elaborati da LLM e presentati agli utenti in un’applicazione conversazionale con LLM. Scomponendo il processo in componenti più piccoli, possiamo apprezzare più a fondo le complessità coinvolte nella creazione di esperienze conversazionali intelligenti che sfruttano i LLM. Che tu sia un architetto di soluzioni che progetta la prossima generazione di app conversazionali su piattaforme LLM o un responsabile aziendale che cerca di sfruttare queste tecnologie, capire i fondamenti è essenziale per sfruttarne tutto il potenziale. Spero che l’articolo ti dia una prospettiva tecnica o aziendale.