- La forma en que los LLM procesan todo el resultado de una llamada a herramientas es lenta, costosa y poco favorable para escalar
- En su lugar, se propone que el LLM orqueste un enfoque donde los datos estructurados basados en esquemas de salida se procesen con código
- Este enfoque es adecuado para procesar grandes volúmenes de datos mediante encadenamiento de funciones con código y gestión de memoria basada en variables
- El procesamiento de datos basado en ejecución de código ofrece gran precisión y escalabilidad porque el LLM no reconstruye directamente los datos
- La construcción de un entorno de ejecución de IA seguro está surgiendo como un nuevo reto, y se necesita un entorno de ejecución sostenible y con capacidad de mantener estado
LLM function calls don't scale; code orchestration is simpler, more effective.
Límites del enfoque tradicional de volver a pasar al LLM los resultados de llamadas a herramientas
- Al usar herramientas MCP (Machine Context Protocol), normalmente se le entrega al LLM el resultado de salida de la herramienta como un mensaje para inducir la siguiente acción
- En casos de uso reales, los servidores MCP de Linear e Intercom devuelven respuestas grandes en formato JSON
- JSON es similar a una API, pero como no hay un esquema de salida definido, el LLM tiene la carga de analizar todo el texto
- Por ejemplo, el resultado de consultar la lista de issues de Linear es muy grande: 70,000 caracteres para 50 elementos, alrededor de 25,000 tokens
- Muchos campos
id no tienen significado, pero consumen tokens, y si el LLM intenta reproducirlos tal cual, aumentan el costo y los errores
Necesidad de separar el procesamiento de datos y la orquestación
- El enfoque actual mezcla el procesamiento de datos y la orquestación en una misma sesión de chat
- Algunas implementaciones crean otros hilos como "agentes" para esto, pero cuando el JSON ya está estructurado, resulta ineficiente
- Una mejor forma es procesar directamente los datos estructurados con código
- Ejemplo: para ordenar issues, en vez de que el LLM genere la salida, el código ejecuta
sort y devuelve solo el arreglo resultante
Procesamiento de datos basado en ejecución de código
- El cómputo de IA mediante ejecución de código ya se utiliza en varios intérpretes de IA
- Este enfoque permite una estructura simple donde el LLM no produce directamente los datos, sino que solo decide cómo usar las herramientas
Conceptos principales
- Uso de variables como memoria: asignar valores = guardar, imprimir = consultar, pasar como argumentos al llamar funciones
- Soporte para encadenamiento de funciones: combinar varias llamadas de función en paralelo o en secuencia, expresando las dependencias mediante el flujo natural del código
- Procesamiento escalable de grandes volúmenes de datos: combinado con NumPy, pandas, etc., permite manejar fácilmente miles o decenas de miles de registros
- También permite llamar a otros LLM: dentro del código escrito por el LLM se puede invocar a otro LLM para procesar datos no estructurados
¿Está MCP preparado?
- La especificación MCP ya define un esquema de entrada, y recientemente también se presentó un PR de esquema de salida
- Si los esquemas de salida se vuelven universales, será posible usarlos en escenarios como:
- panel de estado de issues
- reporte semanal de tickets completados
- monitoreo y notificaciones automáticas de tickets estancados por parte de la IA
Retos del entorno de ejecución de código
- La seguridad es el problema clave: como se ejecuta código generado por IA o usuarios, se necesita un diseño que evite exponer claves API y datos
- En el caso de Lutra, el entorno de ejecución se construye con un enfoque de sandbox, y al modelo solo se le proporciona la documentación para llamar APIs
- Los entornos de ejecución con estado (como Jupyter) son costosos, y para sesiones largas se necesitan características stateless + persistent
- Esto está formando una nueva categoría de runtime de IA, cuyo diseño todavía sigue evolucionando activamente
Conclusión
- El enfoque tradicional de meter en el LLM los resultados de llamadas a herramientas para que los procese tiene límites en costo y precisión
- La orquestación basada en código permite un procesamiento simple, preciso y escalable
- Los entornos de ejecución de código para IA están atrayendo atención como runtimes de nueva generación con seguridad, persistencia y escalabilidad
1 comentarios
Opiniones de Hacker News