Router

O bloco Router usa um modelo para escolher um entre vários caminhos, com base no conteúdo que ele lê. Cada rota que você define adiciona sua própria porta de saída, e o modelo escolhe a rota cuja descrição se encaixa melhor. Use-o quando a decisão precisa entender intenção ou texto não estruturado. Quando a decisão é uma regra simples, use um Condition.

Router vs Condition. O Router lê o contexto com um modelo e escolhe a rota pelo significado, então serve para roteamento por intenção ("envie este ticket para a equipe certa") e texto variável. O Condition avalia expressões booleanas sem modelo, então serve para dados estruturados e regras exatas. O Router consome tokens em cada execução; o Condition é gratuito e mais rápido.

Configuração

Context

O texto que o Router analisa para decidir. Normalmente uma saída anterior, como <start.input> ou <agent.content>.

Routes

Cada rota tem um title e uma description de quando escolhê-la ("Roteie para cá as perguntas sobre preços e compras"). Cada rota adiciona uma porta de saída separada no block; conecte cada uma ao caminho daquela rota. O modelo lê o contexto e seleciona a rota cuja descrição se encaixa melhor.

Model

O modelo que toma a decisão, com padrão claude-sonnet-4-6. Modelos com raciocínio mais forte roteiam com mais precisão; um modelo mais rápido e barato dá conta quando as rotas são bem distintas. Digite ou escolha qualquer modelo compatível, ou um modelo local via Ollama ou VLLM. No Studio hospedado, a chave de API é fornecida para você.

Saídas

SaídaO que é
<router.selectedRoute>O id da rota que o modelo escolheu
<router.reasoning>Uma explicação curta de por que escolheu aquela rota
<router.context>O contexto que foi analisado
<router.model>O modelo que decidiu
<router.tokens>Uso de tokens
<router.cost>Custo estimado da chamada
<router.selectedPath>O block de destino para onde o workflow foi roteado

Quando nenhuma rota se encaixa no contexto, o Router retorna NO_MATCH e segue pelo caminho de erro em vez de adivinhar. Conecte o caminho de erro para ter um fallback.

Exemplos

Triagem de um ticket de suporte

O Router lê <start.input>, escolhe a rota cuja descrição corresponde e executa somente aquele caminho.

Classificar feedback

O Router separa o feedback recebido entre feedback de produto ou relato de bug, cada um tratado pelo seu próprio block Workflow filho.

Qualificar um lead

O Router envia leads enterprise para um agente de vendas e todos os demais para um workflow de onboarding self-service.

Boas práticas

  • Escreva descrições de rota claras e específicas. A descrição é o que o modelo compara, então deixe os critérios explícitos.
  • Mantenha as rotas mutuamente exclusivas. Descrições que se sobrepõem tornam a escolha ambígua e o roteamento menos confiável.
  • Conecte o caminho de erro. Trate o NO_MATCH em vez de deixar a execução falhar em silêncio.
  • Prefira o Condition quando possível. Se a decisão é uma checagem booleana sobre dados estruturados, o block Condition é gratuito, mais rápido e determinístico.

Common Questions

Ele envia o seu contexto e todas as descrições de rota para um modelo, que seleciona a rota cuja descrição corresponde melhor. O modelo é instruído a preferir escolher uma rota a não retornar nada, e só retorna NO_MATCH quando o contexto não tem relação com nenhuma rota.
O modelo retorna NO_MATCH e o Router direciona a execução para o caminho de erro. Conecte ali um tratamento de erro para ter um fallback elegante, em vez de deixar o workflow falhar em silêncio.
Sim. Ele faz uma chamada de modelo a cada decisão de roteamento, o que consome tokens. Monitore com <router.tokens> e <router.cost>. Se o seu roteamento pode ser expresso como condições booleanas, use o block Condition — ele é gratuito e mais rápido.
Sim. A saída reasoning (<router.reasoning>) traz uma explicação breve de por que a rota selecionada foi escolhida, o que ajuda a depurar decisões de roteamento.
Não há limite rígido, e cada rota adiciona sua própria porta de saída. Lembre-se de que mais rotas com descrições sobrepostas são mais difíceis de distinguir para o modelo, então busque rotas claras e mutuamente exclusivas.