Aprender a trabajar con modelos de IA
Esta semana pasamos de simplemente "preguntar cosas a una IA" a aprender a diseñar interacciones reproducibles y útiles para construir aplicaciones.
El objetivo no es aprender una colección de trucos para escribir prompts. El objetivo es aprender a proporcionar a un modelo instrucciones, contexto, restricciones, ejemplos y criterios de éxito para obtener resultados consistentes.
🎯 Objetivos de la semana
Al finalizar esta semana el alumno será capaz de:
- Explicar qué es un prompt.
- Distinguir prompt simple y prompt estructurado.
- Separar instrucciones de contexto.
- Definir correctamente el objetivo de una tarea.
- Asignar un rol útil al modelo.
- Utilizar restricciones.
- Solicitar formatos de salida concretos.
- Utilizar ejemplos para orientar al modelo.
- Dividir problemas complejos en pasos.
- Iterar sobre una respuesta.
- Detectar prompts ambiguos.
- Diseñar prompts reutilizables.
- Comprender el concepto de contexto.
- Introducir el concepto de context engineering.
- Crear prompts para tareas de desarrollo.
- Crear prompts para análisis de requisitos.
- Crear prompts para debugging.
- Crear prompts para testing.
- Evaluar la calidad de una respuesta.
- Evitar depender de "prompts mágicos".
🗺️ Mapa de la semana
PROMPTING
│
├── Objetivo
│
├── Rol
│
├── Contexto
│
├── Instrucciones
│
├── Restricciones
│
├── Ejemplos
│
├── Formato de salida
│
└── Criterios de éxito
│
↓
ITERACIÓN
│
↓
EVALUACIÓN
│
↓
CONTEXT ENGINEERING
│
↓
APLICACIONES DE IA
Un buen resultado no depende únicamente de "preguntar bien". Depende de diseñar correctamente la información que el modelo recibe y de definir cómo vamos a evaluar su respuesta.
1. ¿Qué es un prompt?
Un prompt es la entrada que proporcionamos a un modelo para indicarle qué queremos que haga.
Puede ser tan simple como:
Pero para tareas profesionales normalmente necesitaremos mucho más contexto.
Es mejor porque proporciona información relevante para reducir la ambigüedad.
2. Prompting no es magia
Uno de los errores más habituales al comenzar es buscar "el prompt perfecto".
En desarrollo profesional esto no es suficiente.
Prompt mágico
Buscar una frase que siempre produzca la respuesta perfecta.
Diseño de instrucciones
Definir objetivo, contexto, restricciones y resultado esperado.
Evaluación
Medir si la respuesta realmente cumple el objetivo.
3. Anatomía de un prompt profesional
Un patrón útil para comenzar es:
1. ROL 2. OBJETIVO 3. CONTEXTO 4. TAREA 5. RESTRICCIONES 6. FORMATO 7. CRITERIOS DE ÉXITO 8. EJEMPLOS
Ejemplo
Este patrón será reutilizado durante toda la formación.
4. El papel del "rol"
Podemos indicar al modelo qué perspectiva debe adoptar.
Ejemplos:
- Arquitecto de software.
- Product Manager.
- UX Designer.
- Security Engineer.
- QA Engineer.
- Data Analyst.
- Code Reviewer.
- Technical Writer.
Decir "actúa como experto" no convierte mágicamente al modelo en una autoridad real. El rol sirve principalmente para orientar el tipo de respuesta, criterios y perspectiva.
5. El objetivo
Una de las causas principales de respuestas mediocres es que el objetivo está mal definido.
Objetivo débil
Objetivo mejor definido
Antes de pedir implementación, asegúrate de que el modelo entiende qué problema estás intentando resolver.
6. El contexto
El contexto proporciona al modelo la información necesaria para realizar la tarea.
Puede incluir:
- Descripción del proyecto.
- Usuarios.
- Reglas de negocio.
- Código existente.
- Documentación.
- Esquemas de base de datos.
- Errores.
- Ejemplos.
- Restricciones técnicas.
- Decisiones anteriores.
7. Restricciones
Las restricciones reducen el espacio de posibles respuestas.
Ejemplos:
Las restricciones son especialmente importantes en aplicaciones.
8. Controlar el formato de salida
Podemos pedir una salida específica.
Tabla
JSON
Checklist
Markdown
En aplicaciones reales, una salida estructurada puede ser procesada automáticamente por software.
9. Ejemplos: Few-shot prompting
Una técnica muy potente es mostrar al modelo ejemplos de entrada y salida.
Los ejemplos permiten enseñar el patrón esperado sin describir cada regla explícitamente.
10. Zero-shot, One-shot y Few-shot
| Técnica | Descripción | Uso |
|---|---|---|
| Zero-shot | No proporcionamos ejemplos. | Tareas sencillas. |
| One-shot | Proporcionamos un ejemplo. | Cuando queremos mostrar el formato. |
| Few-shot | Proporcionamos varios ejemplos. | Clasificación y patrones complejos. |
11. Separar instrucciones y datos
Cuando proporcionamos grandes cantidades de texto es recomendable separar claramente instrucciones y datos.
Esto mejora la claridad del prompt y reduce confusiones.
12. Dividir problemas complejos
Una tarea demasiado grande puede producir una respuesta mediocre.
Enfoque monolítico
Enfoque incremental
1. Definir problema
↓
2. Identificar usuarios
↓
3. Definir funcionalidades
↓
4. Definir entidades
↓
5. Definir reglas
↓
6. Diseñar arquitectura
↓
7. Diseñar API
↓
8. Diseñar UI
↓
9. Implementar
↓
10. Testear
13. Iteración
No debemos asumir que el primer prompt debe producir el resultado final.
Un flujo profesional puede ser:
PROMPT ↓ RESPUESTA ↓ EVALUACIÓN ↓ CORRECCIÓN ↓ NUEVO PROMPT ↓ RESPUESTA ↓ EVALUACIÓN ↓ RESULTADO
Ejemplo:
14. Hacer explícitos los supuestos
Una de las mejores prácticas consiste en pedir al modelo que indique qué información está asumiendo.
15. Pedir crítica
La IA puede utilizarse no solo para generar sino también para revisar.
Después podemos solicitar:
16. Criterios de éxito
Un prompt profesional debe poder responder:
- ¿Qué quiero conseguir?
- ¿Qué información tiene el modelo?
- ¿Qué información falta?
- ¿Qué restricciones existen?
- ¿Qué formato quiero?
- ¿Cómo sabré si la respuesta es correcta?
Si no sabemos cómo evaluar la respuesta, no tenemos realmente definido el problema.
17. Introducción al Context Engineering
A medida que las aplicaciones de IA crecen, el problema deja de ser únicamente "qué prompt escribo".
El verdadero problema pasa a ser:
Esto puede incluir:
- Documentos.
- Datos de usuario.
- Historial.
- Estado actual de una aplicación.
- Resultados de herramientas.
- Base de conocimiento.
- Reglas empresariales.
- Información recuperada dinámicamente.
Esta idea será fundamental cuando estudiemos:
RAG
Recuperar información relevante antes de generar.
Agentes
Modelos capaces de utilizar herramientas y ejecutar acciones.
Workflows
Orquestación de diferentes pasos y modelos.
18. Prompting para desarrollo de software
Analizar requisitos
Generar código
Debugging
Testing
19. Code Review asistido por IA
La IA puede utilizarse como segundo revisor.
20. Documentación asistida
21. Antipatrones de prompting
| Antipatrón | Problema |
|---|---|
| "Hazlo perfecto" | No define criterios de éxito. |
| "Actúa como experto" | No define el objetivo. |
| "Hazme una app" | Demasiada ambigüedad. |
| Prompt gigantesco sin estructura | Difícil de mantener y depurar. |
| Proporcionar contexto irrelevante | Consume contexto y puede distraer. |
| Aceptar la primera respuesta | No existe evaluación. |
| Introducir información sensible | Riesgo de seguridad y privacidad. |
| Confiar en una sola IA | Puede introducir sesgos o errores sistemáticos. |
22. Crear una plantilla reutilizable
Un profesional no debería escribir desde cero todos sus prompts.
Puede crear plantillas.
Más adelante aprenderemos a convertir estas plantillas en componentes de software.
🌐 Referencias externas
Recursos oficiales para aprender a trabajar con instrucciones, prompts y modelos de IA.
Abrir OpenAI Academy →Guía oficial sobre cómo diseñar instrucciones más efectivas para modelos.
Abrir guía →Documentación de Anthropic sobre técnicas de prompting, criterios y evaluación.
Abrir documentación →Herramienta y documentación para mejorar prompts.
Abrir recurso →Recursos de Google Cloud sobre diseño de prompts y aplicaciones con modelos generativos.
Abrir recurso →Material educativo sobre técnicas para construir instrucciones más eficaces.
Abrir documentación →Curso gratuito para profundizar progresivamente en LLM, Transformers e inferencia.
Abrir curso →Curso introductorio práctico sobre prompting y aplicaciones con modelos de lenguaje.
Abrir curso →Documentación para comprender cómo gestionar el contexto en aplicaciones basadas en modelos.
Abrir documentación →Documentación técnica sobre modelos generativos, prompts y aplicaciones.
Abrir documentación →🧪 Laboratorio 01 — Del prompt malo al prompt profesional
Mejora este prompt
Transforma el prompt utilizando:
- Rol
- Objetivo
- Contexto
- Restricciones
- Formato
- Criterios de éxito
Ver solución orientativa
Prompt para analizar requisitos
Crea un prompt que permita analizar requisitos antes de programar.
Ver respuesta orientativa
Comparar dos estrategias
Pide a la IA que resuelva el mismo problema de dos formas:
- Prompt corto.
- Prompt estructurado.
Compara los resultados.
Qué debes observar
- Ambigüedad.
- Supuestos.
- Completitud.
- Formato.
- Casos límite.
- Relevancia.
🧪 Laboratorio 02 — Desarrollo asistido
Generar una función
Solicita a una IA que implemente una función sencilla.
Pero obliga al modelo a:
- Analizar requisitos.
- Identificar casos límite.
- Proponer tests.
- Implementar.
- Revisar la implementación.
Prompt recomendado
Debugging
Proporciona a una IA un error real de un proyecto y pídele que investigue la causa.
No le pidas directamente "arréglalo".
Primero solicita hipótesis.
¿Por qué?
Porque quieres que la IA te ayude a razonar sobre el problema, no simplemente a generar un parche.
Code Review
Selecciona una función de un proyecto existente y realiza un code review con IA.
Clasifica los problemas encontrados en:
- Crítico
- Alto
- Medio
- Bajo
Resultado esperado
El objetivo no es conseguir una lista enorme de observaciones. El objetivo es distinguir problemas reales de sugerencias puramente estilísticas.
🧪 Laboratorio 03 — Few-shot
Clasificador de incidencias
Construye un prompt capaz de clasificar incidencias.
Categorías:
- Frontend
- Backend
- Base de datos
- Autenticación
- Infraestructura
Proporciona cinco ejemplos antes de solicitar nuevas clasificaciones.
Solución orientativa
🧪 Laboratorio 04 — Context Engineering
Contexto mínimo vs contexto excesivo
Realiza tres experimentos.
| Experimento | Contexto |
|---|---|
| A | Solo pregunta. |
| B | Pregunta + información relevante. |
| C | Pregunta + información relevante + información irrelevante. |
Compara las respuestas.
Conclusión esperada
Más contexto no siempre significa mejor resultado. El contexto debe ser: relevante, suficiente y manejable.
Diseña el contexto de una aplicación
Imagina un asistente de soporte interno.
¿Qué información debería recibir para contestar correctamente?
Respuesta orientativa
- Pregunta del usuario.
- Identidad del usuario.
- Permisos.
- Documentación relevante.
- Estado actual del sistema.
- Historial de conversación cuando sea necesario.
- Fecha de actualización de la información.
🏢 Caso empresarial — Asistente de soporte
Una empresa quiere crear un asistente interno.
El empleado pregunta:
La empresa dispone de:
- Documentación técnica.
- Políticas de seguridad.
- Procedimientos.
- Información de empleados.
- Historial de incidencias.
Preguntas
- ¿Qué contexto debería recibir el modelo?
- ¿Qué información no debería recibir?
- ¿Cómo controlarías permisos?
- ¿Cómo evitarías que inventase procedimientos?
- ¿Cómo verificarías sus respuestas?
- ¿Qué harías si la documentación está desactualizada?
Ver solución orientativa
El modelo debería recibir únicamente la información necesaria para resolver la consulta y que el usuario esté autorizado a consultar. La solución debería utilizar fuentes fiables y mecanismos de recuperación de información. Además debería existir una estrategia para indicar cuándo no existe suficiente información.
Esta arquitectura evolucionará posteriormente hacia RAG y sistemas con herramientas.
🏆 Reto de la semana
Construye una biblioteca de 10 prompts profesionales que puedas reutilizar como desarrollador.
Debes crear uno para cada tarea:
- Análisis de requisitos.
- Diseño de arquitectura.
- Generación de código.
- Debugging.
- Code review.
- Testing.
- Documentación.
- Refactorización.
- Análisis de seguridad.
- Optimización de rendimiento.
Cada prompt debe contener:
- Rol.
- Objetivo.
- Contexto.
- Entrada.
- Restricciones.
- Formato.
- Criterios de éxito.
🧠 Test de evaluación
30 preguntas · mínimo recomendado: 80%.
📖 Respuestas razonadas
Mostrar respuestas
- 1 — B. Un prompt es la entrada o instrucciones proporcionadas al modelo.
- 2 — A. El contexto proporciona información relevante para resolver la tarea.
- 3 — A. Few-shot utiliza varios ejemplos.
- 4 — A. Zero-shot no proporciona ejemplos específicos.
- 5 — A. Las restricciones reducen el espacio de respuestas.
- 6 — A. Una salida estructurada facilita lectura y automatización.
- 7 — B. El contexto relevante es más importante que la longitud.
- 8 — A. Context engineering consiste en diseñar la información disponible.
- 9 — B. El éxito debe poder evaluarse mediante condiciones concretas.
- 10 — A. Dividir problemas facilita control y validación.
- 11 — A. Iterar significa mejorar mediante ciclos sucesivos.
- 12 — A. Explicitar supuestos hace visibles incertidumbres.
- 13 — A. One-shot utiliza un ejemplo.
- 14 — A. La crítica sirve para identificar debilidades.
- 15 — A. El código generado debe revisarse y probarse.
- 16 — A. El debugging necesita contexto relevante.
- 17 — A. Es una respuesta con una estructura previamente definida.
- 18 — A. Una plantilla permite reutilización mediante variables.
- 19 — A. "Perfecto" no define una métrica concreta.
- 20 — B. El contexto debe ser relevante y suficiente.
- 21 — A. Separar instrucciones y datos mejora la claridad.
- 22 — A. El rol orienta la perspectiva de la respuesta.
- 23 — B. Un rol no garantiza conocimiento ni autoridad real.
- 24 — A. Permite determinar si la salida cumple el objetivo.
- 25 — A. Few-shot utiliza ejemplos.
- 26 — B. Es preferible investigar causa e hipótesis antes del parche.
- 27 — A. El exceso de contexto puede introducir ruido.
- 28 — A. Es mejor aclarar que inventar información.
- 29 — A. La evaluación determina si el sistema cumple su propósito.
- 30 — A. Esta evolución lleva desde prompting hacia sistemas de IA completos.
📚 Banco inicial de prompts
Estos prompts pueden guardarse como biblioteca personal.
01 · Analista de requisitos
02 · Arquitecto
03 · Developer
04 · Debugger
05 · QA
06 · Security Review
07 · Code Review
08 · Refactoring
09 · Documentación
10 · Optimización
🚀 Contenido extra
Prompting vs Context Engineering
A medida que avancemos, esta diferencia será cada vez más importante.
| Prompting | Context Engineering |
|---|---|
| Qué instrucciones doy. | Qué información recibe el modelo. |
| Formato. | Documentos. |
| Rol. | Historial. |
| Restricciones. | Datos de usuario. |
| Ejemplos. | Herramientas. |
| Pregunta. | Estado de la aplicación. |
🏗️ Mini-proyecto de la semana
Utiliza el proyecto que definiste en la Semana 01.
Debes crear:
- Un prompt de análisis de requisitos.
- Un prompt de arquitectura.
- Un prompt de generación de código.
- Un prompt de debugging.
- Un prompt de testing.
- Un prompt de code review.
- Un prompt de documentación.
- Un prompt de seguridad.
Después utiliza al menos tres de ellos sobre tu proyecto real.
Entrega
- Los 8 prompts.
- Las respuestas obtenidas.
- Los cambios realizados tras iterar.
- Una explicación de qué funcionó y qué no.
🏅 Evaluación
| Elemento | Peso |
|---|---|
| Test | 30% |
| Laboratorios | 25% |
| Mini-proyecto | 25% |
| Reto | 10% |
| Referencias externas | 10% |
✅ Checklist
- ☐ Entiendo qué es un prompt.
- ☐ Sé estructurar un prompt.
- ☐ Sé utilizar contexto.
- ☐ Sé definir restricciones.
- ☐ Sé solicitar formatos estructurados.
- ☐ Entiendo zero-shot.
- ☐ Entiendo one-shot.
- ☐ Entiendo few-shot.
- ☐ Sé utilizar ejemplos.
- ☐ Sé dividir problemas complejos.
- ☐ Sé iterar.
- ☐ Sé pedir una crítica.
- ☐ Sé pedir que se indiquen supuestos.
- ☐ Sé diseñar prompts para desarrollo.
- ☐ Sé diseñar prompts para debugging.
- ☐ Sé diseñar prompts para testing.
- ☐ Sé diseñar prompts para code review.
- ☐ Entiendo la diferencia entre prompting y context engineering.
- ☐ He creado mi biblioteca de prompts.
- ☐ He completado el mini-proyecto.
- ☐ He realizado el test.
📈 Progreso
Semana 03 de 24 · 12,5%
➡️ Próxima semana
Semana 04 — APIs de IA y primer AI Application
El alumno dejará de utilizar la IA únicamente desde una interfaz de chat y comenzará a integrarla dentro de software.
- Qué es una API de IA.
- Autenticación.
- Requests y responses.
- Modelos.
- Mensajes.
- Tokens.
- Costes.
- Streaming.
- Structured output.
- Errores.
- Rate limits.
- Primer servicio de IA.
- Primera aplicación.
- Observabilidad básica.