Frameworks clásicos de prompting: Zero-shot, One-shot y Few-shot

Lectura
25 min~7 min lectura

Frameworks clásicos de prompting: Zero-shot, One-shot y Few-shot

En el ámbito del Prompt Engineering, la cantidad de ejemplos que proporcionas a ChatGPT determina significativamente la calidad de las respuestas. Los tres frameworks fundamentales que masteringás en esta lección son el Zero-shot, el One-shot y el Few-shot prompting. Cada uno tiene sus fortalezas, limitaciones y casos de uso óptimos.

¿Por qué importa la cantidad de ejemplos?

Cuando interactúas con modelos de lenguaje como GPT-4, el modelo no solo responde a tu指令 directa, sino que también aprende patrones del contexto que le proporcionas. Los ejemplos funcionan como demostraciones que ayudan al modelo a entender:

  • El formato exacto que esperas en la respuesta
  • El tono y estilo de comunicación apropiado
  • Los criterios de evaluación o clasificación que manejas
  • La lógica específica de tu dominio o industria
  • Las restricciones o excepciones importantes

Entender cuándo y cómo usar cada framework te permitirá optimizar tus interacciones con IA, reduciendo iteraciones y obteniendo resultados precisos desde el primer intento.

Zero-shot Prompting

El Zero-shot prompting es el enfoque más minimalista: le pides a ChatGPT que realice una tarea sin proporcionar ningún ejemplo previo. El modelo depende exclusivamente de su entrenamiento general y tu descripción de la tarea.

Estructura básica

Instrucción directa + Descripción de la tarea

Ejemplo práctico: Clasificación de sentimiento

Clasifica el siguiente texto como positivo, negativo o neutro:

"El servicio al cliente fue rápido y resolutivo."

En este caso, el modelo utiliza su comprensión general del lenguaje para inferir que la palabra "rápido" y "resolutivo" sugieren connotación positiva.

Cuándo usar Zero-shot

  • Tareas genéricas y bien definidas: Traducciones, resúmenes, explicaciones de conceptos conocidos
  • Cuando necesitas velocidad: Interacciones rápidas donde la precisión exacta no es crítica
  • Para tareas que el modelo domina excelentemente: Matemáticas básicas, información factual actualizada
  • Como primer intento: Antes de escalar a few-shot si el resultado es satisfactorio

Limitaciones del Zero-shot

Este enfoque puede fallar cuando la tarea requiere conocimiento especializado, jerga específica de un dominio, o formatos muy particulares que el modelo no puede adivinar solo con instrucciones.

One-shot Prompting

El One-shot prompting proporciona un único ejemplo que sirve como plantilla o referencia para la tarea. Este ejemplo único le dice al modelo: "Así es como quiero que hagas esta tarea".

Estructura básica

Ejemplo → Tu consulta

Ejemplo práctico: Generación de descripciones de producto

Ejemplo:
Producto: Auriculares inalámbricos premium
Descripción: Disfruta de sonido Hi-Fi cristalino con cancelación activa de ruido. Batería de 30 horas, diseño ergonómico y conexión Bluetooth 5.2.

Ahora genera una descripción para:
Producto: Smartwatch deportivo con GPS

El ejemplo establece el patrón de estructura (nombre del producto + beneficios + especificaciones técnicas) que el modelo replicará.

Cuándo usar One-shot

  • Formatos simples pero específicos: Cuando necesitas un estilo particular que un ejemplo ilustra claramente
  • Cuando la tarea es lineal: El ejemplo cubre el 90% de lo que necesitas
  • Tareas de reformulación: Cambiar el tono, nivel de formalidad o estructura
  • Cuando los recursos son limitados: Contextos cortos donde few-shot excedería el límite de tokens

Ventajas clave

El one-shot ofrece un equilibrio perfecto entre contexto y concisión. Un solo ejemplo bien elegido puede enseñar patrones complejos mientras mantiene la eficiencia del prompt.

Few-shot Prompting

El Few-shot prompting proporciona entre 2 y 5 ejemplos (típicamente 3-4) que demuestran la diversidad de la tarea. Esta diversidad es crucial: le muestras al modelo las diferentes variaciones y contextos posibles.

Estructura básica

Ejemplo 1 → Resultado 1
Ejemplo 2 → Resultado 2
Ejemplo 3 → Resultado 3
Tu consulta

Ejemplo práctico: Clasificación de tickets de soporte técnico

Ejemplo 1:
Ticket: "Mi pantalla parpadea cuando cambio el brillo"
Categoría: Problemas de hardware
Prioridad: Media

Ejemplo 2:
Ticket: "No puedo acceder a mi cuenta desde ayer"
Categoría: Problemas de acceso
Prioridad: Alta

