UiPath Documentation
maestro
latest
false
Guia do usuário do Maestro
Importante :
A localização de um conteúdo recém-publicado pode levar de 1 a 2 semanas para ficar disponível.

Voice Agent

Um agente de voz que anexa a uma chamada em tempo real e conversa com o chamador.

O que faz​

Anexa um agente a uma chamada telefônica em tempo real e fale com o chamador. O áudio é transmitido diretamente para um modelo de fala em tempo real, que permite que o chamador interrompa o agente no meio da fala. Configure o modelo, persona, solicitação, ferramentas, índices de contextualização e escalonamentos diretamente no nó.

Ambas as direções de chamada usam o mesmo formato de três etapas:

DirectionSequência de nós
RecebidaChamada de entrada → Agente de voz → Encerrar chamada
PerdidaCriar chamada de saída → Agente de voz → Encerrar chamada

O nó é rotulado Agente de voz na categoria Agente da paleta de nós.

Referência de configuração​

CampoDescription
ModeloO modelo de fala em tempo real.
PersonaA voz do modelo selecionado.
Prompt do SistemaA função do agente, suas instruções de status e como ele deve encerrar a conversa.
TemperaturaCriatividade de resposta de 0 a 1.
Máximo de tokensToken máximo de uma conversa.
Contexto da chamadaA chamada à qual este agente é anexado. Associe-o a um callContext upstream — por exemplo, $vars.createOutgoingCall1.output.callContext.

Variáveis de saída​

Opcionalmente, você pode configurar variáveis de saída estruturadas na seção Saídas do painel de propriedades. Elas são úteis para definir variáveis orientadas por objetivos ou de roteamento a serem usadas em nós subsequentes dentro do Fluxo.

Cada variável de saída que você declara se torna um campo no objeto de saída do agente, referenciado $vars.<agentName>.output.<name> como. Dê um nome e um tipo a cada um e, em seguida, instrua o agente no campo de descrição da variável como preenchê-lo. A geração de saída é orientada por uma combinação de solicitação do sistema do agente e as descrições das variáveis de saída.

O agente os preenche quando termina sua sessão de voz.

Os dois usos mais comuns são resumos de chamadas e entregas. Para obter um resumo, declare uma saída como call_summary e use sua descrição para dizer ao agente para resumir a chamada. O agente grava-o quando termina sua sessão e os nós downstream o leem como $vars.voiceAgent1.output.call_summary.

Ferramentas​

Conecte ferramentas ao identificador Ferramentas para fornecer ao agente recursos que ele possa chamar durante o raciocínio. O agente decide durante seu loop se e quando chamar cada ferramenta conectada. Cada ferramenta carrega uma descrição que informa ao agente para que serve a ferramenta, portanto, escreva descrições claras quando uma ferramenta expõe uma.

Ao projetar ferramentas para agentes de voz:

  • O chamador espera em cada chamada de ferramenta, então mantenha o trabalho de cada ferramenta pequeno e rápido.
  • Ferramentas que o agente chama na mesma rodada retornam juntas — a mais lenta define por quanto tempo o chamador ouve o silêncio.
  • Após um tempo limite, o agente pode relatar falha e tentar novamente, portanto, torne as ferramentas idempotentes. Uma chamada de ferramenta que não retorna em 180 segundos expirará.

Disponibilidade de ferramentas​

Categoria da ferramentaDisponibilidade
Processos de RPADisponível
Fluxos de trabalho da APIDisponível
AtividadesDisponível
Outros fluxos (Maestro)Disponível
Process orchestrationDisponível
Funções codificadasDisponível
Agente (invoca um agente independente publicado)Disponível
Conectores do Integration ServiceDisponível
Contextualização de índicesDisponível
Ferramentas integradas (Analisar Arquivos, Deep RAG, Transformação em lote)Não disponível
EscalonamentosNão disponível
Ferramentas de Protocolo de Contexto do Modelo (MCP)Não disponível
A2A (agente para agente)Não disponível
IXP (extração de documento)Não disponível

Ferramentas de voz integradas​

Cada agente de voz tem acesso a duas ferramentas integradas. Eles estão incluídos, mas não são exibidos na tela de fluxo:

  1. Ferramenta Double-Tone Multi-Frequency (DTMF): usada para pressionar dígitos no teclado do telefone, que pode ser usada para navegar em árvores de telefone externas
  2. Encerrar sessão: usada para sair da conversa sem encerrar a chamada. Útil para transferências de agentes de voz.

