AXON · Infraestructura cognitiva

US$30–40 mil millones invertidos en IA generativa. El 95% no produjo ningún impacto medible.

No fue por falta de datos. No fue por falta de talento. Y no fue porque los modelos no sirvan.

Hablemos de tu arquitecturaConversación técnica, sin presentación comercial
Fuente

MIT Project NANDA

The GenAI Divide: State of AI in Business 2025

Más de 300 iniciativas analizadas · 52 entrevistas estructuradas · 153 directivos encuestados

Informe completo (PDF)Project NANDA · MIT

  • Observabilidadruntime
  • Guardrailsruntime
  • Ingeniería de promptsruntime
  • Evaluacionesruntime
  • Capas de moderaciónruntime

Todo eso es la misma decisión repetida: poner la confiabilidad en tiempo de ejecución. Y en tiempo de ejecución solo se puede reaccionar.

«Reactivo» tiene un significado exacto

El error ya ocurrió.

Un guardrail que detecta una fuga de datos regulados la detecta después de la fuga. En un banco, en un hospital o en una entidad pública, eso no es un bug que se corrige en el siguiente sprint: es un incidente reportable.

Ningún sistema crítico se construyó nunca así. No comprobamos en producción si un avión tiene bien los tipos de datos. Con IA empresarial decidimos que sí, y llevamos 40 mil millones de dólares comprobando qué pasa.

Las garantías no se prometen en ejecución. Se demuestran en compilación.

Qué es, exactamente

AXON compila hacia LLMs en vez de hacia CPUs.

Un lenguaje compilado, con runtime nativo en Rust, que trata la cognición como ciudadano de primera clase.

No es una librería de Python. No es un wrapper de DSL. Es un compilador formal.

Momento firma

El pipeline, tal como lo publica la documentación

  1. source

    Tu programa Axon

  2. Lexer

    Tokens

  3. Parser

    AST — aquí el bloque know deja de ser texto

  4. Type Checkeraquí viven las garantías

    Taint, certeza acotada, blame. Si algo viola, no se emite nada.

  5. IR Generator

    Representación intermedia

  6. Backend

    Anthropic · OpenAI · Gemini · Ollama

  7. Runtime

    Rust

La misma fuente compila a cuatro backends. Cambias de modelo, no de código.

Las etapas que reconoces de cualquier compilador real, con una diferencia: el backend no emite instrucciones de máquina, emite hacia modelos. Y las garantías no viven en el runtime — viven en el Type Checker, antes de que el programa exista.

Acto 1 — lo que se decide en compilación

El programa que omite la protección no llega a existir.

Dos versiones del mismo flujo. En la primera, un dato externo alcanza la deliberación del agente directamente. En la segunda, atraviesa la protección. El compilador solo acepta una — y no hace falta que te lo contemos: acciónalo.

axon
flow EpistemicGate(
    tool_result: String
) -> LambdaEnvelope {
    step AssignBlame {
        reason { given: tool_result }
    }
}
TaintViolationError — línea 5
Un dato externo nace etiquetado como Untrusted y alcanza la deliberación del agente sin atravesar la primitiva shield. El programa no compila, y por tanto no se puede desplegar.

En cualquier otro stack, esto es una vulnerabilidad que se descubre en producción. Aquí es un error de compilación.

La demostración, corriendo

De un archivo vacío a una relación de cobertura verificada.

clinical.axon16 s · sin audio

El tipo declara que el dato está regulado. La protección declara qué cubre. Y el compilador comprueba que lo uno esté contenido en lo otro — no que exista una protección, sino que cubra este dato.

κ(PatientReading) ⊆ ClinicalGate.compliance

La cobertura de la protección contiene la clasificación del dato. Si no la contiene, no hay binario.

El ejemplo usa HIPAA porque es el vocabulario en que se escribió. En Colombia esa no es la norma que te aplica — es la referencia de rigor con la que está construido el motor, y el mismo mecanismo opera sobre Ley 1581 y habeas data.

Acto 2 — lo que solo se ve en el tiempo

No todo se puede decidir en compilación. Lo que no, tampoco se improvisa.

Que un dato sin sanitizar alcance al agente se decide leyendo el programa: es estático, y por eso no compila. Que alguien esté sondeando tu agente durante horas buscando el prompt que rompa la protección no se puede leer en el programa — solo aparece mirando el stream de eventos en el tiempo.

La diferencia no es que nosotros no tengamos capa temporal. Es que la nuestra está declarada en el lenguaje.

Umbral tipado, alcance, SLA y presupuesto de parches, en sintaxis que el compilador conoce. No es una librería que puedas olvidar importar ni un panel que alguien tiene que mirar.

Capa inmune de KIVI · sensor de campañas de inyecciónaxon
immune KiviPromptCampaignSensor {
    watch:       [ChatAuditStore]
    sensitivity: 0.95
    baseline:    learned
    window:      200
    scope:       tenant
    tau:         900s
    decay:       exponential
}

reflex QuarantineInjectionCampaign {
    trigger:  KiviPromptCampaignSensor
    on_level: speculate
    action:   quarantine
    scope:    tenant
    sla:      50ms
}

