Skip to main content

Few-Shot Prompting (In-Context Learning)

Metodología de ingeniería de prompts donde el modelo se adapta a un formato, estilo o lógica específicos durante la inferencia (In-Context Learning) mediante la presentación de 2 a 5 ejemplos de referencia.

1. Visión general del concepto y problema sistémico

Uno de los desafíos más comunes al trabajar con modelos de lenguaje es la ambigüedad del lenguaje natural. Cuando un desarrollador escribe en la instrucción: “Escribe una interfaz de TypeScript concisa en el estilo de nuestro proyecto”, el modelo se ve obligado a basarse en representaciones promediadas de Internet:

  1. Subjetividad de las formulaciones: Conceptos como "conciso", "bonito" o "estricto" son interpretados por el modelo de manera demasiado amplia, lo que provoca inestabilidad en los resultados de una ejecución a otra.
  2. Imposibilidad de describir todas las reglas por texto: La descripción de las convenciones de la base de código puede ocupar 10 páginas de reglas que el modelo inevitablemente comenzará a violar.
  3. “Más vale ver una vez que oír mil”: Al igual que a un programador humano, a un modelo de lenguaje le resulta mucho más fácil replicar un estilo a partir de 2 a 4 ejemplos visuales que entender descripciones abstractas.

Few-Shot prompting elimina la ambigüedad a través de la demostración: se muestran al modelo de 2 a 4 pares contrastantes de “Datos de entrada -> Resultado de referencia”, estableciendo un canon de comportamiento claro.

2. Taxonomía arquitectónica y modelo mental

Gradación de métodos de aprendizaje en contexto (In-Context Learning):

  • 1. Zero-Shot (Sin ejemplos): El modelo recibe una instrucción puramente textual y una nueva tarea. Adecuado para tareas rutinarias básicas, pero ofrece la mayor variabilidad en la salida.
  • 2. One-Shot (Un ejemplo de referencia): Se añade un ejemplo ideal al prompt. Esto es suficiente para establecer un marco sintáctico (por ejemplo, la forma del JSON de salida).
  • 3. Few-Shot (Conjunto clásico de 2 a 5 ejemplos): El equilibrio dorado. Incluye muestras de diferentes escenarios: un caso simple, un caso complicado con datos anidados y un caso extremo (Edge Case / Error Handling).
  • 4. Retrieval-Augmented (Dynamic) Few-Shot: Patrón de producción avanzado: una biblioteca de 500 ejemplos se indexa en una base de datos vectorial. Para cada consulta del usuario, la búsqueda vectorial recupera los 3 ejemplos más relevantes.

3. Pipeline técnico y mecánica interna

Ciclo de vida de preparación y ejecución de un Few-Shot prompt:

  1. Exemplar Selection & Curation (Selección y curaduría de ejemplos): Se forma un conjunto compacto de pares que demuestran el resultado deseado sin errores ni palabrería innecesaria.
  2. Structural Delimitation (Delimitación estructural): Los ejemplos se envuelven en estrictas etiquetas XML o Markdown para evitar la mezcla de instrucciones con ejemplos: <example id="1"><input>...</input><output>...</output></example>.
  3. Induction Head Pattern Activation (Activación de patrones de inducción): Durante el cálculo de las capas de atención, el transformador fija la transición de la etiqueta <input> a <output> como una transformación de datos determinista.
  4. Target Inference Alignment (Generación de la respuesta objetivo): El modelo genera una respuesta a una nueva pregunta, copiando subconscientemente la sintaxis, longitud, convenciones de nombrado y claves utilizadas en los ejemplos.

4. Escenarios prácticos de ingeniería en producción

01. Parsing estricto de datos no estructurados a JSON

Necesitas convertir descripciones textuales de transacciones bancarias en un JSON válido. Zero-shot a menudo confunde los campos de fecha o copia centavos. Few-shot con tres ejemplos (incluyendo reembolsos y pagos multimoneda) asegura un 99.8% de estabilidad en el esquema.

02. Cumplimiento del estilo de codificación corporativo

El equipo necesita que el agente de código escriba pruebas unitarias estrictamente según el estándar interno: uso de describe.concurrent, un helper específico de fábrica de usuarios makeUser() y prohibición de mocks a través de jest.spyOn. Dos ejemplos en el prompt del sistema resuelven completamente el problema.

03. Canonización y traducción de términos técnicos

Traducción de documentación al español con la exigencia de mantener términos específicos en su forma original (por ejemplo, Checkpointer, Race condition) y traducir otros según el glosario corporativo.

5. Errores comunes, trampas y seguridad

  • Sesgo de mayoría y recencia (Majority & Recency Bias): Los modelos son extremadamente sensibles al orden de los ejemplos. Si en 3 de 4 ejemplos la respuesta fue "Sí", el modelo tendrá un fuerte sesgo hacia "Sí" para cualquier nueva entrada. Siempre equilibra las clases en los ejemplos (50/50).
  • Copia de errores de los ejemplos (Error Mimicry): Si en uno de los ejemplos accidentalmente omitiste un paréntesis de cierre o cometiste un error tipográfico, el modelo reproducirá este error en los nuevos resultados.
  • Inflación del contexto de entrada: Diez ejemplos detallados de Few-shot pueden ocupar 15,000 tokens. Siempre utiliza Prompt Caching para prompts del sistema con ejemplos.
/ Preguntas frecuentesSchema.org FAQPage

FAQ: Few-Shot Prompting (In-Context Learning)

Este fenómeno se llama In-Context Learning (ICL). Los contornos de atención especializados del transformador, conocidos como Induction Heads, están entrenados para detectar patrones y regularidades directamente en la secuencia de tokens. El modelo reconoce la estructura 'Entrada A -> Salida A' y extrapola automáticamente esta regla a una nueva consulta.
/ Enlaces internos
Todos los términos