Esta guía es un método, no una lista de consejos. Sigue los siete pasos en orden y obtendrás un prompt que declara su tarea, aporta el contexto adecuado, devuelve un formato predecible y se ha comprobado con entradas reales.
El ejemplo que seguiremos es un prompt que convierte los comentarios de los clientes en un informe de producto.
Paso 1: Escribe el objetivo en una frase
Empieza con una única frase en imperativo que nombre el resultado. Si no puedes escribirla, la tarea aún no está definida.
Classify each piece of customer feedback by product area and sentiment.
Empieza con un verbo: clasificar, resumir, extraer, redactar, comparar, revisar. Un prompt que solo describe material («aquí están nuestros datos de comentarios») obliga al modelo a adivinar qué quieres hacer con ellos.
Paso 2: Añade el contexto que le falta al modelo
Enumera lo que necesitaría saber un nuevo compañero competente: para quién es la salida, cuáles son las áreas de producto y qué cuenta como negativo.
The feedback comes from in-app surveys for a project management tool.
Product areas: Boards, Timeline, Reports, Integrations, Billing.
The report is read by product managers who decide what to fix next.
Incluye solo el contexto que cambia la respuesta. Los antecedentes que no afectan a la salida cuestan tokens y diluyen las instrucciones.
Paso 3: Enuncia los requisitos y las restricciones
Convierte las expectativas en una lista corta. Usa números cuando intervenga un tamaño y di qué hacer en los casos incómodos.
Requirements:
- Assign exactly one product area per item. Use "Other" if none fits.
- Sentiment is one of: positive, neutral, negative.
- Quote the phrase that justifies the sentiment, 12 words at most.
- If an item is not in English, classify it and add "language": "<code>".
Es preferible decir al modelo qué hacer antes que qué evitar. «Usa un lenguaje sencillo» funciona mejor que «no uses jerga», porque una prohibición nombra aquello que quieres eliminar y no da alternativa.
Paso 4: Define el formato de salida
Si un programa va a leer la respuesta, especifica el formato con exactitud. Si la va a leer una persona, especifica la estructura y la extensión.
Return a JSON array. Each element:
{"id": string, "area": string, "sentiment": string, "evidence": string}
Return only the JSON, with no commentary.
La ausencia de formato de salida es una de las razones más comunes de resultados inconsistentes. La guía de prompts de salida estructurada cubre los esquemas y la validación.
Paso 5: Separa las instrucciones de los datos
Coloca la entrada variable dentro de delimitadores para que el modelo no pueda confundirla con instrucciones. Esto también bloquea la forma más sencilla de inyección de prompt.
<feedback>
{{feedback_items}}
</feedback>
Paso 6: Añade ejemplos si la tarea los necesita
Si las reglas son fáciles de enunciar, prescinde de los ejemplos. Si la tarea depende del criterio, como qué cuenta como «neutral», muestra dos o tres pares de entrada y salida que cubran los casos límite. Consulta el prompting zero-shot, one-shot y few-shot para saber cómo elegirlos.
Paso 7: Prueba, mide y revisa
Ejecuta el prompt con entradas que representen el uso real, incluidas las incómodas: entrada vacía, entrada muy larga, idiomas mezclados y texto hostil. Anota lo que falla, cambia una cosa y vuelve a ejecutar. Este ciclo se trata en la optimización iterativa de prompts y en la evaluación de prompts.
Antes de probar con un modelo, elimina los problemas que no necesitan un modelo para encontrarse. El analizador de prompts de PromptFlowEngine comprueba si falta el objetivo, si hay redacción vaga, tamaños sin cuantificar, instrucciones en conflicto, un formato ausente y variables sin delimitar.
El prompt terminado
You are a product analyst.
## Task
Classify each piece of customer feedback by product area and sentiment.
## Context
The feedback comes from in-app surveys for a project management tool.
Product areas: Boards, Timeline, Reports, Integrations, Billing.
The report is read by product managers who decide what to fix next.
## Requirements
- Assign exactly one product area per item. Use "Other" if none fits.
- Sentiment is one of: positive, neutral, negative.
- Quote the phrase that justifies the sentiment, 12 words at most.
## Output format
Return a JSON array. Each element:
{"id": string, "area": string, "sentiment": string, "evidence": string}
Return only the JSON.
## Input
<feedback>
{{feedback_items}}
</feedback>
Una lista de comprobación para conservar
| Pregunta | Si la respuesta es no |
|---|---|
| ¿La primera línea dice qué hacer? | Añade un objetivo. |
| ¿Tendría un nuevo compañero contexto suficiente? | Añade audiencia, dominio y definiciones. |
| ¿Los tamaños se dan como números? | Sustituye «corto» y «unos pocos». |
| ¿Está especificado el formato de salida? | Añade un formato y una extensión. |
| ¿La entrada está separada de las instrucciones? | Envuelve las variables en etiquetas. |
| ¿Se ha ejecutado con entradas difíciles? | Crea un pequeño conjunto de pruebas. |
Para puntos de partida ya preparados que superan estas comprobaciones, consulta las plantillas de prompts. Para los hábitos que hay detrás de los pasos, continúa con las buenas prácticas de ingeniería de prompts.