Few-Shot Prompting
El Few-Shot Prompting DEBE implementarse como un proceso estructurado que proporciona entre 3 y 5 ejemplos representativos antes de la tarea objetivo. Todo prompt DEBE incluir una instrucción clara, ejemplos consistentes y el input objetivo siguiendo el mismo formato que los ejemplos.
Ejemplos
✅ Ejemplo Correcto
Objetivo del Prompt
Clasificar frases como positivas, negativas o neutrales, mostrando varios ejemplos antes del input objetivo.
Parámetros Recomendados
- Temperature: 0.3
- Top-K: 10
- Top-P: 0.9
- Token Limit: 30
Prompt
Instrucción: Clasifica cada frase como POSITIVA, NEGATIVA o NEUTRAL.
Ejemplo 1:
Input: Me encantó la película.
Output: POSITIVA
Ejemplo 2:
Input: No me gustó el final.
Output: NEGATIVA
Ejemplo 3:
Input: La película estuvo bien, nada especial.
Output: NEUTRAL
Input objetivo:
Fue una experiencia interesante pero no la repetiría.
Output
NEUTRAL
❌ Ejemplo Incorrecto
Objetivo del Prompt
Clasificar frases, pero sin estructura ni ejemplos claros.
Parámetros Recomendados
- Temperature: 0.3
- Top-K: 10
- Top-P: 0.9
- Token Limit: 30
Prompt
Clasifica: Fue una experiencia interesante pero no la repetiría.
Output
No estoy seguro, podría ser neutral o negativa.
Justificación
La implementación consistente de Few-Shot Prompting es necesaria porque:
- Mejora la precisión y consistencia en tareas complejas
- Permite controlar el formato y estilo de las respuestas
- Facilita el aprendizaje de patrones específicos
- Reduce la ambigüedad en la interpretación de tareas
Reglas de Uso
1. Estructura del Prompt
- DEBE incluir una instrucción clara y concisa
- DEBE proporcionar entre 3 y 5 ejemplos representativos
- DEBE mantener consistencia en el formato de ejemplos
- DEBE seguir el mismo patrón para el input objetivo
2. Selección de Ejemplos
- DEBE cubrir la diversidad de casos posibles
- DEBE ser representativo del dominio
- DEBE mantener consistencia en el estilo
- DEBE incluir casos límite cuando sea relevante
3. Formato
- DEBE usar separadores claros entre ejemplos
- DEBE mantener consistencia en la estructura
- DEBE incluir etiquetas claras (Input/Output)
- DEBE seguir un patrón predecible
Cuándo Aplicar
- Clasificación de textos compleja
- Extracción de información estructurada
- Generación de código con patrones específicos
- Traducción con tono o estilo particular
- Análisis de sentimientos avanzado
Cuándo Evitar
- Tareas que requieren respuesta inmediata
- Procesamiento de lenguaje natural simple
- Cuando el espacio de tokens es limitado
- Tareas con patrones muy variables
Métricas de Calidad
| Métrica | Descripción | Umbral Mínimo |
|---|---|---|
| Consistencia | Adherencia al formato | 100% |
| Cobertura | Diversidad de ejemplos | ≥ 80% |
| Precisión | Exactitud de respuestas | ≥ 90% |
| Eficiencia | Uso de tokens | ≤ 2000 |
Implementación Recomendada
class FewShotSystem:
def __init__(self, config):
self.min_examples = config.min_examples
self.max_examples = config.max_examples
self.format_validator = config.validator
def generate_prompt(self, task, examples, target):
return self._structure_prompt(task, examples, target)
def validate_examples(self, examples):
return self._check_example_consistency(examples)
def optimize_examples(self, examples):
return self._select_optimal_examples(examples)
Referencias Técnicas
- Modelos de lenguaje: GPT-3, GPT-4, PaLM
- Frameworks de evaluación: BLEU, ROUGE
- Herramientas de análisis: HuggingFace, OpenAI API
- Métricas de rendimiento: Accuracy, F1-Score