¿Qué es few shot prompting?

Autor(es):

Vrunda Gadesha

AI Advocate | Technical Content Author

¿Qué es few shot prompting?

Few-shot prompting se refiere al proceso de proporcionar a un modelo de IA algunos ejemplos de una tarea para guiar su desempeño. Este método es particularmente útil en escenarios en los que no se dispone de datos de entrenamiento extensos.

En otras técnicas, como zero-shot prompting, que no requieren ejemplos, o one-shot prompting, que se basan en un solo ejemplo, few-shot prompting utiliza múltiples ejemplos para mejorar la precisión y la adaptabilidad. Aparte de esto, otras infraestructuras avanzadas de ingeniería rápida como chain-of-thought prompting y tree-of-thought prompting también consumen ejemplos para obtener los resultados deseados y optimizar los resultados del modelo.

Few-shot learning es esencial en situaciones de IA generativa en las que recopilar grandes cantidades de datos etiquetados es un desafío. Los métodos de prompting convierten la entrada de texto en un formato estructurado, lo que permite que modelos como la serie Granite de IBM, los modelos Llama de Meta y GPT-3 y GPT-4 de OpenAI llenen los espacios en blanco con respuestas adecuadas, realizando tareas de manera efectiva sin extensos conjuntos de datos etiquetados.[1] Esta técnica también permite obtener el formato de salida predefinido al guiar el modelo a través de ejemplos específicos, lo que garantiza la coherencia y precisión en la estructura deseada.

En el campo en rápida evolución de la inteligencia artificial (IA), el machine learning (ML) y el procesamiento de lenguaje natural (PLN), few-shot prompting se ha convertido en una técnica poderosa. Este método permite a los modelos realizar tareas con ejemplos limitados, lo que lo distingue de otros métodos de prompting, como zero-shot y one-shot prompting. Comprender few-shot prompting es crucial para aprovechar todo el potencial de los sistemas avanzados de IA, como GPT-3/GPT-4 de OpenAI y otros modelos de lenguaje grandes (LLM), como los modelos IBM Granite o los modelos Llama de Meta.

Ilustración de few-shot learning para la clasificación de sentimientos con métodos basados en instrucciones Figura 1: Ilustración de few-shot learning para la clasificación de sentimientos con métodos basados en instrucciones

La figura 1 ilustra un proceso few-shot learning para la clasificación de sentimientos con un modelo de lenguaje grande. La instrucción proporciona ejemplos de texto etiquetado como "positivo" o "negativo". El modelo, después de ver estos ejemplos etiquetados, tiene la tarea de clasificar un nuevo fragmento de texto ("Este producto es muy rentable") como "positivo". Esto demuestra cómo few-shot learning permite que el modelo generalice a partir de un pequeño número de ejemplos para realizar una tarea específica.

¿Cómo funciona few-shot learning?

Few-shot learning funciona presentando al modelo varios ejemplos de la tarea deseada dentro de la instrucción. Esta técnica aprovecha el conocimiento previamente entrenado de los modelos de lenguaje grandes (LLM) para realizar tareas específicas de manera eficiente, incluso con datos limitados.

Diagrama del proceso de few shot prompting Figura 2: funcionamiento de few shot prompting

Consulta del usuario: el proceso comienza con una consulta del usuario, como "Este producto es muy rentable".

Almacén de vectores: todos los ejemplos se almacenan en un almacén de vectores, una base de datos optimizada para la búsqueda semántica. Cuando se recibe una consulta del usuario, el sistema realiza una coincidencia semántica para encontrar los ejemplos más relevantes del almacén de vectores.

Recuperación de ejemplos relevantes: solo los ejemplos más relevantes se recuperan y utilizan para formar la instrucción. En este ejemplo, se utiliza la generación aumentada por recuperación (RAG, por sus siglas en inglés) para recuperar los ejemplos de un almacén de vectores, lo que ayuda a adaptar la instrucción a la consulta específica. Si bien la RAG no se requiere universalmente para few shot prompting, puede mejorar significativamente el proceso al garantizar que se utilicen los ejemplos más relevantes para el contexto, mejorando así el rendimiento del modelo en ciertos escenarios.

Formación de instrucciones: la instrucción se construye con los ejemplos recuperados y la consulta del usuario. Por ejemplo, la instrucción podría verse así:

Formación de instrucciones Figura 3: Formación de instrucciones

Procesamiento de LLM: la instrucción construida se introduce en el LLM. El modelo procesa la instrucción y genera resultados, en este caso, clasificando el sentimiento de la consulta del usuario.