heal SynthesizePromptPatch {
    source:      KiviPromptCampaignSensor
    on_level:    speculate
    mode:        human_in_loop
    scope:       tenant
    review_sla:  4h
    max_patches: 3
}
  1. on_level: speculate

    El mismo sistema de tipos que el razonamiento

    El disparador de seguridad no usa un umbral numérico propio: usa el mismo lattice epistémico con el que el agente distingue saber, creer y dudar. Una moneda para todo el lenguaje, no una capa por funcionalidad.

  2. max_patches: 3

    La auto-reparación tiene presupuesto

    heal sintetiza un parche y el lenguaje limita cuántos puede sintetizar. Un parche es un recurso que se consume una vez — lógica lineal, y por eso es un número en la declaración y no una promesa.

  3. mode: human_in_loop

    Y nunca se aplica solo

    Con SLA de revisión declarado. En el módulo de exfiltración el modo es audit_only: ahí el sistema no propone parche alguno, porque una fuga se investiga antes de tocarla.

El compilador decide la forma. Tú sigues respondiendo por el fondo.

Acto 3 — el techo de la certeza

La certeza es una cantidad medida, y el compilador le pone techo.

Para un modelo autoregresivo, la distribución sobre el siguiente token es un softmax con temperatura, y su entropía mide cuánta incertidumbre tiene el modelo en ese punto exacto.

La distribución sobre el siguiente token.
Su entropía. Cero cuando el modelo está seguro; log |V| cuando está perdido.
  • H → 0El modelo tiene alta confianza
  • H → log |V|Incertidumbre máxima
  1. Medida

    La entropía es una cantidad que se calcula, no una opinión sobre el modelo.

  2. Tipada

    El lattice epistémico la convierte en un tipo: know, believe, speculate, doubt.

  3. Acotada

    Y el sistema de tipos le pone techo: la certeza nunca alcanza 1.0.

Niveles de certeza tipada en Axon, del más alto al más bajo
NivelCertezaQué significa
knowc = 1.0Observado directamente
believec ≥ 0.85Derivado de fuentes propias confiables
speculatec ≥ 0.5Fuentes externas o web pública
doubtc < 0.5Evidencia débil o resultado parcial
c ≤ 0.99

Un sistema que no puede expresar certeza absoluta tampoco puede fingirla.

Solo lo que el sistema observó directamente puede llevar certeza total. Todo lo que viene de fuera es especulación — por definición y por compilador.

La alucinación deja de ser un riesgo que se mitiga y pasa a ser un estado que el sistema de tipos no admite.

Cuando el agente falla

La IA no adivina el error. Lo clasifica.

Cualquiera que haya puesto agentes en producción conoce la pregunta: ¿falló mi prompt, o falló su API? Hoy se responde leyendo logs y adivinando. Axon la tipa, por señales estructurales.

  • CT-2

    CALLER

    El agente generó parámetros incorrectos.

  • CT-3

    SERVER

    El servicio externo falló o devolvió un esquema roto.

  • NETWORK

    CONECTIVIDAD

    Ni uno ni otro.

Y la consecuencia importa más que la clasificación: si hay blame, la certeza cae a cero y el dato no entra al agente. El sistema no sigue adelante con información degradada fingiendo que todo está bien.

Implementa blame calculus (Findler-Felleisen), teoría establecida de sistemas de contratos.

El conocimiento no es una instrucción

know {
    flow EpistemicLattice() -> String { ... }
}

Un prompt es texto: el modelo lo puede ignorar, malinterpretar, y un atacante lo puede sobrescribir. Un bloque know se compila al AST — es estructura, no sugerencia. Está ahí antes de que el modelo exista.

Todo el mercado escribe prompts. Nosotros compilamos conocimiento.

No te pedimos que creas que funciona. Construimos dos productos empresariales enteramente en él.

KAS y KIVI están escritos en Axon puro. No son casos de uso: son la prueba de que el lenguaje existe, compila y cumple su promesa.

Cualquiera puede decir que es experto en IA. Muy pocos pueden decir que escribieron el lenguaje. Y de esos, casi ninguno puede añadir que construyó dos productos en él.

Para igualar esa frase hay que construir un lenguaje.

Verificable ahora mismo

La documentación técnica es pública: las 12 primitivas cognitivas fundacionales, el sistema de tipos epistémico, la compilación multi-modelo. No hace falta agendar nada para comprobarlo.

Leer la documentación

Investigación

Axon nace de trabajo formal, con teoremas numerados y demostrados — entre ellos el que fija el techo de certeza del sistema de tipos.

Y publicado, con número de versión

AXON no es un repositorio privado que enseñamos en una llamada. El compilador se publica en crates.io, el registro de paquetes de Rust, y su repositorio es público.

  • axon-lang4.0.0

    más de 140 versiones publicadas desde abril

  • axon-emcp0.52.0

    servidor del protocolo ℰMCP

  • axon-lsp · axon-fmt0.3.3

    language server y formateador

Un formateador y un language server no se escriben para un lenguaje que no existe. Se escriben cuando hay gente escribiendo código en él todos los días.

axon-lang en crates.ioRepositorio en GitHub

Léelo antes de hablar con nosotros.

La documentación completa está abierta: la sintaxis, las primitivas, el sistema de tipos, la arquitectura del runtime.

Si algo de lo que dice esta página no se sostiene, lo vas a encontrar ahí — y preferimos que lo encuentres tú, ahora, y no en la tercera reunión.

Hablemos de tu arquitectura.

Hablemos de tu arquitecturaConversación técnica, sin presentación comercial

Documentación de AXON

12 primitivas, el sistema de tipos completo y la arquitectura del runtime. Es prueba, micro-conversión y filtro a la vez: quien la lee entera y vuelve es un lead que ningún formulario detecta igual de bien.

Abrir la documentación

AXON · Conversación técnica, sin presentación comercial

HablemosHablemos de tu arquitectura