Fue un tema muy candente hace unos años. Aquí es donde puede modificar su mensaje, aunque sea un poco; por ejemplo, el formato de su mensaje, cuál es la última oración de su mensaje, etc. Podría lograr resultados muy diferentes con los LLM. Sin embargo, en los años posteriores, los LLM se han vuelto mucho más fuertes e inteligentes, y ahora es mucho menos probable que cambien los resultados solo en función del formato o el orden del texto o cosas similares en el mensaje.
Sin embargo, las indicaciones siguen siendo muy importantes y el conocimiento sobre cómo incitar eficazmente a los LLM sigue siendo increíblemente importante. Sólo se requiere un conjunto diferente de habilidades y una forma diferente de pensar para incitar eficazmente a los agentes hoy en día.
Vale la pena señalar que, probablemente, en el próximo año o dos, la forma de avisar a sus agentes habrá evolucionado aún más, y sólo hay que realizar un seguimiento de todos los cambios que suceden en los modelos para saber cómo avisarles de manera efectiva y obtener los mejores resultados de los modelos.
En este artículo, analizaré cómo insto a los LLM con los que estoy trabajando para que realicen una gran cantidad de trabajo de manera efectiva y, básicamente, analizaré mi flujo de trabajo para realizar las tareas de ingeniería.
¿Por qué optimizar la forma en que solicitas?
En primer lugar, podría pensar que la forma en que escribe las indicaciones ya no importa mucho porque los LLM se han vuelto tan fuertes que pueden entenderlo de todos modos. Hasta cierto punto, estoy de acuerdo con esta forma de pensar. Sin embargo, todavía existen formas buenas y malas de impulsar modelos.
Por ejemplo, un buen mensaje sería:
Sea explícito sobre lo que desea. Incluya cómo probar la implementación. Aclare cualquier ambigüedad.
Mientras que un mensaje incorrecto sería, por ejemplo:
Sea vago. Haga suposiciones que no se ajusten al código base existente.
Además, las indicaciones no son sólo algo singular que se hace para un hilo específico. Las indicaciones también son la ciencia de trabajar de forma iterativa con el modelo para elaborar un plan para implementar la característica, por ejemplo. Por lo tanto, un buen mensaje también podría incluir cosas como pedirle al modelo que descubra cualquier ambigüedad y la comente con usted. O decirle al modelo qué suposiciones hacer.
Cómo solicito Claude Code
Ahora pasaré a cómo solicitar Claude Code específicamente. Le explicaré algunas de las técnicas que utilizo para solicitar mensajes de manera efectiva y aprovechar al máximo Claude Code, aunque estas técnicas son muy generales y también se aplican a todos los demás agentes de codificación, básicamente, como Codex también.
Transcripción
El primer tema que me gustaría cubrir es que uso una herramienta de transcripción para plasmar todos mis pensamientos en los agentes de codificación. Actualmente, estoy usando una herramienta de transcripción llamada FluidVoice, que es un modelo que puedes ejecutar localmente de forma gratuita y que es increíblemente bueno, rápido y preciso para transcribir texto en inglés.
Ahora bien, las herramientas de transcripción son obviamente muy valiosas porque son más rápidas que escribir a mano. Por supuesto, cuánto más rápido depende de qué tan rápido puedas escribir a mano, pero es justo suponer que puedes hablar, en promedio, dos o tres veces más rápido de lo que puedes escribir en tu computadora. Y, por supuesto, obtienes el beneficio de no forzar tus manos y no tener que concentrarte en escribir.
Sin embargo, otro beneficio que he notado es que estoy más dispuesto a incluir todo el contexto que mi agente de codificación necesita para realizar una tarea. Cuando tenía que escribir todo a mano, había momentos en los que no quería escribir todo el contexto, simplemente porque me llevaba mucho tiempo escribirlo. Esto, por supuesto, es muy malo porque si no le das a Claude Code el contexto que necesita para resolver una tarea, es muy difícil que realmente resuelva esa tarea. Sin embargo, ahora que transcribo en lugar de escribir, me resulta mucho más fácil incluir todo el contexto que necesito incluir, y además requiere muy poco esfuerzo.
En general, las herramientas de transcripción son muy buenas porque le ahorran mucho tiempo y le facilitan incluir todo el contexto que realmente necesita para proporcionarle al agente de codificación para que realice la tarea de manera efectiva.
Decirle al modelo cómo probar
Otro punto muy importante es decirle al modelo cómo realizar la prueba. Entonces digamos que le dice al modelo que implemente la característica A. Esto, por supuesto, es genial. Le dices qué incluye la función; debe incluir por qué desea crear esta función. Debe incluir cualquier contexto en torno a la función, cómo se relaciona la función con otras partes de su aplicación, etc.
Sin embargo, también debe decirle al modelo cómo probar la función. Por ejemplo, si implementa una función de chat en su aplicación, debe decirle al modelo que debe abrir el chat en Chrome, escribir una consulta y asegurarse de que la IA responda correctamente y que los tokens se transmitan, por ejemplo.
Básicamente, debe decirle al modelo cómo puede saber que implementó la función correctamente. Hacer esto le ahorrará mucho tiempo porque no tendrá que probar tanto la función usted mismo y el modelo le presentará una función más funcional de inmediato.
Tener una discusión con el modelo.
Un error común cuando se trata de incitar a los agentes de codificación es que simplemente les proporcionas un mensaje singular y lo activas, y luego los dejas trabajar hasta que terminen. Si tiene la configuración rápida perfecta, esto es posible porque los agentes son muy capaces de trabajar durante muchas horas y realizar una gran cantidad de trabajo. Sin embargo, esto no tiene en cuenta cómo crear el mensaje perfecto.
Para un ser humano, es básicamente imposible crear un mensaje perfecto, y la sencilla razón es que usted, como ser humano, no puede tener el contexto completo de todo el código base, y simplemente hay demasiado código, demasiadas cosas en las que pensar y contexto que podría olvidar, lo cual no es posible tener en su memoria a corto plazo. Sin embargo, para los agentes codificadores, en realidad son capaces de almacenar todo esto en su memoria, lo que los convierte en un muy buen interlocutor.
Básicamente, lo que debe hacer cada vez que comienza con un agente de codificación, ya sea para implementar una nueva característica, resolver un error o cualquier otra cosa, es conversar con su agente de codificación. Debe pedirle a su agente de codificación que investigue el tema, verifique los registros, busque en línea si hay algo relevante allí, etc. Y que el agente le haga cualquier pregunta sobre cualquier cosa que sea ambigua.
Cuando los agentes codificadores escriben código por usted, hacen un montón de suposiciones. Muchas más suposiciones de las que imaginas. La razón de esto es que hay demasiadas decisiones dentro de la codificación para que el agente de codificación le pregunte siempre. Cuando los humanos también codifican, también tienen que hacer un montón de suposiciones en las que a veces piensan, y otras veces son simplemente suposiciones inconscientes. Sin embargo, al planificar, usted desea que el modelo comparta al menos cualquier suposición importante que haga.
Un ejemplo de tal suposición podría ser si se debe implementar la infraestructura directamente a través de una CLI, por ejemplo para AWS, o implementarla como CDK, es decir, como código. Este no es un ejemplo perfecto porque en casi todos los casos la respuesta correcta es que debes implementarlo como código y no directamente a través de la CLI. Pero este es un ejemplo de una decisión de la que usted, como ser humano, debe estar consciente para que el agente codificador no haga nada que usted no quiera que haga. Básicamente, tienes esta conversación con tu agente de codificación para alinear la implementación en tu cabeza con lo que el agente de codificación realmente implementará.
Tuvo una conversación con su agente de codificación para asegurarse de estar alineado sobre qué tarea implementar y cómo implementarla.
informes HTML
Una última cosa que quiero cubrir en este artículo son los informes HTML. Entonces, cuando los agentes de codificación funcionan, hay, por supuesto, mucha información. El agente escribirá una gran cantidad de resultados en su terminal, donde la mayor parte no es relevante para usted, por ejemplo, llamadas a herramientas o simplemente tokens de pensamiento, etc. Sin embargo, a veces es necesario revisar lo que hace el agente codificador. Este podría ser, por ejemplo, el plan que hizo en la última tarea en la que desea conversar con un modelo sobre cómo implementar una característica. En estos casos, casi siempre debes hacer que el modelo cree informes HTML para visualizar lo que estás discutiendo, lo que hace que sea mucho más fácil para ti, como humano, dar tu opinión al modelo.
Permítanme ser muy específico aquí. Digamos que estoy implementando la característica A, pero hay un montón de decisiones que el modelo quiere discutir conmigo antes de comenzar la implementación. Si es así, lo que hago es hacer que el modelo genere un informe HTML con cada decisión enumerada, incluido un contexto como:
Cuáles son las diferentes opciones para esa decisión De qué se trata la decisión Pros y contras de la decisión Un botón simple para que decida qué opción elegir para la decisión
Esto hace que sea increíblemente sencillo para mí entender cuáles son las diferentes opciones para cada decisión y obtener una visión general de las decisiones generales que se deben tomar. Y es mucho más fácil que leerlo y entenderlo a través del terminal, por ejemplo. Otro beneficio de los informes HTML es que puede crear elementos visuales, por ejemplo, diagramas, diagramas de flujo, SVG, etc.
Otra nota aquí es que también hago informes HTML para realizar pruebas. Entonces, digamos que el modelo implementó una característica que solicité o solucioné el error. Le hago crear un informe HTML que contiene lo siguiente:
Cada parte de la implementación que necesito probar tiene enlaces directos al producto exactamente donde probarlo. Por ejemplo, si estoy probando un chat, me proporciona un enlace directo a ese chat, por lo que no tengo que navegar por el producto yo mismo. Dos botones, uno para aprobar la función y otro para decir que necesita más trabajo. Un campo de entrada donde puedo dar mi opinión sobre cómo solucionarlo y qué está mal.
Luego también tengo un botón de copiar en el informe HTML para poder copiar el resultado del informe, es decir, lo que respondí para las diferentes partes del informe, y puedo simplemente pegarlo en Claude Code nuevamente, hacer que continúe funcionando y luego presentarme un nuevo informe HTML para poder continuar así hasta que todo esté probado y aprobado. Si es así, por supuesto puedo fusionar todo y ponerlo en producción.
Conclusión
En este artículo, analicé cómo activar Claude Code y otros agentes de codificación de manera efectiva. La ciencia de la activación de agentes codificadores ha cambiado mucho a lo largo de los años; Al principio, la forma en que redactaste tus indicaciones o el orden en el que tenías el texto en ellas importaba mucho. Hoy en día, esas cosas realmente no importan en absoluto, pero las indicaciones siguen siendo una habilidad que debes dominar. Por ejemplo, debe decirles a los agentes cómo probar sus implementaciones. Debe discutir con los agentes cómo realizar una implementación, resolver cualquier ambigüedad, etc. Creo que la forma en que solicita a los agentes cambiará nuevamente durante el próximo año o dos, y me mantendré actualizado sobre la forma más efectiva de trabajar con los agentes y publicaré otro artículo una vez que crea que la forma en que interactúo con mis agentes ha cambiado lo suficiente desde este artículo.
👋 Ponte en contacto
👉 Mi libro electrónico y seminario web gratuitos:
🚀 10 veces su ingeniería con LLM (curso gratuito por correo electrónico de 3 días)
📚 Obtenga mi libro electrónico gratuito sobre Modelos de lenguaje de visión
💻 Mi seminario web sobre modelos de lenguaje de visión
👉 Encuéntrame en las redes sociales:
💌 Subpila
🐦X/Twitter