Resultados: el LLM genera la clasificación, como "negativa" para el ejemplo dado.

La investigación destacó la efectividad de un enfoque de aprendizaje few-shot que reduce la dependencia de la ingeniería rápida. A diferencia del ajuste tradicional, que implica ajustar los parámetros del modelo utilizando un gran conjunto de datos antes de las instrucciones, el ajuste en la configuración few-shot se refiere al proceso de adaptar modelos previamente entrenados con solo unos pocos ejemplos proporcionados directamente dentro de la instrucción. Este enfoque permite que el modelo aproveche su conocimiento preexistente de manera más efectiva sin la necesidad de entrenamiento adicional en grandes conjuntos de datos.[2] Este estudio demostró que incluso cuando se utilizan "instrucciones nulas" (instrucciones que no contienen plantillas específicas de tareas ni ejemplos etiquetados), el modelo aún podría lograr una precisión competitiva en varias tareas. Por ejemplo, una instrucción nula podría simplemente hacer una pregunta como "¿Cuál es el sentimiento del siguiente texto?" sin dar ningún ejemplo específico o instrucciones sobre cómo clasificar el sentimiento. A pesar de esta falta de estructura, el modelo puede funcionar bien, mostrando la solidez del aprendizaje few-shot.

En general, el estudio sugiere que el aprendizaje few-shot es una estrategia muy eficaz, especialmente cuando se utilizan instrucciones estructuradas. Si bien las instrucciones nulas pueden arrojar buenos resultados, agregar algunos ejemplos bien elegidos puede mejorar aún más el rendimiento del modelo, lo que lo convierte en un enfoque versátil y eficiente, especialmente en escenarios con datos etiquetados limitados. [1]

Ventajas y limitaciones de few shot prompting

Few-shot prompting es una técnica poderosa en el procesamiento de lenguaje natural (PLN) que permite a los modelos realizar tareas con un mínimo de ejemplos. Este enfoque tiene varias ventajas y limitaciones que influyen en su eficacia y aplicabilidad.

Ventajas

  1. Eficiencia y flexibilidad: few-shot prompting reduce significativamente la cantidad de datos etiquetados necesarios para el entrenamiento, lo que lo hace altamente eficiente y adaptable a nuevas tareas. Al aprovechar grandes modelos de lenguaje previamente entrenados, few shot prompting puede lograr un rendimiento competitivo incluso con datos limitados. Por ejemplo, en el siguiente estudio citado, los autores demostraron que el ajuste de los modelos de lenguaje en un entorno few-shot reduce la necesidad de una ingeniería rápida y puede lograr una alta precisión en una amplia gama de tareas.[2]
  2. Rendimiento mejorado en diversas aplicaciones: few-shot prompting ha demostrado mejoras significativas en varias aplicaciones, desde la clasificación de textos hasta la traducción automática y más. Por ejemplo, los autores del siguiente estudio citado propusieron TransPrompt, una infraestructura de instrucciones transferible que captura el conocimiento de tareas cruzadas, mejorando significativamente el rendimiento en tareas de clasificación de texto few shot.[3]
  3. Robustez a diferentes instrucciones: la robustez de few shot prompting ante diferentes formulaciones de instrucciones es otro beneficio clave. Unified Prompt Tuning (UPT), como lo describen Feihu Jin et al., enriquece las instrucciones con información específica de la tarea y dependiente de la instancia, logrando mejoras significativas en el rendimiento en diversas tareas de PLN.[4]
  4. Reducción de la sobrecarga computacional: los avances recientes han hecho que few-shot prompting sea más eficiente. Por ejemplo, Lewis Tunstall et al. introdujo SetFit, un marco eficiente para el ajuste few-shot de Sentence Transformers, que logra una alta precisión con significativamente menos parámetros y un tiempo de entrenamiento reducido en comparación con los métodos existentes.[5]

