Los flujos de trabajo regulares de aprendizaje automático a menudo dependen de grandes conjuntos de datos etiquetados para lograr un alto rendimiento en tareas específicas. Este proceso de recopilación y anotación de datos requiere mucho tiempo, consume muchos recursos y, a veces, es poco práctico, especialmente para dominios especializados o en rápida evolución.
El prompting de pocos ejemplos ofrece una alternativa elegante. Los modelos de lenguaje grandes (LLM) preentrenados, como GPT-3 o GPT-4, ya poseen un amplio conocimiento general. En lugar de volver a entrenar estos modelos, los usuarios pueden proporcionar un pequeño número de ejemplos dentro del prompt para guiar el comportamiento del modelo en una tarea nueva pero relacionada. Esto reduce drásticamente la barrera para crear soluciones de PNL eficaces.
Conceptos básicos en el prompting de pocos ejemplos
Prompting
El prompting consiste en comunicar las instrucciones de la tarea a un modelo de lenguaje utilizando una entrada de lenguaje natural. En el prompting de pocos ejemplos, el prompt se aumenta con un puñado de ejemplos que demuestran cómo resolver la tarea. Cada ejemplo incluye una entrada y la salida correspondiente.
Por ejemplo:
Entrada: ¿Cuál es la capital de Francia?
Salida: París
Entrada: ¿Cuál es la capital de Italia?
Salida: Roma
Entrada: ¿Cuál es la capital de España?
Salida:
El modelo utiliza estos ejemplos para inferir el patrón y continuar el prompt en consecuencia.
Aprendizaje en contexto
El prompting de pocos ejemplos aprovecha el aprendizaje en contexto, donde el modelo no modifica sus parámetros internos, sino que aprende a realizar una tarea basándose únicamente en el contexto del prompt. El LLM utiliza la información integrada en los pocos ejemplos para generar la respuesta correcta a una nueva consulta. Este método muestra cómo los modelos preentrenados pueden adaptarse instantáneamente sin un ajuste fino explícito.
Cómo funciona el prompting de pocos ejemplos
Descripción de la tarea
Comience describiendo la tarea de forma breve pero clara. Esto establece el tono y garantiza que el modelo comprenda el formato y la lógica de salida previstos.
Ejemplo: “Clasifique las siguientes reseñas de películas como Positivas o Negativas”.
Provisión de ejemplo
Proporcione de 2 a 5 ejemplos de pares de entrada-salida completados correctamente. Estos deben reflejar fielmente la tarea real. Los ejemplos sirven como instrucción contextual, ilustrando la asignación de entrada y salida.
Ejemplo:
Reseña: “¡Esta película fue una obra maestra!”
Sentimiento: positivo
Reseña: “La historia se alargó y la actuación fue deficiente”.
Sentimiento: negativo
Nueva instancia
Después de los ejemplos, incluya una nueva entrada que se espera que el modelo complete utilizando el patrón aprendido.
Ejemplo:
Reseña: “La cinematografía fue impresionante y estuve completamente inmerso”.
Sentimiento:
A continuación, el modelo predice “Positivo” basándose en el contexto anterior.
Aplicaciones del prompting de pocos ejemplos
Clasificación de textos
El prompting de pocos ejemplos puede clasificar correos electrónicos como spam/no spam, artículos en temas o reseñas en sentimientos, todo ello con datos anotados mínimos, utilizando solo unos pocos ejemplos bien elaborados.
Traducción automática
En lugar de volver a entrenar en corpus multilingües, el prompting de pocos ejemplos puede traducir texto entre idiomas utilizando un puñado de ejemplos, como:
Inglés: “Good morning”
Francés: “Bonjour”
Inglés: “Thank you”
Francés: “Merci”
Inglés: “How are you?”
Francés:
Respuesta a preguntas
Al presentar algunos pares de preguntas y respuestas, el modelo puede aprender eficazmente a extraer o generar respuestas a partir del contexto, ya sea en formatos de preguntas y respuestas de dominio abierto o de comprensión de lectura.
Resumen de texto
El prompting de pocos ejemplos puede demostrar cómo condensar textos largos en resúmenes. Los pares de ejemplo de texto completo y resúmenes concisos ayudan al modelo a comprender qué información debe conservar.
Ventajas del prompting de pocos ejemplos
Eficiencia de datos
El prompting de pocos ejemplos reduce la necesidad de conjuntos de datos etiquetados extensos, lo que lo hace ideal para idiomas con pocos recursos, dominios emergentes o creación rápida de prototipos.
Flexibilidad
Esta técnica permite que los LLM se adapten rápidamente a tareas nuevas o personalizadas, como la extracción de cláusulas legales, la clasificación de CV o el ajuste del tono del correo electrónico, sin volver a entrenar o ajustar la API.
Rentabilidad
El prompting de pocos ejemplos evita los costes computacionales y financieros de entrenar o ajustar los modelos, ofreciendo una solución plug-and-play para muchas tareas.
Desafíos
Diseño del prompt
La elaboración de un prompt de pocos ejemplos eficaz requiere una selección cuidadosa de ejemplos representativos y no ambiguos. Una mala calidad de los ejemplos o unas instrucciones poco claras pueden inducir a error al modelo.
Limitaciones del modelo
El rendimiento depende en gran medida del conocimiento previo del modelo preentrenado. El modelo puede tener dificultades incluso con buenos ejemplos si la tarea es demasiado específica del dominio o técnica.
Longitud del contexto
Debido a las restricciones de longitud de los tokens (por ejemplo, de 4.000 a 32.000 tokens en la mayoría de los LLM), un solo prompt solo puede contener un cierto número de ejemplos. Esto restringe la complejidad o la amplitud de la guía que se puede proporcionar.
Buenas prácticas
Instrucciones claras
Comience siempre con una descripción concisa de la tarea. Evite la ambigüedad y formatéela como una lista de verificación (por ejemplo, “Extraiga la ubicación de las siguientes frases”).
Ejemplos relevantes
Utilice ejemplos que sean muy relevantes y estructuralmente similares a la tarea de destino. Incluir casos límite o ejemplos de sentimiento mixto puede mejorar la solidez.
Formato coherente
Formatee uniformemente en todos los ejemplos. La coherencia en la puntuación, los saltos de línea y el espaciado ayuda al modelo a aprender la estructura correcta de forma más fiable.
Ejemplo:
Reseña: “[TEXTO]”
Sentimiento: [ETIQUETA]
Comparación con otras técnicas de prompting
Tipo de prompting | Descripción | Caso de uso de ejemplo |
Zero-Shot | Sin ejemplos; el modelo se basa únicamente en las instrucciones de la tarea | Preguntas y respuestas de conocimiento general |
One-Shot | Se proporciona un ejemplo de entrada-salida | Extracción de entidades simple |
Few-Shot | Algunos ejemplos seleccionados guían la comprensión del modelo | Análisis de sentimiento, resumen |
El prompting de pocos ejemplos logra el mejor equilibrio entre guía y eficiencia, especialmente para tareas moderadamente complejas.
Direcciones futuras
Incitación en cadena de pensamiento
Incorpora el razonamiento paso a paso en los ejemplos para guiar al modelo en la resolución de problemas complejos, como tareas de matemáticas o lógica. Esto mejora la interpretabilidad y la precisión.
Ejemplo:
Pregunta: Si tengo cinco manzanas y me como 2, ¿cuántas me quedan?
Paso a paso: 5 – 2 = 3
Respuesta: 3
Autoconsistencia
Genera múltiples salidas para el mismo prompt y selecciona la más común o lógicamente coherente. Esto ayuda a mitigar la aleatoriedad y mejora la fiabilidad.
Prompting dinámico
Utiliza la retroalimentación en tiempo real o las puntuaciones de confianza del modelo para adaptar los prompts sobre la marcha, lo que permite interacciones personalizadas o conscientes del contexto.
Por ejemplo, los modelos pueden reformular los prompts dinámicamente si el resultado anterior era incorrecto o poco claro.
El prompting de pocos ejemplos permite que los modelos de lenguaje potentes realicen nuevas tareas con una instrucción mínima. Al proporcionar solo un puñado de ejemplos bien elaborados, los profesionales pueden desbloquear una amplia gama de capacidades de PNL sin la sobrecarga del entrenamiento o el ajuste fino. A medida que avanza la investigación, las estrategias avanzadas como la cadena de pensamiento y el prompting dinámico mejorarán la flexibilidad de este método, convirtiéndolo en una piedra angular en la próxima generación de sistemas de IA adaptables y eficientes.