Ejemplo 3:
Ticket: "El micrófono no funciona en las videollamadas"
Categoría: Problemas de hardware
Prioridad: Baja

Clasifica este ticket:
Ticket: "La aplicación se cierra inesperadamente al iniciar sesión"
Categoría:

La importancia de la diversidad en Few-shot

No basta con repetir ejemplos similares. Para que few-shot funcione efectivamente, tus ejemplos deben cubrir:

  1. Diferentes casos edge: Situaciones límite o excepcionales
  2. Variaciones de formato de entrada: Distintas formas en que puede llegar la consulta
  3. Diferentes outputs esperados: Cuando hay múltiples respuestas válidas
  4. Casos problemáticos comunes: Ambigüedades frecuentes que debes resolver

Cuándo usar Few-shot

  • Tareas con múltiples categorías: Clasificaciones complejas con muchas posibles etiquetas
  • Cuando zero-shot falla: Si las respuestas del modelo son inconsistentes
  • Tareas con matices: Donde la misma palabra puede tener diferentes significados según contexto
  • Código y programación: Generar código en lenguajes o estilos específicos

Comparativa: ¿Cuándo usar cada framework?

Regla práctica: Empieza con zero-shot. Si la respuesta no satisface, añade un ejemplo (one-shot). Si aún así el modelo comete errores o muestra inconsistencias, escala a few-shot con ejemplos diversos.

Tabla comparativa rápida

Criterio Zero-shot One-shot Few-shot
Tokens usados Mínimos Moderados Más altos
Precisión Variable Buena Excelente
Mejor para Tareas genéricas Formatos específicos Tareas complejas
Esfuerzo de creación Mínimo Bajo Moderado-Alto

Errores comunes al usar estos frameworks

Error 1: Few-shot con ejemplos idénticos

El problema: Usar 3-4 ejemplos que son casi iguales no enseñan nada nuevo al modelo. Solo confirma lo que ya sabe.

La solución: Selecciona ejemplos que representen la diversidad real de tu caso de uso. Si estás clasificando reviews, incluye ejemplos positivos, negativos, neutros, sarcásticos y mixtos.

Error 2: Mezclar zero-shot y one-shot sin estrategia

El problema: Añadir un solo ejemplo mal elegido puede confundir más que ayudar. El modelo intenta coincidir con el ejemplo, pero si este no es representativo, la respuesta empeora.

La solución: Antes de añadir un ejemplo, pregúntate: "¿Este ejemplo captura el patrón esencial de mi tarea?" Si no estás seguro, prueba con few-shot directamente usando 3 ejemplos diversos.

Error 3: Ignorar el contexto del sistema

El problema: Los ejemplos en few-shot compiten con instrucciones del sistema y el contexto previo. Puede haber contradicciones que degraden el rendimiento.

La solución: Mantén tu system prompt limpio y consistente con los ejemplos. Si el sistema dice "Sé conciso" pero tus ejemplos son extensos y detallados, el modelo recibirá señales contradictorias.

Técnicas avanzadas para potenciar tus prompts

Una vez que domines estos tres frameworks básicos, considera estas mejoras:

  • Chain-of-thought: Añade "razona paso a paso" para que el modelo muestre su lógica antes de dar la respuesta final
  • Self-consistency: Pide múltiples respuestas y luego selecciona la más frecuente
  • Prompt chaining: Divide tareas complejas en pasos secuenciales donde cada paso usa el output del anterior
  • Constitutional AI: Incluye principios éticos o de calidad en el propio prompt

Checklist de dominio

  • Sé identificar cuándo usar zero-shot: Puedo reconocer tareas genéricas donde el modelo funciona bien sin ejemplos
  • Construyo ejemplos one-shot efectivos: Selecciono ejemplos representativos que enseñan el patrón deseado con un solo caso
  • Diseño ejemplos few-shot diversos: Mis conjuntos de ejemplos cubren diferentes casos, incluyendo situaciones límite y ambiguas
  • Escalo correctamente entre frameworks: Sé cuándo pasar de zero-shot a one-shot y de one-shot a few-shot
  • Evito los errores comunes: No repito ejemplos idénticos, no mezclo instrucciones contradictorias, yevalúo si un ejemplo realmente añade valor
  • Optimizo el uso de tokens: Equilibro la calidad de los ejemplos con la eficiencia del contexto disponible
  • Aplico estos frameworks en mi trabajo: He implementado prompts con estos métodos en al menos un proyecto real

Con estos fundamentos sólidos, estás preparado para construir prompts más sofisticados y efectivos. La práctica deliberada con proyectos reales es la clave para internalizar estos conceptos.