Este límite de contexto naturalmente limita el tamaño de una base de código que un LLM puede procesar al mismo tiempo, y si alimenta el modelo de IA con muchos archivos de código enormes (que el LLM debe reevaluar cada vez que envía otra respuesta), puede consumir tokens o límites de uso con bastante rapidez.
Trucos del oficio
Para sortear estos límites, los creadores de agentes de codificación utilizan varios trucos. Por ejemplo, los modelos de IA están ajustados para escribir código para subcontratar actividades a otras herramientas de software. Por ejemplo, podrían escribir scripts de Python para extraer datos de imágenes o archivos en lugar de enviar el archivo completo a través de un LLM, lo que ahorra tokens y evita resultados inexactos.
Documentación de Anthropic. notas que Claude Code también utiliza este enfoque para realizar análisis de datos complejos en grandes bases de datos, escribiendo consultas específicas y usando comandos Bash como «head» y «tail» para analizar grandes volúmenes de datos sin tener que cargar los objetos de datos completos en contexto.
(En cierto modo, estos agentes de IA son programas guiados pero semiautónomos que utilizan herramientas que son una extensión importante de un concepto que primera vista a principios de 2023.)
Otro avance importante en el ámbito de los agentes provino de la gestión dinámica del contexto. Los agentes pueden hacer esto de varias maneras que no se revelan completamente en los modelos de codificación propietarios, pero sí conocemos la técnica más importante que utilizan: la compresión de contexto.
La versión de línea de comandos de OpenAI Codex que se ejecuta en una ventana de terminal de macOS.
Crédito: Benj Edwards
Cuando un LLM de codificación se acerca a su límite de contexto, esta técnica comprime el historial del contexto resumiéndolo, perdiendo detalles en el proceso pero acortando el historial a detalles clave. Documentación de Anthropic. describe esta «compactación» consiste en destilar contenidos del contexto de una manera de alta fidelidad, preservando detalles clave como decisiones arquitectónicas y errores no resueltos mientras se descartan resultados de herramientas redundantes.
Esto significa que los agentes de codificación de IA «olvidan» periódicamente una gran parte de lo que están haciendo cada vez que ocurre esta compresión, pero a diferencia de los sistemas más antiguos basados en LLM, no están completamente desorientados sobre lo que ha sucedido y pueden reorientarse rápidamente leyendo el código existente, notas escritas dejadas en archivos, registros de cambios, etc.




