Prompt engineering es la habilidad de diseñar instrucciones efectivas para modelos de lenguaje. No es un truco — es una disciplina con técnicas concretas que marcan la diferencia entre respuestas mediocres y resultados de nivel profesional.
¿Por qué importa el prompt?
Un LLM (Large Language Model) como GPT-4, Claude o Gemini no "sabe" qué quieres — infiere la respuesta más probable dado tu prompt. La calidad de ese prompt determina casi por completo la calidad de la respuesta. Dos usuarios con el mismo modelo pueden obtener resultados completamente diferentes.
Las técnicas fundamentales
1. Zero-shot vs Few-shot
# Zero-shot: instrucción directa sin ejemplos
Clasifica el sentimiento de este texto como POSITIVO, NEGATIVO o NEUTRAL:
"El servicio fue terrible y la comida llegó fría."
# Few-shot: incluir ejemplos de input/output esperado
Clasifica el sentimiento:
Texto: "Me encantó el producto, llegó antes de lo esperado."
Sentimiento: POSITIVO
Texto: "No funciona como dicen, es una estafa."
Sentimiento: NEGATIVO
Texto: "El pedido llegó."
Sentimiento: NEUTRAL
Texto: "El servicio fue terrible y la comida llegó fría."
Sentimiento:
2. Chain of Thought (CoT)
Pedir al modelo que razone paso a paso antes de dar la respuesta final mejora dramáticamente la precisión en problemas complejos:
# Sin CoT (propenso a errores en lógica)
¿Cuántos días hay entre el 15 de marzo y el 10 de mayo?
# Con CoT
Resuelve esto paso a paso:
¿Cuántos días hay entre el 15 de marzo y el 10 de mayo?
Pasos:
1. Del 15 al 31 de marzo: ...
2. Todos los días de abril: ...
3. Del 1 al 10 de mayo: ...
Total: ...
3. Role prompting
Eres un experto en ciberseguridad con 15 años de experiencia auditando
redes corporativas. Explica qué es un ataque de Man-in-the-Middle
como si le hablaras a un administrador de sistemas junior.
4. Estructurar la salida
Analiza este error de PHP y devuelve tu respuesta en este formato exacto:
CAUSA: [una línea con la causa raíz]
SOLUCIÓN: [los pasos para corregirlo]
CÓDIGO CORREGIDO: [el bloque de código arreglado]
PREVENCIÓN: [cómo evitarlo en el futuro]
Error: Fatal error: Call to undefined function mysql_connect()
5. Prompt con contexto delimitado
Dado el siguiente código PHP delimitado por triple backtick, identifica
todos los posibles problemas de seguridad y clasifícalos por severidad
(CRÍTICA, ALTA, MEDIA, BAJA):
```php
$id = $_GET['id'];
$result = mysqli_query($conn, "SELECT * FROM users WHERE id = $id");
```
Considera: SQL injection, XSS, autenticación, validación de entrada.
Anti-patrones comunes
| Anti-patrón | Mejor enfoque |
|---|---|
| "Explícame redes" | Define audiencia, profundidad, formato: "Explica el modelo OSI a un estudiante de primer semestre con ejemplos cotidianos, en 300 palabras" |
| Prompt ambiguo | Ser específico en el resultado esperado: tipo de archivo, longitud, tono, restricciones |
| No iterar | Tratar el prompt como código: probar, medir, refinar, versionar |
Prompt para uso en APIs
import anthropic
client = anthropic.Anthropic(api_key="tu-api-key")
message = client.messages.create(
model="claude-opus-4-8",
max_tokens=1024,
system="Eres un experto en redes de computadoras. Responde siempre en español, de forma concisa y con ejemplos prácticos.",
messages=[
{
"role": "user",
"content": "Explica qué es OSPF y cuándo elegirlo sobre EIGRP."
}
]
)
print(message.content[0].text)
✅ El prompt perfecto tiene: contexto claro · audiencia definida · formato de salida especificado · ejemplos cuando sea posible · restricciones explícitas (longitud, tono, idioma) · persona/rol cuando aplica
"Un buen prompt no es magia — es comunicación precisa. La misma habilidad que te hace buen escritor técnico te hace buen prompt engineer."