Per impostazione predefinita, i playbook utilizzano gli LLM per controllare la conversazione, prendere provvedimenti e rispondere agli utenti finali. Se hai bisogno di un maggiore controllo sul comportamento dell'agente, puoi utilizzare i flussi o le azioni condizionali, descritti in questa guida.
Le azioni condizionali sono una configurazione facoltativa per i playbook. Puoi impostare attivatori e condizioni di conversazione che richiamano azioni specifiche, come rispondere con un messaggio specifico, chiamare uno strumento esterno, invocare un altro playbook o eseguire qualsiasi altra azione specificata.
Trigger
Puoi definire gli attivatori, che rappresentano il primo passaggio per determinare se è applicabile un'azione condizionale. Di seguito sono descritti i tipi di attivatori e gli attivatori specifici per ogni tipo:
- Fase del ciclo di vita
- Avvio playbook: attivato la prima volta che viene avviato un playbook.
- Prima che l'LLM decida la sua prossima azione: viene attivata ogni volta prima che l'LLM preveda l'azione successiva.
- Prima che l'LLM esegua la sua prossima azione: viene attivato ogni volta prima che l'LLM esegua un'azione.
- Evento
- Evento personalizzato
- Nessun input da parte dell'utente
Condizioni
Una volta attivato un attivatore, il secondo passaggio consiste nel valutare eventuali condizioni fornite facoltativamente. Le condizioni vengono fornite utilizzando la stessa sintassi delle condizioni utilizzata dai percorsi del flusso.
Se non vengono fornite condizioni, solo l'attivatore verrà utilizzato per avviare le azioni.
Puoi utilizzare la seguente sintassi per fare riferimento ai parametri e alle azioni precedenti/successive:
- Parametri sessione
$session.params.PARAMETER_NAME
- Parametri di input del playbook
$playbook.input.INPUT_FIELD_NAME
- Ultima azione (azione eseguita in precedenza)
$last-action.name
$last-action.input.INPUT_FIELD_NAME
$last-action.output.OUTPUT_FIELD_NAME
$last-action.status
- Azione successiva (azione successiva prevista dall'LLM)
$next-action.name
$next-action.input.INPUT_FIELD_NAME
Puoi anche utilizzare le funzioni di sistema.
Esempi:
$session.params.current_user = null
$last-action.name = "query_order"
$last-action.name = "query_order" AND $last-action.status != SUCCESS
$last-action.name = "query_order" AND $last-action.output.orders = null
Azioni
Una volta eseguita la valutazione di un trigger e di una condizione facoltativa, puoi configurare le seguenti azioni:
- Fornisci una risposta all'utente finale: text, risposta condizionale, payload del cliente
- Sostituisci l'azione LLM successiva: utilizzo dello strumento, chiamata del playbook, completamento del playbook, chiamata del flusso, transizione del playbook, transizione del flusso
- Modificare le impostazioni di riconoscimento vocale: nome del modello, timeout per il riconoscimento vocale, sensibilità dell'endpointer, adattamento
- Attivare l'interruzione
- Consentire l'annullamento della riproduzione di una risposta parziale
- Inviare SMS di chiamata con l'assistente
- Attivare DTMF