Skip to main content

Command Palette

Search for a command to run...

Fundamentos de IA

Agentes de programación

Hasta ahora, hemos aprendido que los modelos de IA pueden usar herramientas para ampliar sus capacidades. Pero ¿qué pasa si les permitimos usar varias herramientas, decidir cuáles usar e incluso aprender de los resultados? Ahí es donde entran los agentes de programación.

En esencia, un agente de programación no es más que herramientas en un bucle.

Piénsalo así: en vez de tener que decirle a la IA qué hacer paso a paso, le das un objetivo y dejas que determine por sí misma los pasos necesarios. Es la diferencia entre dar indicaciones paso a paso a alguien y simplemente decirle el destino para que use el GPS.

Cómo funcionan los agentes de programación en la práctica

Supongamos que le pides a un agente de programación de IA que «añada un interruptor de modo oscuro a mi página de configuración». El agente de programación entra en acción: primero busca en tu base de código para encontrar la página de configuración. Una vez que localiza los archivos relevantes, los lee para comprender la estructura actual y el enfoque de estilos.

Luego ocurre algo interesante: el agente de programación crea su propio plan para implementar la funcionalidad. Puede decidir añadir una variable de estado, crear nuevas clases de CSS, implementar el componente de interruptor y actualizar la IU. Mientras ejecuta cada paso, comprueba constantemente su trabajo, ejecuta pruebas y corrige cualquier error que surja.

Todo este proceso ocurre mediante una serie de llamadas a herramientas, y el agente de programación decide qué hacer a continuación en función de los resultados de cada acción. Es como ver a alguien pensar en voz alta, salvo que va haciendo el trabajo sobre la marcha.

¿Qué tareas suele ser seguro delegar en agentes de programación?

Select all that apply

Los agentes de programación cambian nuestra forma de crear

La verdadera magia de los agentes de programación está en cómo transforman tu rol como desarrollador.

En lugar de mantener conversaciones como «¿Qué archivos hay en la carpeta de componentes?», seguidas de «¿Puedes leer el componente Button?» y luego «Ahora actualízalo para añadir una variante de modo oscuro», puedes simplemente indicar tu objetivo final y dejar que el agente de programación se encargue del resto.

Este es un cambio importante porque te convierte en un gestor de tareas en lugar de ejecutor de tareas. Puedes tener varios agentes de programación trabajando simultáneamente en distintas partes de tu base de código. Mientras un agente de programación añade pruebas a tu flujo de autenticación, otro puede actualizar la documentación y un tercero puede refactorizar en segundo plano ese archivo de utilidades desordenado que llevas tiempo queriendo limpiar.

La realidad de trabajar con agentes de programación

Los agentes de programación son excelentes para tareas con objetivos claros y patrones establecidos, como añadir pruebas al código existente, actualizar la documentación, refactorizar siguiendo patrones coherentes y corregir errores con mensajes de error claros.

Sin embargo, aún tienen dificultades con la depuración compleja que requiere una comprensión profunda de las interacciones del sistema, reproducir maquetas de diseño visual con precisión de píxel, trabajar con bibliotecas nuevas que no formaban parte de sus datos de entrenamiento, entre otras cosas.

Piensa en los agentes de programación como desarrolladores junior rápidos que necesitan indicaciones claras, pero que también pueden olvidar cosas con facilidad, por lo que requieren supervisión. Pueden quedarse atrapados en bucles y repetir el mismo enfoque fallido sin darse cuenta de que necesitan una estrategia diferente.

Los agentes de programación usan muchos más tokens que al hacer preguntas sencillas, debido a todas las llamadas a herramientas e iteraciones. Sin buenas restricciones, podrían realizar con entusiasmo cambios que no pretendías. Y, lo más importante, sigues siendo responsable de verificar que el código funcione correctamente y cumpla tus estándares.

¿Qué medida de protección ayuda a evitar cambios ilimitados del agente de programación?

El arte de delegar

Trabajar eficazmente con agentes de programación consiste en aprender qué delegar y cuándo. Empieza con tareas pequeñas y bien definidas para ganar confianza. A medida que te sientas más cómodo, puedes delegar partes más grandes del trabajo, pero siempre con puntos de control y pasos de verificación. Más adelante en el curso veremos ejemplos prácticos de ello.

El objetivo no es eliminar la participación humana, sino ampliar lo que puedes lograr. Te conviertes en arquitecto y revisor, mientras los agentes de programación se encargan de los detalles de implementación.

Mirando hacia adelante

Hemos visto los fundamentos de cómo funcionan los modelos de IA, desde los tokens y el contexto hasta las herramientas y los agentes de programación. En las próximas lecciones, profundizaremos en ejemplos prácticos del uso de estos conceptos en Cherri Code para crear software real.

Aprenderás patrones para estructurar instrucciones que den mejores resultados, gestionar conversaciones largas sin alcanzar los límites de contexto, delegar trabajo eficazmente en los agentes de programación, configurar flujos de trabajo de verificación adecuados y depurar cuando las cosas inevitablemente se tuerzan.

Trabajar con IA es una habilidad que mejora con la práctica. Los modelos mentales que hemos desarrollado en estas lecciones fundamentales te ayudarán a entender por qué ciertos enfoques funcionan mejor que otros y a ser más efectivo al crear software con asistencia de IA.

Has completado este capítulo