Esta página es una traducción de la documentación en inglés. Los comandos, identificadores y ejemplos no cambian. Runtime 7.24.4 · SDK 2.6.7. Original en inglés
Auto-Route, enrutado automático
Estado: Activo Alcance: estado actual Última revisión: 2026-10-10 Responsable: runtime de ax-code
Auto-Route controla dos comportamientos de enrutado independientes en AX Code:
-
Enrutado por palabras clave: activo de forma predeterminada. Cambia de agente cuando un mensaje coincide con las palabras clave o los patrones de un especialista. Se dispara en menos de 1 ms y no exige una llamada al LLM. Se omite cuando el enrutado está desactivado de forma explícita, cuando el usuario nombra un agente de forma explícita o cuando el mensaje es una continuación sintética que conserva el agente actual.
-
Enrutado por complejidad: opcional, activado por el interruptor de auto-route. Una llamada ligera al LLM clasifica cada mensaje como complejidad
low,mediumohigh. Los mensajes de complejidadlowlos atiende de forma automática elsmall_modelconfigurado de forma explícita, lo que reduce la latencia de las preguntas sencillas.
De forma predeterminada, auto-route está desactivado: el enrutado por complejidad está deshabilitado. El enrutado por palabras clave es independiente de este interruptor y permanece activo de forma predeterminada, salvo que la configuración lo desactive o que una elección explícita de agente lo omita.
Inicio rápido
Alterna desde la TUI:
- Escribe
/smart-llmen el prompt, o - Pulsa
Ctrl+Py busca «auto-route», o - Haz clic en el indicador Auto-route activado/desactivado de la barra de estado
La barra de estado muestra el estado actual:
- Auto-route activado (texto morado): el enrutado por complejidad está activo
- Auto-route desactivado (texto blanco): enrutado por complejidad deshabilitado (predeterminado)
El ajuste persiste entre sesiones en ax-code.json.
Cómo funciona
Fuente de verdad
Esta página resume el comportamiento visible para el usuario. Cuando el comportamiento cambie, verifica la documentación frente a:
packages/ax-code/src/agent/router.tspara las reglas de enrutado por palabras clave yclassifyComplexity().packages/ax-code/src/session/prompt.tspara cuándo se omite el enrutado por palabras clave y cuándo se ejecuta la clasificación de complejidad.packages/ax-code/src/server/routes/smart-llm.tspara el comportamiento predeterminado, de entorno, de configuración y de persistencia.packages/ax-code/src/config/schema.tspara los campos de configuración del enrutado y las notas de obsolescencia.packages/ax-code/src/cli/tui/app.tsxpara los nombres de comandos de barra, alias, etiquetas y acciones de la barra de estado.packages/ax-code/test/agent/router.test.tsy las pruebas de sincronización de la TUI para el comportamiento de activación esperado.
Evita describir el enrutado por palabras clave y el enrutado de complejidad del modelo rápido como una sola función. Están separados a propósito.
Enrutado por palabras clave (activo de forma predeterminada, <1 ms)
Los mensajes del usuario se comparan con patrones de palabras clave y de expresiones regulares de cada agente especialista (security, architect, debug, perf, devops, test). Si una coincidencia puntúa una confianza ≥ 0.4, el agente puede cambiar de inmediato: no se hace ninguna llamada al LLM. Este camino es independiente del interruptor de auto-route, pero se omite cuando el enrutado está desactivado, cuando el usuario nombra un agente de forma explícita o cuando el turno actual conserva un agente existente para una continuación sintética.
Enrutado por complejidad (solo auto-route, ~200-500 ms)
Cuando auto-route está activado, cada mensaje se envía a un modelo rápido y barato mediante classifyComplexity(). Esta llamada al LLM devuelve una estimación de complejidad (low / medium / high):
- Los mensajes de complejidad
lowusan de forma automática elsmall_modelconfigurado de forma explícita - Los mensajes
mediumyhighusan el modelo predeterminado, como siempre - Se omite si
small_modelestá ausente o no disponible - Tiempo de espera de 1.5 segundos: vuelve atrás en silencio si el LLM es lento o no está disponible
- Todos los errores se capturan en silencio: nunca bloquean al usuario
El enrutado por complejidad es independiente del enrutado de agentes. No clasifica qué agente especialista usar: eso lo resuelve por completo el enrutado por palabras clave.
En qué ayuda Auto-Route
| Escenario | Sin Auto-Route | Con Auto-Route |
|---|---|---|
| «¿qué hace esta variable?» | Se usa el modelo completo | complejidad low → modelo rápido |
| «enumera todas las exportaciones de este archivo» | Se usa el modelo completo | complejidad low → modelo rápido |
| «busca vulnerabilidades» | Las palabras clave enrutan a security | Igual: el enrutado por palabras clave siempre se dispara |
| «refactoriza el módulo de autenticación en 8 archivos» | Modelo predeterminado | complejidad high → modelo predeterminado |
| «esta función va lenta» | Sin coincidencia de palabras clave ni enrutado | low/medium → nivel de modelo correcto |
El enrutado por palabras clave elige el agente especialista para las palabras clave técnicas. El enrutado por complejidad elige el nivel de modelo adecuado según cuánto razonamiento necesita la respuesta.
Inconvenientes y consideraciones
Latencia
El enrutado por complejidad añade 200-500 ms a los mensajes que disparan la llamada de clasificación. El enrutado por palabras clave (siempre activo) no se ve afectado: responde en <1 ms en cualquier caso.
Exige un modelo pequeño
El enrutado por complejidad exige una configuración explícita de small_model. AX Code no infiere un ayudante a partir de los nombres de modelo ni mueve un anclaje no disponible a otro proveedor. Sin un ayudante utilizable, la clasificación se omite y se conserva el modelo principal elegido. Consulta Recuperación de modelos.
Uso de tokens
Cada llamada de clasificación usa unos 100-200 tokens de entrada y 10-20 tokens de salida: insignificante frente a la llamada principal al LLM que sigue.
No sustituye a la selección explícita
Auto-Route mejora la selección automática del nivel de modelo, pero no puede enrutar a agentes especialistas solo a partir del lenguaje natural. Para tareas críticas en las que importa el especialista correcto, elegir el agente de forma explícita en el selector de agentes o con la mención @agent es más fiable.
Configuración
Alternar desde la TUI
Usa /smart-llm o la paleta de comandos (Ctrl+P → «Activar o desactivar auto-route»). El cambio surte efecto de inmediato y se guarda en el ax-code.json de tu proyecto.
Archivo de configuración
{
"routing": {
"llm": true
}
}
Variable de entorno
AX_CODE_SMART_LLM=true ax-code
La variable de entorno anula el ajuste del archivo de configuración.
Auto-Route y otros ajustes
| Ajuste | Interacción |
|---|---|
| Modo autónomo | Auto-Route funciona de forma independiente. El enrutado de agentes y la clasificación de complejidad ocurren antes de las comprobaciones de permisos. |
| Modo sandbox | Sin interacción. Auto-Route solo afecta a qué agente y nivel de modelo se eligen, no a lo que el agente puede hacer. |
| Selección de modelo | Los mensajes de complejidad low usan el small_model configurado de forma explícita cuando auto-route está activado y no hay un modelo anclado de forma explícita. |
| Modos de ejecución | La colocación híbrida (modes.default: "hybrid") es aparte: elige local frente a nube. Consulta Modos de ejecución. |
Cuándo activar Auto-Route
Actívalo si:
- Quieres que las preguntas sencillas se enruten solas a un modelo más barato y más rápido
- Quieres reducir el coste de tokens en intercambios de baja complejidad
- Trabajas con un proveedor que tiene un modelo pequeño o flash fiable
Déjalo desactivado si:
- Prefieres cero latencia añadida en cada mensaje
- Trabajas sin conexión o con una red poco fiable
- Quieres minimizar el uso de tokens
- Siempre anclas un modelo de forma explícita