El few-shot prompting es una técnica que consiste en darle ejemplos al modelo de lenguaje dentro del prompt para guiarlo hacia el tipo de respuesta que esperas. Si trabajas con tareas específicas como clasificar reseñas, etiquetar textos o estandarizar respuestas, esta técnica te ayuda a reducir ambigüedad y mejorar precisión.
La idea es simple: en lugar de describir con palabras qué consideras positivo, negativo o neutral, le muestras al LLM ejemplos concretos. Y aquí viene lo interesante: muchas veces es más fácil mostrar que explicar.
¿Cómo funciona el few-shot prompting frente al zero-shot?
La diferencia central está en los ejemplos. En zero-shot le das instrucciones abiertas al modelo y dejas que interprete; en few-shot le entregas casos resueltos para que aprenda el patrón que esperas.
Imagina que tienes reseñas de Google sobre tu restaurante y quieres clasificarlas como positivas, negativas o neutrales sin depender de las estrellas. Empiezas con un prompt tipo: actúa como un analista de sentimiento y califica el comentario según el sentimiento que exprese. Hasta ahí es zero-shot.
Para convertirlo en few-shot, agregas ejemplos así:
- Comentario: la comida fue pésima. Calificación: negativo.
- Comentario: el servicio estuvo increíble y la comida deliciosa. Calificación: positivo.
- Comentario: el servicio fue bueno, pero la comida estuvo muy regular. Calificación: neutral.
Esos tres ejemplos le dan al modelo una guía clara de qué entiendes tú por cada categoría, algo que en instrucciones puras resulta ambiguo [3:00].
¿Qué es el few-shot prompting? Es una técnica donde incluyes ejemplos resueltos dentro del prompt para que el modelo identifique el patrón y aplique esa misma lógica a entradas nuevas.
¿Cómo estructurar mejor los ejemplos en un prompt?
Puedes combinar few-shot con otras técnicas para mejorar la claridad. Una opción es usar tags XML para delimitar cada ejemplo, marcando dónde inicia y dónde termina. Otra opción es presentarlos como lista con guiones.
Usar guiones tiene una ventaja relacionada con el tokenizer: evita generar espacios innecesarios y aprovecha los patrones del lenguaje que el modelo ya reconoce, en lugar de fragmentar palabras largas de forma arbitraria [4:30].
¿Por qué cada carácter del prompt importa?
En una prueba real, al clasificar una reseña larga sobre un restaurante, el modelo respondió neutral cuando la reseña iba entre comillas. Al quitar las comillas, la respuesta cambió a positiva y además incluyó texto extra en lugar de solo la etiqueta [6:00].
Eso muestra dos cosas:
- Los LLM no son completamente deterministas, así que la misma entrada puede dar respuestas distintas.
- Detalles como comillas, espacios o saltos de línea afectan la interpretación del modelo.
Para controlar mejor el formato de salida, conviene agregar reglas explícitas como: responde solo con la palabra neutral, positiva o negativa. No escribas nada más en tu respuesta.
¿Cómo detectar si tu prompt es estable?
Una forma práctica es repetir el mismo prompt varias veces en chats nuevos. Si en cuatro envíos consecutivos obtienes neutral, neutral, neutral, neutral, tu prompt es estable. Si obtienes resultados distintos, necesitas más ejemplos o reglas más estrictas.
Cuando detectas un caso donde el modelo se equivoca, la solución es agregar ese caso como ejemplo dentro del prompt con la calificación correcta. Así vas afinando el comportamiento iteración tras iteración.
¿Cuántos ejemplos debes incluir en un prompt?
No hay número mágico. Depende del caso de uso, del costo en tokens y de qué tan ambiguos sean los casos límite que quieres resolver.
En el ejercicio de las reseñas, un prompt con cuatro ejemplos enviaba 372 tokens y devolvía 3 tokens. Al quitar un ejemplo, bajó a 244 tokens enviados y 3 devueltos [9:00]. Cada ejemplo cuenta dentro del consumo, pero si solo esperas una respuesta corta y no una conversación continua, el costo extra suele justificarse.
¿Cuántos ejemplos son suficientes en few-shot? Los necesarios para cubrir los casos donde el modelo se equivoca. Más que cantidad, importa la calidad y la diversidad de los ejemplos.
La estrategia recomendada es:
- Probar el prompt con comentarios reales cuya calificación ya conoces.
- Identificar dónde falla la clasificación.
- Agregar esos casos como nuevos ejemplos dentro del prompt.
- Repetir hasta que la respuesta sea consistente.
Una vez que tu prompt está afinado, puedes escalarlo: subir un Excel con 100 comentarios y pedir que devuelva la calificación de cada uno.
¿Cuándo conviene usar few-shot y cuándo no?
Few-shot funciona mejor en tareas específicas con respuestas acotadas: clasificación, etiquetado, formatos estandarizados. Zero-shot, en cambio, abre más caminos y se adapta mejor a problemas amplios y subjetivos.
Un caso donde few-shot no conviene es un asistente de viajes. Si pones un ejemplo de un plan en España, el modelo va a tender a sesgar todas las respuestas hacia España, llevando el espacio vectorial hacia los lugares de tus ejemplos [11:30]. Ahí los ejemplos te juegan en contra.
En cambio, en un clasificador de sentimientos, donde solo existen tres salidas posibles, los ejemplos sí guían al modelo hacia el patrón correcto sin sesgar de más.
¿Cuándo no usar few-shot prompting? Cuando la tarea es abierta o creativa y los ejemplos pueden sesgar las respuestas hacia los casos específicos que mostraste, en lugar de generalizar.
La próxima técnica que vale la pena explorar es chain of thought, donde el modelo razona paso a paso para resolver problemas más complejos que no se reducen a una etiqueta simple.
¿Qué problema de tu día a día crees que podrías resolver con few-shot prompting? Déjamelo en los comentarios.