Cómo escribir buenos promts para programación
Para culminar la serie de este mes sobre desarrollo de software asistido por Inteligencia Artificial, le dedicaremos un espacio a cómo escribir buenos promts para programación. Es una parte muy importante ya que si deseamos optener un resultado óptimo debemos describir exactamente lo que queremos.
No me canso de insistir en la responsabilidad que significa construir una aplicaicón. Sobre todo si esa aplicación va a ser utilizada por personas sin conocimiento que le van a confiar datos sensibles.
Permítanme recordar aquí el díalogo entre Alicia y el gato de Cheshire en el libro de Lewis Carrol.
– Minino de Cheshire -empezó Alicia tímidamente, pues no estaba del todo segura de si le gustaría este tratamiento: pero el Gato no hizo más que ensanchar su sonrisa, por lo que Alicia decidió que sí le gustaba-. Minino de Cheshire, ¿podrías decirme, por favor, qué camino debo seguir para salir de aquí?
– Esto depende en gran parte del sitio al que quieras llegar – dijo el Gato.
– No me importa mucho el sitio… – dijo Alicia.
– Entonces tampoco importa mucho el camino que tomes – dijo el Gato.
– … siempre que llegue a alguna parte – añadió Alicia como explicación.
– ¡Oh, siempre llegarás a alguna parte – aseguró el Gato- , si caminas lo suficiente!
Los modelos de lenguaje a gran escala, como los caminos disponibles para Alicia, siempre nos van a llevar a alguna parte con tal de que los usemos lo suficiente. el tema es que si no preguntamos con precisión recurrirá a generar soluciones por inferencia estadística. Recordemos que ningún modelo puede almacenar todos los datos del Universo,por lo que se ve obligado a reconstruir la información que no tiene deduciendo la que podría ser más probable.
Se llama alucinación al error cometido por un modelo de lenguaje de gran alcance que lo lleva a generar información que aunque parezca correcta y encaje con el contexto es falsa o inverificable. Las alucionaciones se producen cuando la salida:
- No está respaldada por los datos suministrados para el entrenamiento
- No coincide con hechos reales
- Son completamente inventadas
Con respecto al tema que nos ocupa, las alucionaciones suelen tener que ver con invocar funciones que no existen o recomendar procedimientos no permitidos por el lenguaje de programación que se está utilizando.
La causas de las alucinaciones suelen ser:
Los modelos no tienen acceso a todos los datos, solo a patrones de datos.
- Imposibilidad de distinguir entre información y ruido.
- Se prioriza la coherencia lingüística por sobre el resultado pedido por el usuario.
Cómo escribir buenos promts para programación
La interacción entre humanos y modelos d elenguaje a gran escala se realiza por medio de promts. Se trata de la instrucción, pregunta o contexto a partir de la cuál se generará la respuesta.
El promt puede ser:
- Una pregunta. Por ejemplo, «¿Cómo se define una variable numérica en Python?»
- Una instrucción. Por ejemplo «Crea una función que genere el número Pi con la cantidad de decimales que coincída con el día del mes»
- Un contexto. Por ejemplo. «Crea un temporizador pomodoro en Python como lo haría un desarrollador novato»
Clasificación de los promts
Promt simple
Consiste en una sola instrucción y delega en el modelo la toma de la mayor parte de las decisiones. Por ejemplo:
«Crea un temporizador pomodoro con nterfaz gráfica en Python»
Deja al modelo decidir que versión de Python y cual biblioteca gráfica elegir, además de los colores y la tipografía. Esto puede producir problemas de compatibilidad con el sistema operativo con el que queríamos usar la aplicación.
Promt con contexto
Agrega información adicional que permite obtener una respuesta más adecuada.
«Crea un temporizador pomodoro con interfaz gráfica en Kubuntu 25.04»
Esta instrucción le indicará que es mejor usar Python 3 y la biblioteca PyQT.
Promt estructurado
Le indica al modelo rol, formato y objetivo
«Eres un desarrollador del proyecto KDE, crea un temporizador pomodoro en Python que se adapte a si se está usando un tema claro u oscuro»
Promts encadenados
Se crean promts secuenciales
- «Crea un temporizador pomodoro en Python 3.»
- «Agrega una interfaz gráfica que se adapte al escritorio KDE.»
- «Agrega soporte para temas oscuros»
Salvo que estés usando un agente o el asistente de un Entorno Integrado de Desarrollo, este método no suele funcionar bien en progrmación ya que el modelo se olvida de las decisiones anteriores.
Los criterios a tener en cuenta para escribir buenos promts son:
Definir claramente el resultado esperado
A los modelos no se les da bien adivinar los requisitos no especificados, las reglas del negocio y las limitaciones del sistema. Por eso hay que aclarar el propósito, la tecnología y la funcinalidad esperada.Reitero el ejemplo de más arriba.;
En lugar de
«Crea un temporizador pomodoro en Python»
Es mejor
«Crea un temporizador pomodor en Python 3 que utilice la biblioteca PyQT y se adapte a los temas claro y oscuro dle escritorio KDE. Se va a usar en Kubuntu 25.04»
Especificar el formato de salida
Hay que dcirle al modelo que es exactamente lo que quieres. Si necesitas que te diga si el código está bien o no debes aclararle que solo debe contestar SI o NO en lugar dae endilgarte una larga explicación de por qué esta mal con ejemplos que no te interesa ver.
Algunos ejemplos de salidas adecuados son:
“Dame solo código”
«Dame el código con comentarios explicando su función»
«Dame solo las funciones con error»
Brindar toda la información relevante sobre el contexto
- Información sobre las tecnologías que queremos utilizar: Lenguaje de programación, bibliotecas
- Entorno: Sidtema operativo, Escritorio, si se va a utilizar con Interfaz gráfica o desde el navegador.
- Restricciones: Cantidad de memoria disponible, espacio en disco, tecnologías no compatibles.
Un buen promt sería en este caso:
«Quiero hacer un carrito de compras en PHP que envíe los datos por correo electronico. Necesito un sistema de captcha para evitar el spam.”
Como advirtió hace tantos años Peter Drucker, las nuevas tecnologías no eliminan empleos, lo reemplazan por otros empleos que requieren aún maś conocimientos. La programaicón asistida por Inteligencia Artificial requerirá un mayor conocimiento de cómo funcionan los programas que se quieren crear y de las tecnologías disponibles.

