Ações condicionais

Por padrão, os playbooks usam LLMs para controlar a conversa, realizar ações e responder aos usuários finais. Se você precisar de um controle mais explícito sobre o comportamento do agente, use fluxos ou ações condicionais, descritas neste guia.

As ações condicionais são uma configuração opcional para playbooks. É possível definir acionadores e condições de conversa que invocam ações específicas, como responder com uma mensagem específica, chamar uma ferramenta externa, invocar outro playbook ou realizar qualquer outra ação especificada.

Gatilhos

É possível definir gatilhos que são a primeira etapa para determinar se uma ação condicional é aplicável. A seguir, descrevemos os tipos de acionadores e os acionadores específicos para cada tipo:

  • Etapa do ciclo de vida
    • Início do playbook: acionado na primeira vez que um playbook é iniciado.
    • Antes de o LLM decidir a próxima ação: acionado sempre antes de o LLM prever a próxima ação.
    • Antes de o LLM executar a próxima ação: acionado sempre antes de o LLM executar uma ação.
  • Evento
    • Evento personalizado
    • Nenhuma entrada do usuário

Condições

Depois que um acionador é ativado, a segunda etapa é avaliar as condições fornecidas opcionalmente. As condições são fornecidas usando a mesma sintaxe de condição usada pelas rotas de fluxo.

Se nenhuma condição for fornecida, apenas o acionador será usado para iniciar ações.

Use a seguinte sintaxe para fazer referência a parâmetros e ações anteriores/seguintes:

  • Parâmetros de sessão
    • $session.params.PARAMETER_NAME
  • Parâmetros de entrada do playbook
    • $playbook.input.INPUT_FIELD_NAME
  • Última ação (ação executada anteriormente)
    • $last-action.name
    • $last-action.input.INPUT_FIELD_NAME
    • $last-action.output.OUTPUT_FIELD_NAME
    • $last-action.status
  • Próxima ação (prevista pelo LLM)
    • $next-action.name
    • $next-action.input.INPUT_FIELD_NAME

Você também pode usar funções do sistema.

Exemplos:

  • $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

Ações

Depois que um gatilho e uma avaliação de condição opcional ocorrem, é possível configurar as seguintes ações:

  • Fornecer uma resposta ao usuário final: texto, resposta condicional, payload personalizado e áudio pré-gravado. Ao fornecer texto, você pode inserir [pause], [pauseShort] ou [pause long] para inserir pausas na fala do agente. Exemplo: How can I help you today? [pause long] I can help with....
  • Substituir a próxima ação do LLM: uso de ferramentas, invocação, conclusão, transição e invocação de playbook e fluxo.
  • Mudar as configurações de fala: nome do modelo, sem tempo limite de fala, sensibilidade do ponto final, adaptação.
  • Ativar a interrupção
  • Permitir o cancelamento da reprodução de respostas parciais
  • Enviar SMS do Call Companion
  • Ativar DTMF: consulte DTMF para integrações de telefonia