Estamos programando la inteligencia artificial corporativa en ensamblador

Wait 5 sec.

En esta serie de artículos sobre lo que creo que debería ser la inteligencia artificial corporativa, hemos ido tocando una idea bastante provocadora: quizás el mayor problema de la inteligencia artificial empresarial tal como la conocemos hasta ahora no es la inteligencia, sino el nivel al que la estamos programando.Hoy, los modelos de frontera, la infraestructura elástica en la nube, las bases de datos vectoriales, las APIs gestionadas y grandes cantidades de computación están al alcance de cualquier empresa seria. Como sustrato, es extraordinariamente potente. Sin embargo, para poner sistemas de inteligencia artificial en producción seguimos necesitando ingenieros que ensamblen a mano cosas tan fundamentales como la persistencia, la memoria, los permisos, el trazado, los reintentos, la orquestación, la ejecución durable, el acceso a herramientas, la gestión del contexto y la evaluación. Como decíamos antes, esto es como internet en 1991, antes de que existiera la web.Hoy damos por descontados los lenguajes de alto nivel. Pero hace décadas, los desarrolladores tenían que pelear directamente con la máquina, en lenguaje máquina o ensamblador, algo que John Backus describió como «un combate cuerpo a cuerpo con la máquina«. En la historia de Fortran que publicó IBM, la empresa explica que había tareas que requerían hasta mil instrucciones máquina y que podían expresarse fácilmente con solo 47 sentencias Fortran, desvinculando además los programas de hardware específico. Fortran no hizo posible la computación, pero sí la hizo económicamente expresable a un nivel superior.El mismo patrón lo vimos con C, con Java y con la web. Dennis Ritchie explica cómo C permitió reescribir el propio Unix en un lenguaje ampliamente portable, facilitando su migración entre máquinas. Después, Java convirtió la JVM más las bibliotecas estándar en una plataforma explícita, iniciando el movimiento «write once, run anywhere«. Luego la web transformó un internet ya funcional pero complejo introduciendo una gramática compartida y sencilla —HTML, HTTP y URLs— sobre el sustrato de red. En todos estos casos, la infraestructura existía de antes, pero la abstracción la hizo programable y manejable a gran escala.La pila agéntica de hoy se parece mucho a otro período pre-lenguaje: usamos Python más frameworks y servicios para programar aplicaciones inteligentes, con cada pieza gestionando características fundamentales por separado. Ninguno de estos productos sobra, todo lo contrario, pero su proliferación también es una señal de que puede faltar todavía una abstracción subyacente. ¿Qué ocurre cuando un ecosistema crece para proveer individualmente propiedades que el sustrato no ofrece de manera natural? Sencillamente, que ese ecosistema empieza a leerse como una factura desglosada de una capa que falta.¿Quién valida el problema del runtime? El mercadoPensemos en LangChain: distingue explícitamente el arnés alrededor de un agente del runtime que hay debajo. Ellos mismos explican que los agentes en producción necesitan ejecución durable, memoria, multi-tenancy, supervisión humana en el bucle, observabilidad, sandboxes, integraciones y planificación. Y aclaran que «para construir un buen agente necesitas un buen arnés; y para desplegarlo, necesitas un buen runtime«. ¿Da eso una pista? Otro ejemplo: Temporal recaudó 300 millones de dólares en febrero a una valoración de 5,000 millones vendiendo la idea de que las aplicaciones de inteligencia artificial de larga duración y con estado necesitan una capa de ejecución durable, lo cual es verdad. Pero en su arquitectura de referencia, las llamadas al LLM y los efectos secundarios externos tienen que envolverse cuidadosamente para que el estado del flujo de trabajo sea reproducible y recuperable. Es sofisticado, sin duda, pero también es la prueba de que seguimos ensamblando manualmente primitivas que un runtime nativo de inteligencia artificial futuro podría razonablemente hacer intrínsecas.LangGraph o la propia Anthropic cuentan la misma historia desde ángulos distintos. La pila actual puede construir casi cualquier cosa, sí, pero a un coste considerable. Y ese coste, como ocurrió hace tiempo con el ensamblador, es una complejidad extraordinaria. Con ensamblador se podía hacer software increíble, claro, pero el coste de ingeniería, la fragilidad y la falta de una abstracción reutilizable nos obligaban a reinventar la rueda. Una y otra vez. Hoy, con Python más bases de datos más colas más orquestación más trazado más almacenes de memoria, podemos producir excelentes sistemas de inteligencia artificial, pero cada equipo tiene que resolver los mismos problemas una y otra vez.Como he dicho antes, las metáforas no industrializan bien. Para que el software sea verdaderamente industrial, la capacidad tiene que seguirse de la formalización. ¿Ejemplos? El modelo relacional de Codd apareció antes que el ecosistema de bases de datos. Los estándares web precedieron a la economía web. Y el ERP creó las abstracciones empresariales compartidas que seguimos usando. La formalización tiene que alcanzar en algún momento al propio runtime. Cosas tan importantes como la memoria, el estado, los permisos, los flujos de trabajo, la ejecución con journal y el aprendizaje tienen que convertirse en primitivas, no en bibliotecas pegadas después con cinta adhesiva.La distinción importante: entre un framework de agentes y un runtime nativo de inteligencia artificialCuando se escribe software convencional, los desarrolladores no tienen que implementar manualmente cosas como la memoria virtual, la planificación de procesos o la semántica del sistema de archivos en cada aplicación. Cuando un sustrato madura, puede proporcionar esas propiedades de forma automática. Pero por alguna razón, cuando luchamos por desarrollar inteligencia artificial empresarial, seguimos tratando cosas tan importantes como la identidad persistente del agente, el acceso gobernado, los historiales estructurados y las señales de aprendizaje como problemas únicos que hay que resolver cada vez, caso por caso. Esto no tiene ningún sentido: todas esas cosas deberían ser propiedades del runtime, no productos externos que hay que ensamblar manualmente cada vez como si fuéramos artesanos.Se puede seguir la pista de manera bastante obvia mirando dónde aparecen las startups: la memoria, la ejecución durable, la observabilidad, el sandboxing, los guardrails, la identidad del agente y la orquestación se están convirtiendo todos en categorías propias, con empresas que brotan como setas y levantan cantidades interesantes de dinero. Eso es bueno para los emprendedores y para el ecosistema, supongo, pero históricamente es una señal temprana que precede a la abstracción. ¿Serán estas capas permanentemente independientes, o estamos viendo cómo una industria vende temporalmente por separado las piezas que un runtime futuro acabará absorbiendo y fusionando? Las cosas cambiarán (tarde o temprano)¿Sabes qué tiene de extraordinario la era actual de la inteligencia artificial corporativa? Que ya hemos construido el equivalente del mainframe, la red y la nube computacional, pero seguimos programando la mayor parte de la capa inteligente puramente a mano, línea a línea, con sangre, sudor y lágrimas. Cuando los desarrolladores del futuro miren los intrincados wrappers de Python, las bases de datos de checkpoints, las colas, los sistemas de trazado, los almacenes de memoria y los grafos de orquestación de hoy, los verán igual que nosotros vemos hoy los primeros listados en ensamblador: asombrosos, laboriosos, impresionantes para su época, y sorprendentes porque toda esa complejidad se consideró en su momento necesaria.Piénsalo con perspectiva histórica: si todo gran sustrato computacional acabó adquiriendo un lenguaje y un runtime que expresaba sus abstracciones nativas, ¿por qué iba a ser diferente la inteligencia artificial? Puedes pensarlo como un experimento mental, o como un deseo descabellado: ¿qué tendría que hacer nativas ese runtime para convertirse en la plataforma de tus sueños, la que haría mucho más fáciles tus implementaciones de inteligencia artificial corporativa? De momento, esa es la pregunta interesante. Pero tarde o temprano, puede que deje de ser solo un experimento mental…(This article was previously published on Fast Company)