Salta al contenuto

Come impostare i prompt per un sistema di IA conversazionale

Impostare correttamente i prompt per un large language model in un sistema di IA conversazionale può fare davvero la differenza.

A split image showing the interior of a circular parking garage on the left and a blue background with radiating black lines on the right.

Oggi il LLM è diventato il cuore pulsante dei sistemi di IA conversazionale. In particolare, i LLM permettono all’IA conversazionale — nata inizialmente intorno a complicati alberi telefonici — di offrire funzionalità dinamiche e un’esperienza simile a quella umana. Tuttavia, i LLM non sono una soluzione magica: richiedono prompt specifici, perché non sono ottimizzati di default per il linguaggio umano.

Gli sviluppatori spesso commettono un errore quando impostano i prompt dei LLM per l’IA conversazionale: riutilizzano lo stesso approccio usato per formare i dipendenti umani. Anche se può sembrare semplice, questa strategia raramente funziona. I LLM fanno assunzioni diverse rispetto alle persone e il loro tono e ambito predefiniti non sono adatti alle interazioni verbali.

Oggi vediamo cosa sappiamo su come impostare i prompt dei LLM per creare sistemi di IA conversazionale efficaci. Puoi anche leggere una guida più completa e tecnica su questo argomento nella documentazione sviluppatori ElevenLabs.

Il vecchio sistema

Prima dei LLM, i sistemi di IA conversazionale si basavano su lunghi alberi logici che smistavano le richieste in base agli input vocali. Questo approccio era molto usato nei numeri di assistenza clienti (ad esempio, le linee aeree) e nei sistemi di pagamento telefonico (come i servizi delle carte di credito).

Questi sistemi erano lenti, sembravano robotici e accettavano solo input umani molto limitati. Probabilmente ti è capitato di urlare “SÌ” al telefono per rispondere a un prompt. Questa esperienza frustrante portava molti utenti a cercare di “bypassare il sistema” per parlare con un operatore umano.

C’era però un vantaggio in questi alberi telefonici: erano circoscritti. Le possibili strade che poteva prendere una conversazione erano poche e gli sviluppatori potevano facilmente impostare dei limiti per escludere input non consentiti. Questo limite è alla base dei pro e contro dei LLM: ampliano enormemente le possibilità rispetto agli alberi telefonici, ma sono anche imprevedibili, aprendo la porta a rischi come promesse impossibili, risposte aggressive ai clienti o la divulgazione di dati sensibili.

Le lacune di default

Se i LLM vengono addestrati solo su manuali pensati per le persone, otterranno risultati mediocri a causa di alcune lacune fondamentali. Capire queste lacune ti aiuterà a progettare prompt più efficaci:

Tono non adatto

I LLM sono addestrati tramite reinforcement learning, dove il feedback umano li spinge a restituire risposte strutturate. In particolare, le risposte dei LLM tendono a essere verbose e piene di elenchi puntati, blocchi di testo e titoli.

Tuttavia, nel contesto dell’IA conversazionale, i LLM devono imitare la natura concisa e diretta delle interazioni verbali.

Assunzioni errate

I LLM tendono a riempire le informazioni mancanti con conoscenze dedotte invece di fare domande. Questo può portarli a fare assunzioni sbagliate che confondono l’utente o causano errori costosi (ad esempio, promesse di rimborsi non dovuti). Più avanti vedremo come usare una knowledge base e dei limiti per evitare che i LLM facciano promesse errate o eseguano azioni non consentite.

Latenza

I LLM possono richiamare funzioni in modo programmato, raccogliendo e scrivendo dati per conto delle persone. Anche se questo è uno dei loro maggiori vantaggi, significa anche che le vecchie istruzioni di training, che permettevano agli operatori di “prendere tempo” durante le operazioni, non servono più. Tuttavia, anche le chiamate di funzione non sono istantanee, quindi i LLM devono avvisare l’utente ogni volta che è previsto un ritardo (ad esempio, “dammi un attimo per controllare il tuo caso”).

Configurazioni

Personalità

I LLM riescono abbastanza bene a modulare il tono per adattarsi a uno stile. Un LLM può essere configurato per sembrare amichevole, spiritoso, conciso, formale o una combinazione di questi stili. Questo è un aspetto importante quando si imposta un prompt.

Ad esempio, chi sviluppa un’applicazione di IA conversazionale per l’assistenza clienti di una compagnia aerea potrebbe usare un prompt come:

You are a friendly customer service agent who speaks in concise, clear, empathetic sentences.
American
Whispering
Mysterious
Gaming
Lively
Irish
Soothing
Audiobook

Nicole

Formato

I LLM hanno bisogno di istruzioni esplicite su come rispondere. Per evitare che aggiungano testo superfluo, è utile fornire una struttura chiara che racchiuda la risposta da dare all’utente.

Ad esempio, si può chiedere al LLM di:

Respond exclusively with the string that should be read aloud to the user

Questa struttura aiuta il LLM a generare una risposta pensata per essere letta ad alta voce.

Tuttavia, i LLM possono inciampare su dettagli che non sembrano diversi dal testo scritto. Un esempio comune sono i numeri: un LLM potrebbe scrivere un CAP come 10023, che il modello di text-to-speech pronuncerebbe come “diecimila ventitré”. Invece, il LLM dovrebbe essere istruito a leggere i numeri uno per uno, specificando cosa rappresentano, ad esempio: “Il CAP è uno zero zero due tre.”

Temperatura

