Skip to Content

Crea il primo AI Voice Agent

Usa questa pagina come guida completa alla configurazione del primo AI Voice Agent riutilizzabile.

L'agente che crei qui potrà poi essere collegato a routing inbound, campagne outbound, test da Phone e automazioni di workflow.

Questa pagina copre tutto il setup agente: Voice, lingue, speak provider, greeting message, variabili del contact template, LLM, functions, transcription e Agent settings.

1. Crea l'agente e configura Voice

Vai in AI Voice Agent e premi Add Agent. Nella sezione Voice scegli un nome chiaro per l'agente e inserisci l'API key di Deepgram.

Poi scegli la lingua e lo speak provider. Mantieni il primo agente facile da riconoscere e configurato attorno a un obiettivo di workflow chiaro.

  • Nome agente: usa un nome che renda l'agente facile da riconoscere dopo in routing inbound e campagne outbound.
  • API key di Deepgram: richiesta per il setup agente in questo flusso.
  • Lingua: seleziona la lingua che l'agente deve usare durante la chiamata.
  • Speak Provider Type: scegli il provider voce usato per generare la risposta parlata.
Schermata creazione AI Voice Agent con impostazioni Voice, lingua, speak provider, greeting message e variabili contact template.

Lingue disponibili

MultilingualEnglishSpanishDutchFrenchGermanItalianJapanese

Speak provider disponibili

Quando usi un provider diverso da Deepgram, puoi selezionare uno degli agenti disponibili oppure scegliere Custom Agent.

Con Custom Agent inserisci endpoint URL e API key per collegare un agente/provider voce custom.

Setup provider Custom Agent con campi endpoint URL e API key.

Greeting message e contact template

Usa il greeting message per definire la prima frase che l'agente dice quando parte la chiamata.

Usa il contact template quando greeting, prompt o contesto funzioni devono usare valori dinamici del contatto invece di testo fisso.

Il template di default include già i parametri principali che appartengono a un contatto creato in RocketAiFlow.

Puoi modificare il template di default aggiungendo altre chiavi. Le chiavi custom vengono renderizzate da data: ad esempio, una chiave template chiamata birthDate viene renderizzata come {t.data.birthDate}.

Il modo più chiaro per usare i template è separare le sorgenti dati outbound e inbound:

{t.CampaignId}{t.ContactId}{t.id}{t.name}{t.phone}{t.priority}{t.surname}{t.totalGlobal}{t.data.birthDate}
  • Outbound: le variabili del template vengono renderizzate dal contatto caricato nella campagna. Se ti servono valori custom, importa o crea contatti con le key-value attese dentro l'oggetto data.
  • Inbound: le variabili del template vengono renderizzate da Contatti inbound solo se negli agent settings è abilitato il recupero del contatto e la lista inbound contiene un contatto associato al numero che sta chiamando.
Per l'inbound, le variabili vengono renderizzate solo se in Agent settings è abilitato Retrieve contact data for templates e Contatti inbound contiene una lista con un numero che corrisponde al chiamante. Se non esiste un contatto associato all'agente per quel numero, la variabile non viene renderizzata.

Nel campo greeting puoi digitare @ per vedere i suggerimenti delle variabili del template, oppure cliccare una delle variabili che appaiono sotto il greeting.

Una variabile viene sostituita solo quando il valore esiste nel contatto usato per quella chiamata. Se il valore manca, quella variabile non viene renderizzata.

Nella sezione Agent settings vedremo in dettaglio come abilitare il recupero del contatto quando qualcuno chiama in inbound.

Per preparare i contatti sorgente, vedi Importa contatti.

Vedi variabili del contact template per il modello dettagliato e per come creare le variabili del template.

2. Configura LLM

Configura il modello linguistico che controlla ragionamento, istruzioni e comportamento del prompt dell'agente.

Anche qui puoi usare le variabili dinamiche del template. Digita @ nel campo prompt oppure scegli una delle variabili che appaiono sotto il prompt.

Quando selezioni un provider, scegli il relativo Think Provider Model. Se selezioni Custom, configura endpoint URL e header di authorization.

Per scrivere il prompt, parti dalla guida RocketAiFlow Configura il prompt.

OpenAI (open_ai)Anthropic (anthropic)Google (google)Groq (groq)NVIDIA (nvidia)Custom
  • Think Provider Type: scegli il provider LLM.
  • Think Provider Model: scegli il modello relativo al provider selezionato.
  • Temperature: controlla quanto devono essere deterministiche o creative le risposte.
  • Prompt: definisci le istruzioni dell'agente e usa le variabili del template quando serve contesto del contatto.
Schermata configurazione LLM con provider OpenAI, modello, campo prompt e variabili template.

Usa la guida del provider scelto per strutturare ruolo, obiettivi, istruzioni, esempi e regole di function calling.

Con Custom, inserisci endpoint URL e header di authorization, ad esempio Authorization con bearer token.

Usa un provider custom solo quando endpoint del modello, autenticazione e comportamento della risposta sono già chiari.

