- A partir de la experiencia de desarrollo de Sketch, un asistente de programación con IA, se destaca la implementación concisa de una estructura de bucle que combina LLM con uso de herramientas
- Con solo 9 líneas de código de bucle, modelos LLM recientes como Claude 3.7 Sonnet resuelven rápidamente problemas reales
- Incluso con una sola herramienta de propósito general como bash, se puede automatizar una parte considerable de las tareas repetitivas y complejas de los desarrolladores
- No solo para resolver problemas: al conectar herramientas adicionales se puede mejorar la calidad y la velocidad de iteración en edición de texto o tareas especializadas
- Cada vez se incorporan más bucles de agentes LLM personalizados a la automatización del trabajo diario de los desarrolladores
Introducción: experiencia de desarrollo y proyecto Sketch
- Philip Zelikow y sus colegas se sorprendieron por la alta eficiencia de una estructura simple de bucle de agente que combina LLM con uso de herramientas mientras desarrollaban Sketch, una herramienta de apoyo a la programación basada en IA
- La estructura central consiste en apenas 9 líneas de código de bucle, que envían al API del LLM el system prompt, el historial de conversación y el mensaje más reciente
- El LLM genera una salida y, si es necesario, devuelve
tool_calls (solicitudes de llamada de herramientas)
Integración de LLM y uso de herramientas
- El "uso de herramientas (tool use)" significa que el LLM devuelve una salida que se ajusta a un esquema predefinido, y que mediante el system prompt y los prompts de descripción de herramientas se le permite acceder a herramientas de propósito general como
bash
- Los LLM más recientes (por ejemplo, Claude 3.7 Sonnet) automatizan rápidamente una amplia variedad de problemas incluso con una sola herramienta de propósito general, y algunos pueden resolverse incluso en una sola ejecución ("one shot")
- Antes había que buscar y pegar comandos complejos de
git y hacer merges manualmente, pero ahora basta con pedírselo a Sketch para resolverlo al instante
- Incluso múltiples errores de type check que aparecen tras cambiar tipos fueron resueltos automáticamente por Sketch por primera vez
- El bucle de agente funciona de manera continua y adaptativa: si una herramienta no está instalada, la instala automáticamente y también se ajusta a diferencias en opciones de comandos
- Durante el uso, a veces el LLM hace sugerencias inesperadas como "omitir las pruebas" cuando fallan los tests, pero en general la calidad de la automatización del trabajo ha mejorado
Diversificación y especialización de herramientas
- Sketch comprobó que usar herramientas adicionales además de
bash (por ejemplo, herramientas de edición de texto) mejora la calidad del trabajo y hace más eficiente el flujo de trabajo de desarrollo
- Resulta más difícil de lo esperado que un LLM modifique texto con precisión usando
sed y similares, y se percibe que las herramientas con enfoque de editor visual son superiores
Perspectivas futuras y cambios en el flujo de trabajo
- Se espera que la estructura de bucle de agente se use cada vez más para tareas repetitivas del día a día de los desarrolladores que antes eran difíciles de manejar con herramientas de automatización de propósito general
- Por ejemplo, en tareas molestas y repetitivas como analizar la correlación entre stack traces y commits de git, el LLM puede hacer rápidamente una primera pasada
- En el futuro, es razonable esperar que más bucles de agentes LLM personalizados y de un solo uso se utilicen desde el directorio
bin/ y otros entornos de los desarrolladores
- Los usuarios solo necesitan preparar el bearer token que deseen para experimentar fácilmente en su propio entorno
Enlaces de referencia
1 comentarios
Opinión de Hacker News
?utm_source=hn&utm_medium=browser