Capítulo 3: Formato y Estructura
🎯 Objetivos de aprendizaje
Después de completar este capítulo, usted podrá:
- Utilizar el formato markdown de manera efectiva en prompts
- Crear plantillas de salida para obtener resultados consistentes
- Especificar estructuras complejas (tablas, JSON, código)
- Construir marcos de prompts reutilizables
📚 Introducción
El formato de su salida es tan importante como su contenido. Una respuesta bien estructurada es más fácil de leer, utilizar y procesar. Este capítulo le enseña cómo obtener exactamente el formato que necesita.
Markdown en Prompts
¿Por qué usar Markdown?
Los modelos de IA comprenden y generan markdown de manera eficiente. Usarlo ayuda a:
- Organizar prompts complejos
- Solicitar formatos específicos
- Obtener salidas consistentes y legibles
Elementos comunes de Markdown
# Encabezados para secciones
## Subencabezados
### Sub-subencabezados
**Negrita** para énfasis
*Itálica* para términos
`code` para código en línea
- Viñetas
- Para listas
1. Listas numeradas
2. Para secuencias
> Citas para frases
| Tablas | Para | Datos |
|--------|------|-------|
```code blocks```
Solicitar salida en Markdown
Escriba un resumen de aprendizaje automático. Formatee usando:
- Encabezados H2 para las secciones principales
- Viñetas para los conceptos clave
- Negrita para los términos importantes
- Una tabla comparativa para los tipos de ML
Plantillas de salida
¿Qué es una plantilla de salida?
Una estructura predefinida que la IA completa:
Genere una reseña de producto usando esta plantilla:
---
Nombre del producto: [nombre]
Calificación: [X/5 estrellas]
Precio pagado: [monto]
Ventajas:
• [ventaja 1]
• [ventaja 2]
• [ventaja 3]
Desventajas:
• [desventaja 1]
• [desventaja 2]
Resumen: [un párrafo]
Recomendación: [Comprar/Considerar/Evitar]
---
Beneficios de las plantillas
| Beneficio | Descripción |
|---|---|
| Consistencia | Misma estructura cada vez |
| Integridad | Garantiza toda la información requerida |
| Analizabilidad | Fácil de extraer datos |
| Profesionalismo | Salida limpia y organizada |
Ejemplos de plantillas
Plantilla de notas de reunión:
Formatee la discusión como notas de reunión:
## Reunión: [Título]
**Fecha:** [Fecha]
**Asistentes:** [Nombres]
### Decisiones clave
1. [Decisión 1]
2. [Decisión 2]
### Tareas pendientes
| Tarea | Responsable | Fecha límite |
|--------|-------------|-------------|
| [Tarea] | [Persona] | [Fecha] |
### Próximos pasos
- [Próximo paso 1]
- [Próximo paso 2]
Plantilla de informe de error:
Documente este error usando la plantilla:
**ID de error:** AUTO-[número]
**Severidad:** [Crítica/Alta/Media/Baja]
**Estado:** Abierto
**Descripción:**
[Resumen en una frase]
**Pasos para reproducir:**
1. [Paso 1]
2. [Paso 2]
3. [Paso 3]
**Comportamiento esperado:**
[Qué debería ocurrir]
**Comportamiento real:**
[Qué ocurre en su lugar]
**Entorno:**
- SO: [Sistema Operativo]
- Navegador: [Navegador + versión]
- Versión de la app: [Versión]
Formatos de datos estructurados
Salida JSON
Extraiga la información de contacto y devuélvala como JSON:
{
"name": "",
"email": "",
"phone": "",
"company": "",
"role": ""
}
Texto: "Hola, soy Sarah Chen de TechCorp. Soy la VP de
Ingeniería. Puede contactarme en sarah.chen@techcorp.com o
llamar al 555-0123."
Salida:
{
"name": "Sarah Chen",
"email": "sarah.chen@techcorp.com",
"phone": "555-0123",
"company": "TechCorp",
"role": "VP of Engineering"
}
Salida XML/HTML
Convierta estos datos a formato HTML:
Producto: Mouse inalámbrico
Precio: $29.99
Características: Ergonómico, Clics silenciosos, Batería de 12 meses
Salida como una tarjeta de producto HTML con etiquetas semánticas apropiadas.
Salida CSV
Convierta estos registros de ventas a formato CSV con encabezados:
"John vendió 15 unidades del Producto A por $500 el lunes.
Mary vendió 20 unidades del Producto B por $800 el martes.
Bob vendió 10 unidades del Producto A por $350 el miércoles."
CSV:
Estructuras de tablas
Solicitud de tabla simple
Compare Python, JavaScript y Java en una tabla con
columnas: Lenguaje, Mejor para, Curva de aprendizaje, Mercado laboral.
Solicitud de tabla compleja
Cree una tabla de matriz de decisión para elegir una base de datos:
Filas: PostgreSQL, MongoDB, Redis, MySQL
Columnas:
- Caso de uso (mejor ajuste)
- Escalabilidad (calificación 1-5)
- Curva de aprendizaje (Fácil/Media/Difícil)
- Costo (disponibilidad de nivel gratuito)
- Cuándo elegir
Agregue una fila de encabezado y notas breves debajo de la tabla.
Especificaciones de salida de código
Solicitud básica de código
Escriba una función en Python para calcular el factorial.
Incluya:
- Type hints
- Docstring con ejemplos
- Manejo de errores para números negativos
Solicitud detallada de código
Escriba una función en JavaScript con esta especificación:
Nombre de la función: validateEmail
Parámetros: email (string)
Devuelve: { valid: boolean, reason: string }
Requisitos:
- Verificar el símbolo @
- Verificar el dominio
- Verificar TLD válido
- Devolver motivo específico para cualquier fallo
Incluya:
- Comentarios JSDoc
- 3 casos de prueba como comentarios
- Solo sintaxis ES6+
Estructuras de respuesta de varias partes
Secciones secuenciales
Analice esta propuesta de negocio en tres partes:
PARTE 1: RESUMEN EJECUTIVO (2-3 frases)
[Análisis aquí]
PARTE 2: FORTALEZAS Y DEBILIDADES
Fortalezas:
- [Punto 1]
- [Punto 2]
Debilidades:
- [Punto 1]
- [Punto 2]
PARTE 3: RECOMENDACIONES
[Lista numerada de recomendaciones]
Detalle por capas
Explique la computación cuántica en tres niveles:
NIVEL 1 - PARA UN NIÑO (2 frases):
[Explicación sencilla]
NIVEL 2 - PARA UN ESTUDIANTE DE SECUNDARIA (1 párrafo):
[Explicación intermedia]
NIVEL 3 - PARA UN ESTUDIANTE DE INFORMÁTICA (2-3 párrafos):
[Explicación técnica con terminología]
Construcción de marcos reutilizables
Estructura del marco
┌─────────────────────────────────────────────────────────────┐
│ REUSABLE PROMPT FRAMEWORK │
├─────────────────────────────────────────────────────────────┤
│ │
│ [ROLE] │
│ You are a {role} with expertise in {domain}. │
│ │
│ [TASK] │
│ Your task is to {action} the following {input_type}. │
│ │
│ [CONTEXT] │
│ Audience: {audience} │
│ Purpose: {purpose} │
│ Constraints: {constraints} │
│ │
│ [INPUT] │
│ {actual_input} │
│ │
│ [OUTPUT FORMAT] │
│ {template_structure} │
│ │
└─────────────────────────────────────────────────────────────┘
Ejemplo de marco: Revisión de contenido
CONTENT REVIEW FRAMEWORK
Role: You are a content editor for {publication_type}.
Task: Review the following {content_type} for
{review_criteria}.
Provide feedback using this structure:
## Evaluación general
Puntuación: X/10
Resumen: [1 frase]
## Fortalezas
1. [Fortaleza con ejemplo]
2. [Fortaleza con ejemplo]
## Áreas de mejora
1. [Problema]: [Sugerencia específica]
2. [Problema]: [Sugerencia específica]
## Versión editada (si corresponde)
[Contenido revisado]
---
Contenido a revisar:
{content}
Puntos clave
Summary
- Markdown ayuda a organizar prompts y especificar el formato de salida
- Las plantillas aseguran salidas consistentes y completas
- Solicite datos estructurados (JSON, CSV, tablas) para uso programático
- Construya marcos reutilizables para tareas repetidas
- Escalone la complejidad cuando sea necesario (simple → detallado)
← Anterior: Contexto y restricciones | Realizar el cuestionario →