La temperature è un parametro fondamentale quando si configurano i LLM per l’IA conversazionale. Un valore basso genera risposte più mirate e prevedibili, ideali per conversazioni orientate ai compiti, mentre temperature più alte producono risposte più creative e varie.

Una temperature bassa è ideale per sistemi di IA conversazionale che richiedono risposte coerenti (ad esempio, un servizio clienti per i rimborsi). Al contrario, per sistemi che vogliono offrire un’esperienza più coinvolgente e realistica agli utenti (ad esempio, un coach digitale), è meglio una temperature più alta:

Low Temperature: Thank you for calling ElevenLabs support. How can I help you?
High Temperature: Hey hey! You've landed at ElevenLabs support—ready to tackle your tech troubles! What's on your mind?

Knowledge base

Per i sistemi di IA conversazionale che attingono a grandi quantità di informazioni, è utile sfruttare una knowledge base per ridurre la lunghezza dei prompt. In produzione, questo avviene di solito tramite un database vettoriale (come Pinecone o Elasticsearch) o tramite la knowledge base diretta del provider del LLM.

In generale, le knowledge base sono fondamentali per ancorare le risposte dei LLM a informazioni verificate e approvate. Quando crei un sistema di IA conversazionale, fornisci al LLM una knowledge base completa e aggiornata su prodotti, servizi, policy e procedure. Questo evita che il LLM “inventa” informazioni e garantisce risposte coerenti e affidabili nelle conversazioni.

Processo

Poiché i LLM spesso richiamano funzioni per conto dell’utente, devono anche sapere quali dati sono necessari. Ad esempio, se il compito del LLM è aiutare l’utente a fissare un appuntamento dal parrucchiere, dovrà assicurarsi di avere:

  1. Il nome dell’utente
  2. La data e l’ora desiderate
  3. L’indirizzo dell’utente
  4. La preferenza di servizio dell’utente

Un’implementazione ingenua potrebbe portare il LLM a chiedere tutte queste informazioni in un’unica volta. Questo va bene per iscritto, ma in una conversazione può risultare troppo pesante:

Support Agent: Could you please provide me with your name, your address, when you'd like your service to be, and what service you'd like?
Customer: My name is Mathew and anytime Wednesday afternoon works. What else did you ask for?

Poiché le informazioni vengono raccolte di solito poco alla volta durante la conversazione, è meglio che il LLM le chieda gradualmente. Così l’esperienza risulta molto più naturale:

Support Agent: Could you please provide me with your name?
Customer: My name is Mathew Pregasen.
Support Agent: Thanks Mathew. When would you like to make an appointment?
Customer: Anytime on Wednesday afternoon works fine.
Support Agent: Great. Now can I get your address to find the nearest location?
Customer: 555 West Main Street
Support Agent: Perfect. Now what service are you look for?
Customer: I'm looking for a haircut and if you could also do my beard that would be great!

Limiti e controlli

Permessi

Quando sviluppi sistemi distribuiti, dai per scontato che il server prima o poi si bloccherà. Allo stesso modo, quando crei sistemi di IA, devi aspettarti che il tuo LLM commetta errori. Per ridurre al minimo l’impatto di questi errori, dai al sistema solo i permessi strettamente necessari. Ecco alcuni esempi di come farlo:

  • Imposta correttamente i permessi di lettura/scrittura: se il LLM deve solo leggere dati da una fonte, assicurati che abbia accesso a un endpoint in sola lettura.
  • Limita l’accesso agli endpoint API: se il LLM deve accedere solo a determinati endpoint, assicurati che non possa accedere agli altri.
  • Escalation con supervisione umana: se serve eseguire un’azione ad alto rischio, valuta un workflow con supervisione umana che richieda l’approvazione di un manager prima di procedere.

Validazione e verifica

Quando crei sistemi di agente vocale IA che eseguono azioni tramite strumenti, è utile integrare un processo di validazione e verifica per assicurarti di raccogliere le informazioni corrette dagli utenti. Oggi, quando parli con un operatore umano, questo ripete le informazioni importanti per verificare di averle capite e che il cliente non abbia sbagliato a comunicarle. Anche i LLM possono beneficiare di controlli simili:

Support Agent: Great. Now can I get your address to find the nearest location?
Customer: 555 West Main Street
Support Agent: I got five five five west main street. Did I miss anything?

Per la validazione, tutte le informazioni ricevute dal cliente dovrebbero essere controllate rispetto alla loro struttura tipica. Il numero di telefono ha il numero giusto di cifre? L’età fornita rientra in un intervallo plausibile? L’indirizzo è valido?

Support Agent: What would a good callback number be for you?
Customer: 317-798-97289
Support Agent: I think I might have misheard you. I heard 11 numbers. Would you mind repeating that again?

A seconda del caso d’uso, puoi verificare tutte le informazioni ricevute o solo quelle che non superano la verifica. Inoltre, puoi decidere se verificare ogni dato appena arriva o tutto alla fine.

Un ultimo pensiero

Impostare correttamente i prompt per un sistema di agente IA conversazionale significa trovare il giusto equilibrio tra configurazioni e limiti per creare un’esperienza che ricorda una conversazione con una persona, ma con maggiore efficienza. Non basta riutilizzare vecchi materiali di training: i LLM sono strumenti che richiedono struttura e strategie specifiche per ottenere risultati prevedibili ed efficaci.

Scopri gli articoli del team ElevenLabs

Crea con l'audio IA della massima qualità