Configurazione provider LLM custom con endpoint URL e header authorization.

3. Configura le functions

Le functions sono il livello operativo del voice agent. Senza functions l'agente può solo parlare; con le functions può eseguire azioni reali durante la chiamata.

Usale quando l'agente deve trasferire una chiamata, chiudere la conversazione, salvare dati, rischedulare un contatto, qualificare un lead o chiamare un software aziendale tramite API. Con endpoint custom, RocketAiFlow può collegare CRM, calendari, helpdesk, database, sistemi interni o qualunque tool che espone API.

Il flusso è semplice: l'LLM capisce che serve un'azione, seleziona la function corretta, valorizza i parametri richiesti, RocketAiFlow esegue l'endpoint configurato e l'agente usa il risultato per continuare la conversazione.

hangup_calltransferrescheduled_contactsave_lead_qualificationCustom EndpointGETPOSTPUTPATCHDELETE
  • functions pronte: hangup_call, transfer, rescheduled_contact, save_lead_qualification
  • endpoint custom: GET, POST, PUT, PATCH, DELETE
  • parametri generati dall'LLM durante la chiamata e valori contatto renderizzati quando disponibili
  • salvataggio progressivo: save_lead_qualification può essere chiamata più volte durante la stessa chiamata per salvare dati lead parziali e aggiornarli quando emergono nuove informazioni
Function builder con endpoint custom GET dove l'agente raccoglie un valore, lo inserisce nella URL dell'API e usa la risposta per continuare la conversazione.

Collega solo le functions che servono a questo agente. Per la configurazione completa, vedi esempi preconfigurati e functions custom con API.

Riferimenti: function calling di OpenAI e function calling per Deepgram Voice Agent.

4. Configura transcription

Configura la transcription così l'agente può capire il chiamante e il call record può mostrare una conversazione leggibile.

Per il flusso Voice Agent mostrato qui usa deepgram come listen provider. Lo screenshot mostra il setup validato: v1 con nova-3.

Nella documentazione Deepgram, Flux è la famiglia pensata per voice agent real-time, mentre nova-3 è il modello ASR general-purpose ad alte performance per streaming e batch. Se cambi verso Flux o un altro modello, valida sempre con una chiamata controllata prima di usarlo in produzione.

Scegli lingua e modello in base al supporto Deepgram. Se conosci la lingua del chiamante, usa quella specifica; se la chiamata può contenere più lingue, controlla la guida multilingual Deepgram prima di cambiare setup.

deepgramv1nova-3alaw8000
  • Listen Provider Type: deepgram
  • Listen Provider Version: v1 per modelli Nova, v2 per modelli Flux
  • Listen Provider Model: nova-3 per il setup validato mostrato qui
  • Keyterms: aggiungi termini di dominio solo se l'agente capisce male parole importanti
  • Audio Input Encoding: scegli l'encoding usato dal percorso audio reale della telefonia
  • Audio Input Sample Rate: lascia 8000 per la telefonia, perché l'audio telefonico lavora a 8 kHz
Impostazioni transcription con listen provider Deepgram, v1, nova-3, keyterms, encoding alaw e sample rate 8000.

Lo screenshot usa alaw come audio input encoding. Se il tuo trunk o provider usa un encoding telefonico diverso, seleziona il valore corretto.

Lascia Audio Input Sample Rate impostato a 8000 per questo flusso telefonico.

Riferimenti: Configure the Voice Agent e Models and Languages Overview.

5. Agent settings

Usa Agent settings per controllare il comportamento runtime dopo aver configurato l'agente.

Queste impostazioni decidono come l'agente reagisce al silenzio, quanto può durare al massimo una chiamata, se salvare il transcript e se le chiamate inbound possono recuperare i dati del contatto per renderizzare le variabili del template.

  • Post Agent Silence Hangup Seconds: quanto tempo può passare con il customer in silenzio prima dell'hangup automatico.
  • Max Call Duration Minutes: durata massima della chiamata prima dell'hangup automatico.
  • Enable transcription: salva il transcript delle chiamate gestite da questo agente.
  • Retrieve contact data for templates: per le chiamate inbound, cerca il chiamante in Contatti inbound e usa i campi del contatto trovato per renderizzare le variabili del template.
  • Silence Recovery Message: messaggio inviato dopo 5 secondi di silenzio del customer per tenere viva la conversazione.
  • Silence Follow-up Message: secondo messaggio inviato dopo altri 15 secondi di silenzio.
  • Automatic Hangup Message: messaggio finale prima dell'hangup automatico.
Schermata runtime Agent settings con silence hangup seconds, max call duration, transcription, inbound contact data, messaggi di silenzio e automatic hangup message.

Anche i messaggi di recovery, follow-up e hangup possono usare variabili del template. Digita @ oppure clicca le variabili sotto ogni campo.

Abilita Retrieve contact data for templates solo quando l'agente viene usato per chiamate inbound e in Contatti inbound è stata caricata una lista contatti.

Passaggi successivi

Last updated on