Limitaciones

  1. Dependencia de la calidad de las instrucciones: la calidad y el diseño de las instrucciones impactan significativamente el rendimiento de few-shot prompting. La creación de instrucciones eficaces a menudo requiere una ingeniería cuidadosa y experiencia en el dominio. Los autores Timo Schick y sus colegas investigadores destacaron la variabilidad en el rendimiento debido a la calidad de las instrucciones, enfatizando la necesidad de un manejo inteligente de múltiples instrucciones para lograr resultados confiables.[6]
  2. Complejidad computacional: los modelos de lenguaje grandes empleados en few-shot prompting requieren recursos computacionales sustanciales. Esto puede ser una barrera para muchas organizaciones, limitando la accesibilidad de estos modelos. Morteza Bahrami et al. señaló que los modelos con una gran cantidad de parámetros necesitan un hardware potente, lo que puede ser una limitación para una adopción generalizada.[1]
  3. Desafío de la generalización: generalizar las instrucciones en diversas tareas y conjuntos de datos sigue siendo un desafío importante. Si bien few-shot prompting puede funcionar bien en tareas específicas, garantizar un rendimiento constante en diversas aplicaciones requiere técnicas avanzadas. Por ejemplo, el estudio realizado por Feihu Jin y otros autores abordó este tema en el razonamiento numérico aprovechando grandes cantidades de datos de entrenamiento para mejorar la generalización en el aprendizaje basado en las instrucciones.[4]
  4. Capacidades limitadas de zero-shot: si bien few-shot prompting sobresale con ejemplos mínimos, su rendimiento en configuraciones zero-shot puede ser menos confiable. El estudio sobre los avances en NER presentó QaNER, un método basado en instrucciones para el reconocimiento de entidades nombradas que aborda las limitaciones de las capacidades zero-shot al mejorar la robustez de las instrucciones.[7]

Por lo tanto, few-shot prompting ofrece beneficios sustanciales en términos de eficiencia, flexibilidad y rendimiento en diversas aplicaciones. Sin embargo, su dependencia de la calidad de las instrucciones, la complejidad computacional, los desafíos en la generalización y las capacidades zero-shot limitadas destacan las áreas donde se necesitan más avances para maximizar su potencial.

Piense más allá de las instrucciones y obtenga el contexto completo 

Manténgase a la vanguardia de las últimas noticias de la industria, herramientas de IA y tendencias emergentes en ingeniería rápida con el boletín Think. Además, obtenga acceso a nuevos documentos explicativos, tutoriales e insights de expertos, directamente en su bandeja de entrada. Consulte la Declaración de privacidad de IBM.

¡Gracias! Ya está suscrito.

Casos de uso

Few-shot prompting ha demostrado ser una herramienta versátil y potente con una serie de ejemplos en diversas aplicaciones, aprovechando las fortalezas de los modelos de lenguaje grandes para realizar tareas complejas con ejemplos limitados. Es popular entre los casos de uso creativos de IA generativa, como la creación de contenido o el aprendizaje en contexto. Estos son algunos casos de uso notables explicados en detalle:

Análisis de sentimiento
Few-shot prompting es particularmente útil en el análisis de sentimiento donde los modelos clasifican el sentimiento de un texto con datos etiquetados limitados. La integración de few-shot prompting con la coincidencia semántica, como se muestra en la figura 2, es un ejemplo. Permite que los modelos clasifiquen con precisión los sentimientos basados en ejemplos relevantes de un almacén de vectores.[1]

Reconocimiento de acciones en videos
Few-shot prompting también se ha aplicado al reconocimiento de acciones en videos. Yuheng Shi et al. introdujo knowledge prompting, que aprovecha el conocimiento de sentido común de recursos externos para impulsar modelos de visión y lenguaje. Este método clasifica eficazmente las acciones en videos con una supervisión mínima, logrando un rendimiento de vanguardia y reduciendo significativamente la sobrecarga de entrenamiento.[8]

Generación de diálogos fundamentados
En la generación de diálogos fundamentados o chatbots, few-shot prompting fortalece los modelos de diálogo integrando fuentes de información externas. Este estudio demostró que los métodos de few-shot prompting podrían mejorar significativamente el rendimiento de los modelos de diálogo, haciéndolos más coherentes y contextualmente relevantes.[9]

Reconocimiento de entidades nombradas (NER)
Few-shot prompting puede mejorar las tareas de reconocimiento de entidades nombradas al proporcionar ejemplos que ayudan al modelo a reconocer y clasificar entidades dentro del texto. El autor del siguiente estudio citado desarrolló un método de aprendizaje few-shot, basado en instrucciones y consciente de la entidad, para tareas de respuesta a preguntas, que se puede adaptar para tareas NER, mejorando significativamente el rendimiento del modelo.[10]

Tareas de generación de código
Few-shot prompting también es aplicable a tareas relacionadas con el código, como la generación de aserciones de prueba y la reparación de programas. En su estudio, Noor Nashid et al. desarrolló una técnica que recupera automáticamente demostraciones de código para crear instrucciones efectivas, mostrando mejoras sustanciales en la precisión de las tareas.[11]

