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ída | O 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_MATCHem 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.