Obtener AX Code · GratisDocumentación

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:

  1. 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.

  2. Enrutado por complejidad: opcional, activado por el interruptor de auto-route. Una llamada ligera al LLM clasifica cada mensaje como complejidad low, medium o high. Los mensajes de complejidad low los atiende de forma automática el small_model configurado 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-llm en el prompt, o
  • Pulsa Ctrl+P y 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.ts para las reglas de enrutado por palabras clave y classifyComplexity().
  • packages/ax-code/src/session/prompt.ts para 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.ts para el comportamiento predeterminado, de entorno, de configuración y de persistencia.
  • packages/ax-code/src/config/schema.ts para los campos de configuración del enrutado y las notas de obsolescencia.
  • packages/ax-code/src/cli/tui/app.tsx para los nombres de comandos de barra, alias, etiquetas y acciones de la barra de estado.
  • packages/ax-code/test/agent/router.test.ts y 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 low usan de forma automática el small_model configurado de forma explícita
  • Los mensajes medium y high usan el modelo predeterminado, como siempre
  • Se omite si small_model está 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