Estos casos de uso demuestran la amplia aplicabilidad y eficacia de few-shot prompting en diferentes campos y tareas, mostrando su potencial para impulsar la innovación y la eficiencia en las aplicaciones de IA y PLN.

Few-shot prompting representa un salto significativo en IA y PLN, ya que ofrece eficiencia, flexibilidad y rendimiento mejorado con ejemplos limitados. A medida que la tecnología evolucione, desempeñará un papel crucial en diversas aplicaciones, impulsando la innovación y la eficiencia en múltiples campos.

AI Academy

Conviértase en un experto en IA

Obtenga el conocimiento para priorizar las inversiones en IA que impulsan el crecimiento del negocio. Comience hoy mismo con nuestra AI Academy gratuita y lidere el futuro de la IA en su organización.

Soluciones relacionadas
IBM® watsonx.ai

Entrene, valide, ajuste y despliegue IA generativa, modelos fundacionales y capacidades de machine learning con IBM watsonx.ai, un estudio empresarial de próxima generación para creadores de IA. Diseñe aplicaciones de IA en menos tiempo y con menos datos.

Explore watsonx.ai
Soluciones de inteligencia artificial

Ponga a trabajar la IA en su negocio con la experiencia en IA líder del sector y la cartera de soluciones de IBM a su lado.

Explore las soluciones de IA
Consultoría y servicios de inteligencia artificial (IA)

Los servicios de IA de IBM Consulting ayudan a reinventar la forma en que las empresas trabajan con IA para la transformación.

Explore los servicios de IA
Dé el siguiente paso

Con la IA, IBM Concert muestra insights cruciales sobre operaciones y proporciona recomendaciones de mejora específicas de las aplicaciones. Descubra cómo Concert puede hacer avanzar su negocio.

Explore Concert Explore las soluciones de automatización de procesos de negocio
Notas de pie de página
  1. Morteza Bahrami, M. M. (14 de febrero de 2023). Few-shot Learning with Prompting Methods. 6th International Conference on Pattern Recognition and Image Analysis (IPRIA), 1-5. https://ieeexplore.ieee.org/document/10147172.
  2. Robert L Logan IV, I. B. (24 de junio de 2021). Cutting Down on Prompts and Parameters: Simple Few-Shot Learning with Language Models. 2824-2835. https://aclanthology.org/2022.findings-acl.222/.
  3. Chengyu Wang, JW (2021). TransPrompt: Towards an Automatic Transferable Prompting Framework for Few-shot Text Classification. 2792-2802. https://aclanthology.org/2021.emnlp-main.221/.
  4. Feihu Jin, J. L. (4 de junio de 2023). Unified Prompt Learning Makes Pre-Trained Language Models Better Few-Shot Learners. ICASSP 2023 - 2023 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), 1-5. https://ieeexplore.ieee.org/document/10095738.
  5. Lewis Tunstall, N. R. (22 de septiembre de 2022). Efficient Few-Shot Learning Without Prompts. https://arxiv.org/abs/2209.11055.
  6. Timo Schick, HS (2021). Exploiting Cloze-Questions for Few-Shot Text Classification and Natural Language Inference. En Proceedings of the 16th Conference of the European Chapter of the Association for Computational Linguistics: Main Volume, páginas 255–269, en línea. Association for Computational Linguistics.
  7. Andy T. Liu, W. X.-W. (3 de marzo de 2022). QaNER: Prompting Question Answering Models for Few-shot Named Entity Recognition. https://arxiv.org/abs/2203.01543.
  8. Yuheng Shi, X. W. (22 de noviembre de 2022). Knowledge Prompting for Few-shot Action Recognitionhttps://doi.org/10.48550/arxiv.2211.12030.
  9. Chujie Zheng, M. H. (14 de septiembre de 2021). Exploring Prompt-based Few-shot Learning for Grounded Dialog Generation. https://arxiv.org/abs/2109.06513.
  10. Yi Chen, X. S. (26 de mayo de 2023). Few-shot Question Answering with Entity-Aware Prompt. Proceedings of the 2023 4th International Conference on Computing, Networks and Internet of Things. https://dl.acm.org/doi/10.1145/3603781.3603812.
  11. Noor Nashid, M. S. (1 de mayo de 2023). Retrieval-Based Prompt Selection for Code-Related Few-Shot Learning. IEEE/ACM 45th International Conference on Software Engineering (ICSE), 2450-2462. https://ieeexplore.ieee.org/document/10172590.