Dando um Cérebro Semântico ao AgentGateway
O roteamento do meu agente de IA costumava ser uma bagunça.
Eu construí um agente de IA pessoal chamado Pi. Ele roda 24/7 da minha sala de estar. Para economizar dinheiro, usei três modelos diferentes:
- Ollama (Local) para codificação.
- OpenAI para raciocínio profundo.
- Gemini para tarefas rápidas.
Para escolher o modelo certo, eu usava um script Python com listas de palavras-chave. Era uma simples cadeia de if-else.
Ele falhava constantemente. Se um usuário perguntasse sobre padrões de Rust sem usar minhas palavras-chave específicas, o roteador o enviava para o modelo errado. Se um usuário falasse hindi, ele quebrava.
Os resultados eram ruins:
- 18% das requisições iam para o modelo errado.
- Eu desperdiçava dinheiro com APIs caras para tarefas simples.
- Eu tinha que atualizar as palavras-chave manualmente toda semana.
Eu precisava de um sistema que entendesse o significado, não apenas palavras-chave.
Eu mudei para o vLLM Semantic Router com AgentGateway. Isso mudou tudo.
Em vez de um script Python, o Semantic Router funciona como um sidecar do Envoy. Ele usa um modelo de embedding pequeno de 130MB para entender a intenção de cada prompt. Você não escreve palavras-chave. Você simplesmente escreve uma descrição do que cada modelo faz em um arquivo YAML.
Os resultados após duas semanas:
- Requisições roteadas incorretamente caíram de 18% para 3%.
- A latência de roteamento caiu de 45ms para 1ms.
- Os custos mensais de API caíram de $24 para $14.
- A manutenção agora é zero.
O roteador usa embeddings para comparar seu prompt com as descrições dos seus modelos. Se você descrever um modelo como um especialista em codificação, o roteador enviará prompts de codificação para lá automaticamente. Ele funciona até mesmo entre diferentes idiomas.
Se o roteador falhar, o sistema permanece online. Eu configurei uma política de fail-open. Se o roteador travar, as requisições são movidas para o Gemini automaticamente. O agente nunca para de funcionar.
Eu até encontrei e ajudei a corrigir dois bugs no código-fonte relacionados ao suporte ARM64 no Apple Silicon. É assim que o código aberto deve funcionar. Você encontra um problema, contribui com uma correção e toda a comunidade melhora.
Se você constrói agentes de IA, pare de usar correspondência de palavras-chave. Use roteamento semântico para controlar seus custos e melhorar suas respostas.
Comunidade de aprendizado opcional: https://t.me/GyaanSetuAi