Programando con una AI en modo Agente

Ninguna empresa de AI sabe definir bien qué es un agente, pero aun así han logrado darle forma a este engendro mutante que es combinar un LLM, el típico chatbot como ChatGPT y otros, con acciones reales fuera de su burbuja.

De esta forma un agente puede "hacer" cosas y la mejor forma de probarlo es programando con un IDE como Visual Studio Code o Cursor que incorporan AI en modo agente. ¿Qué significa? Que la misma AI es la que escribe el código...

Hice un video la semana pasada para mostrar cómo funciona esto, es largo porque voy paso a paso y explico todo, para los que quieran verlo aquí está:

Igualmente se los explico en texto por si les da vagancia un video tan largo.

Son varias las empresas que ofrecen una forma de conectar un LLM con el editor de código, en mi caso lo usé para programar funciones de este mismo blog con notable éxito, de hecho, en el video les muestro un caso real que ya está en uso.

Hasta hace poco la forma de usar un LLM para programar era darle consultas, pasarle un código o una idea, pedirle en el prompt qué es lo que se quiere y obtener una respuesta sin mucho más contexto. El resultado es bastante bueno, pero no perfecto.

El primer problema es que a la AI le falta más información, cuando no la tiene, la inventa.

Ahora bien ¿Qué haría si tuviera acceso total al código fuente del sistema que estás haciendo? Aquí es donde el modo "agente" entra en acción.

El Agente no sólo escribe sobre tu código, primero se documenta. Ante un prompt, si éste está bien hecho, buscará más información en los archivos que uno le indique y hasta en otros donde note que puede serle útil algo.

Inclusive se le puede pedir que siga el estilo, orden y estructura de tu base de código, al tener acceso, toda esa info entra en la ventana de contexto de la AI y lo utiliza.

Lo genial de esto es que cuanta más información reciba, mejor será la respuesta, más se adaptará a nuestro código y más fácil será la revisión, testing y debug posterior.

Tengan en cuenta que en la actualidad la eficiencia para debuguear es apenas del 56% en el caso de Claude Sonnet 3.7, que es el mejor de todos en ese sentido, así que eso todavía queda en nuestras manos.

El resultado de tanta información de entrada es que el código producido no sólamente suele funcionar en el primer intento, en el caso de que no suceda nos dejó hecho el 90% del trabajo repetitivo y aburrido.

Al usar de contexto nuestro código el resultado se parece en estructura y nos es mucho más fácil de leer ¡Programa casi como nosotros mismos! y ya saben que lo peor es leer el código de otro que tiene un estilo diferente.

La herramienta que estuve usando principalmente es Github Copilot, cuesta USD 10 por mes por el nivel Pro y se integra perfectamente bien en Visual Studio Code porque ambos son de Microsoft. Sí, sé que algunos son reticentes a usar caulquier cosa de MSFT, pero en este caso es una herramienta genial.

Allí podemos usar el chat en modo agente o en modo tradicional, el agente edita tu código, crea archivos, modifica, y te deja elegir si aceptás los cambios o no.

Tiene como opción elegir el backend, sea Claude 3.5 o 3.7 o ChatGPT 4o ó 4.1, la razón de esto es que tienen distintos costos y si bien uno paga una cuota mensual, cada engine tiene una cuota de uso diferente. Personalmente uso Claude Sonnet 3.7, me parece el mejor, pero no descarto a ninguno.

Cursor es... EXACTAMENTE IGUAL, el otro día uno me dejó un comentario del tipo "está mejor integrado", usé ambos y son lo mismo, lo único bueno de Cursor es que te da gratis unas 50 interacciones con el agente, Copilot creo que no, ambos te dan una cantidad de "completions" que es cuando te completa lo que estás escribiendo a modo sugerencia (no lo uso tanto, o no le doy tanta bola).

Lo bueno de Github Copilot es que se integra naturalmente en VS Code que es lo que uso para editar código, en fin, es irrelevante cuál usen, sé que hay más y de otras marcas, lo importante es que empiecen a probar este modo de trabajo.

¿Reemplaza al programador? Ya creo que me cansé de hablar de esto 😁, pero no, no lo reemplaza, si no sabés programar y no vas a entender qué código te generó ¿Cómo vas a saber cómo pedirlo con lujo de detalles? El contexto es todo (vean el ejemplo en mi video), así que sin saber un cuerno lo más probable es que el código generado sea una bosta, así, literal lo digo, no hay forma de que sea bueno el resultado.

Añadido a todo esto es la capacidad de debugging que tiene un programador con experiencia, darte cuenta qué podría fallar, explicárselo, darle logs y referencias, con todo ese material la AI puede generar una solución genial (lo he puesto a prueba), no basta con decirle "no funciona", para que genere una solución hay que poder explicarle qué no funciona, por qué y qué soluciones posibles hay.

Es la misma diferencia entre ser un analista que terminó PM y ser un programador que se puso a hacer trabajo de PM, adivinen cual de los dos da soluciones y cual es simplemente un administrativo cargando datos en trello/jira.

Vos, ¿Estás usando algún agente para desarrollo? Recomienden!

Si te gustó esta nota podés...
Invitame un café en cafecito.app


Otros posts que podrían llegar a gustarte...
Respondemos a

Comentarios

  • Danbat     22/04/2025 - 16:01:09

    Bueno, habrá que pagar...

    Para resolver cosas puntuales me venía arreglando con las versiones gratis, pero tengo que retomar un no tan viejo proyecto que se me había ido de las manos y mi mayor temor es no saber por dónde agarrar.

    • Fabio Baccaglioni     22/04/2025 - 17:41:03

      Probá con Cursor primero, tiene 50 interacciones, son lentas (por ser gratis), pero anda bien.

      Prefiero igualmente pagar esos 10 dólares y no pedirle permiso a nadie

Deje su comentario:

Tranquilo, su email nunca será revelado.
La gente de bien tiene URL, no se olvide del http/https
Comentarios ofensivos o que no hagan al enriquecimiento del post serán borrados/editados por el administrador. Los comentarios son filtrados por ReCaptcha V3.