Turn-taking entre agentes: quem responde primeiro numa sala
Por equipe PowerVizion · · 5 min de leitura · Engenharia · Disponível
Resumo: Turn-taking é a regra que decide qual agente fala a cada mensagem. Na PowerVizion, sistema operacional cognitivo para empresas, cada mensagem de uma sala com vários agentes recebe exatamente um respondente. A decisão segue três passos: menção explícita pelo nome, classificador de papéis com temperatura zero e fallback para o primeiro agente da sala. O motivo volta junto com a escolha.
O que é turn-taking entre agentes de IA?
Turn-taking, em português "alternância de turnos", é o conjunto de regras que define quem tem a palavra num diálogo. Entre pessoas, a regra é social e quase invisível. Entre agentes de IA, ela precisa ser explícita, senão dois agentes respondem à mesma mensagem e o usuário recebe duas versões que podem se contradizer.
O problema aparece assim que uma sala reúne mais de um agente. Uma pergunta sobre o andamento de uma vaga, por exemplo, pode caber na execução (ELISA), na análise (DAISY) ou numa dúvida geral sobre a plataforma (Victor). Alguém precisa escolher.
Como a PowerVizion decide quem responde
A decisão vive em uma função do servidor chamada decideSpeaker e segue uma ordem fixa de prioridades. A primeira regra que decide encerra o processo. Isso torna o comportamento previsível e fácil de explicar a quem opera a sala.
- Um único agente na sala: ele responde, e o motivo registrado é "único agente na sala".
- Menção pelo nome: se a mensagem cita o agente (por exemplo, "daisy, qual o cenário?"), ele responde.
- Classificador de relevância: uma chamada curta ao modelo, com temperatura zero, escolhe um id de agente comparando a mensagem com o papel declarado de cada um.
- Fallback: se o classificador falhar ou responder algo que não é um agente da sala, o primeiro agente da lista responde.
Por que o classificador é curto e determinístico
O classificador recebe a lista de agentes presentes com uma frase de papel para cada um e devolve apenas um id, em minúsculas, limitado a poucos tokens. Temperatura zero reduz a variação entre chamadas com a mesma entrada. Não é uma leitura sofisticada de intenção, e o código assume isso abertamente: a meta é uma decisão simples e explicável.
Há um detalhe de continuidade. Quando a conversa já tem um agente atual, o classificador é instruído a mantê-lo diante de continuações, respostas curtas ou mensagens ambíguas. Só troca quando o pedido pertence claramente ao papel de outro agente. Isso evita o efeito de ping-pong, em que um "sim, pode seguir" mudaria de interlocutor.
O motivo da escolha sempre acompanha a decisão
A função devolve duas informações: o agente escolhido e o motivo. Os motivos possíveis são "único agente na sala", "mencionado pelo nome", "classificador de relevância (papel do agente)" e dois tipos de fallback, um para classificador que não decidiu e outro para classificador indisponível.
Essa transparência combina com o resto da arquitetura. Na PowerVizion, quem age é sempre rastreável, e a observabilidade de handoffs mostra quem acionou quem. O turn-taking aplica o mesmo princípio a uma etapa anterior: quem foi escolhido para falar e por quê.
Na prática, o motivo ajuda a diagnosticar surpresas. Se o Victor respondeu quando você esperava a ELISA, o motivo mostra se foi menção, classificação ou fallback. Com essa pista, o ajuste costuma ser simples: citar o agente pelo nome ou deixar claro, no pedido, qual é o assunto.
Como a decisão chega ao chat
Existe um endpoint fino, POST /turn-taking/decide, que só expõe a função de decisão. Ele recebe a lista de agentes, a mensagem e, opcionalmente, o agente atual. Valida que os ids pertencem ao conjunto conhecido (Victor, DAISY, ELISA e o Configurador de Produtos) e responde com o agente e o motivo.
O front-end usa esse resultado como agentOverride antes de chamar o endpoint de chat habitual, que já faz streaming. Nenhuma tabela nova nem sala dedicada foi criada para isso: a decisão reaproveita a infraestrutura de chat existente.
Por que o servidor decide, e não os agentes entre si
Uma alternativa seria deixar todos os agentes lerem a mensagem e "disputarem" a resposta. Isso custaria uma chamada de modelo por agente a cada mensagem e abriria espaço para respostas duplicadas. Decidir antes, com uma única chamada curta, mantém o custo baixo e o resultado previsível.
Há também uma razão de governança. Cada agente tem um papel diferente: a DAISY propõe direção e não executa, a ELISA executa depois da aprovação, o Victor orienta e encaminha. Escolher quem responde é, na prática, escolher qual postura a conversa vai assumir, e essa escolha merece uma regra que a equipe consiga auditar.
Limites atuais
A menção por nome usa busca de texto simples. Uma mensagem como "a daisy já respondeu isso ontem" cita o nome sem endereçar o agente, e a regra ainda a trataria como menção. O classificador, por sua vez, é um modelo de linguagem: pode errar quando o pedido mistura papéis.
Também fica de fora, por ora, o convite de outras pessoas para a mesma sala. O código registra que essa etapa exigiria infraestrutura de tempo real que hoje não existe. Separadamente, cada turno tem um orçamento de tempo, 60 segundos por padrão, configurável por variável de ambiente, e é cancelado se o cliente fecha a conexão.
Perguntas frequentes
O que é turn-taking em sistemas com vários agentes de IA?
É a regra que define qual agente responde a cada mensagem, para que dois agentes não respondam ao mesmo tempo. Na PowerVizion, cada mensagem de uma sala recebe exatamente um respondente, com o motivo da escolha registrado.
Posso escolher o agente que vai responder?
Sim. Citar o nome do agente na mensagem tem prioridade sobre o classificador, então "ELISA, agende a próxima etapa" é endereçado à ELISA.
O que acontece se o classificador falhar?
O primeiro agente da sala responde, e o motivo registrado indica que foi um fallback. A conversa não trava por causa da decisão.
Dois agentes podem responder à mesma mensagem?
Não. A função sempre devolve exatamente um agente por mensagem.
#TurnTaking #AgentesDeIA #MultiAgentes #Engenharia #PowerVizion
Victor, o assistente geral que encaminha ao agente certo · DAISY e ELISA: estratégia e execução · Observabilidade de handoffs entre agentes
Quer ver vários agentes trabalhando na mesma sala, com a decisão registrada? Teste a PowerVizion grátis por 7 dias, sem cartão de crédito. contato@powervizion.com