Proteções de ferramentas​

As proteções no nível da ferramenta estão disponíveis nas ferramentas conectadas ao nó do agente de voz. Você pode filtrar ou bloquear os parâmetros de entrada de uma ferramenta. Configure a proteção na ferramenta anexada ao identificador de Ferramentas do agente de voz. Consulte proteções de ferramentas.

Entregas​

Encerrar uma sessão de voz não é o mesmo que encerrar uma chamada. Quando um agente encerra sua sessão, ele sai da chamada, mas deixa a linha aberta: o agente preenche suas variáveis de saída e o fluxo passa para o próximo nó. Apenas o nó Encerrar chamada e o chamador podem desligar a chamada.

É isso que torna as entregas possíveis. Nós de agente de voz em cadeia e associe todos eles ao mesmo contexto de chamada. Cada agente encerra sua própria sessão quando é concluído, e apenas o último caminho chega a Encerrar chamada, para que o chamador permaneça na linha durante todo o tempo.

Uma entrega tem duas partes:

  • Encaminhe para o agente correto. Dê ao primeiro agente uma variável de saída — por exemplo, handoff — e use sua descrição para dizer ao agente qual valor definir. Ramifique esse valor com um nó Switch para que cada caso leve ao agente que lida com ele.
  • Carregue o contexto. Um agente de recebimento não sabe nada sobre o que já foi mencionado. Faça referência a uma saída de resumo de chamada do primeiro agente em sua solicitação do sistema ($vars.voiceAgent1.output.call_summary), ou adicione um nó Obter contexto de conversa na ramificação e faça referência à transcrição. Consulte Transcrição de chamadas.
Observação:

Não é possível entregar uma chamada a uma pessoa. Não há transferência de chamada em tempo real.

Transcrito da chamada​

Para ler uma transcrição após uma chamada, abra o rastreamento de execução de depuração ou os rastreamentos de trabalho do Orchestrator. Consulte Observabilidade.

Para usar a transcrição dentro do fluxo:

  1. Adicione um nó Obter contexto de conversa .
  2. Passe em $vars.<incomingOrOutgoingCallNodeId>.output.callContext.conversationId. Por exemplo, <incomingOrOutgoingCallNodeId> pode ser createOutgoingCall1.
  3. Faça referência à transcrição como $vars.<getConversationContextNodeId>.output.conversationContext.messages. Por exemplo, getConversationContextNodeId pode ser getConversationContext1.

Por exemplo, você pode passar a transcrição para um agente autônomo para processamento:

Problemas comuns​

O agente conversa normalmente, mas nunca executa uma ferramenta. A pasta do Orchestrator não tem nenhum robô unattended ou padrão com uma máquina sem servidor atribuída, então cada chamada de ferramenta volta como um erro e o agente permanece conversacional. Adicione um robô à pasta e, em seguida, chame novamente. Consulte Requisitos da pasta do Orchestrator.

A chamada termina antes que a conversa seja concluída, mas não há erros. O agente encerrou sua própria sessão no meio da conversa e o Fluxo passou para Encerrar chamada. Esse é provavelmente um problema de prompt em que o agente de voz acha que terminou de ajudar o chamador e decide encerrar a sessão.

O agente interrompe ou produz strings de dígitos de leitura estáticas. Com o Gemini Live à temperatura 0, strings de dígitos longos podem travar ou parecer distorcer. Aumente a temperatura ligeiramente. Se o problema persistir, tente o outro modelo.

O agente não anexa com um erro de esquema de ferramenta. O modelo Gemini aceita um subconjunto de esquema restrito. Mesclar o esquema de entrada da ferramenta ou encapsular a ferramenta em um fluxo de trabalho de API com um esquema de entrada mesclada e usar o fluxo de trabalho como a ferramenta.

A chamada é conectada, ninguém fale e ela será interrompida após cerca de 25 segundos. Uma chamada que nunca anexa um agente é encerrada após cerca de 25 segundos de tempo algum. Associe o contexto da chamada ao callContext do gatilho da chamada de entrada ou do nó Criar chamada de saída .

Esta página foi útil?

Conectar

Precisa de ajuda? Suporte

Quer aprender? Academia UiPath

Tem perguntas? Fórum do UiPath

Fique por dentro das novidades