¿Qué es el zero-shot prompting?

Autor(es):

Meredith Syed

Technical Content, Editorial Lead

IBM

Vrunda Gadesha

AI Advocate | Technical Content Author

¿Qué es zero-shot prompting?

Zero-shot prompting es un método de prompt engineering que se basa en el preentrenamiento de un modelo de lenguaje de gran tamaño (LLM) para inferir una respuesta adecuada. A diferencia de otros métodos de prompt engineering, como los few-shot prompting, los modelos no proporcionan ejemplos de resultados cuando se solicita con la técnica zero-shot1.

Cómo funciona zero-shot prompting

Una de las promesas de los modelos fundacionales es que pueden adaptarse a muchos casos de uso sin necesidad de datos de entrenamiento adicionales. En el zero-shot prompting, se solicita al modelo que genere una respuesta sin recibir un ejemplo de la salida deseada para el caso de uso. Zero-shot prompting es una aplicación de zero-shot learning, un patrón de machine learning que pide a los modelos que hagan predicciones con datos de entrenamiento cero.

En el siguiente ejemplo, el modelo granite-3-8b-instruct de IBM de la serie Granite de IBM se solicita mediante el uso de zero-shot prompting en un caso de uso de clasificación2. En este caso, se pide al modelo que clasifique un problema de TI como perteneciente a la clase "Alta" o a la clase "Baja", lo que indica la  urgencia del problema. En este ejemplo, el modelo infiere la etiqueta de clasificación "Alta" para la instrucción (como se muestra en el resultado en negrita), una respuesta adecuada en este contexto.

Nota: La instrucción se ejecutó en IBM® watsonx.ai Prompt Lab utilizando el modo "Freeform".

Establezca el nombre de la clase para el problema descrito en Alta, Media o Baja. Prediga solo el nombre de la clase para el último problema. Proporcione una breve descripción de por qué se eligió ese nombre de clase.

Nombre de la clase: alta
Descripción: un problema que tiene un alto coste empresarial, afecta a muchos usuarios o a ambos.

Nombre de clase: media
Descripción: un problema que se encuentra en algún punto entre alto y bajo.

Nombre de clase: baja
Descripción: un problema que afecta a unos pocos usuarios, no tiene un coste empresarial elevado o ambas cosas.

Problema: los usuarios informan de que no pueden cargar archivos.

Clase: alta

Descripción: este problema se considera alto porque afecta a muchos usuarios y tiene un alto coste empresarial. La imposibilidad de cargar archivos puede impedir que los usuarios completen sus tareas, lo que puede provocar retrasos y una disminución de la productividad. Además, este problema puede afectar a varios departamentos o equipos, lo que aumenta aún más el coste empresarial.

Una estrategia de zero-shot prompting suele ser la estrategia de prompt engineering predeterminada cuando se asigna un modelo a un nuevo problema1. Este ejemplo demuestra cómo se espera que el modelo genere una inferencia adecuada sin ningún ejemplo explícito de respuestas. El escenario de zero-shot prompting imita el aprendizaje humano al aplicar conocimientos previos para resolver nuevos problemas3.

Componentes de una instrucción

Aunque el modelo no se proporciona con instrucciones de ejemplo, se proporciona con detalles sobre cómo completar la tarea:1

Instrucción: en primer lugar, las instrucciones proporcionadas al modelo son "Establecer el nombre de la clase para el problema descrito..."

Contexto: a continuación, el contexto del modelo incluye una descripción de los nombres de las clases.

Datos de entrada: el modelo recibe datos de entrada para ejecutar la tarea de clasificación con la instrucción "Problema: los usuarios informan que no pueden cargar archivos".

Indicador de salida: opcionalmente, el modelo puede recibir un indicador de resultado, en este caso el texto "Clase:" que indica al modelo que responda con el nombre de clase del problema. Los indicadores de resultado indican al modelo qué tipo de resultado producir para un tipo específico de respuesta.

El formato personalizado de esta instrucción es para el problema de clasificación en cuestión. Otros casos de uso pueden requerir un formato diferente para la instrucción y es posible que no contengan los mismos componentes de instrucción, contexto, entrada e indicadores de resultado1. Diferentes modelos pueden requerir diferentes formatos para una instrucción. Asegúrese de seguir las instrucciones proporcionadas sobre cómo formatear una instrucción para un modelo específico. En este ejemplo, como resultado del entrenamiento previo del modelo y esta instrucción bien elaborada utilizando los componentes descritos, el modelo responde con el resultado adecuado para esta tarea.

Zero-shot prompting vs. few-shot prompting

A diferencia de las indicaciones de zero-shot prompting, las indicaciones de few-shot prompting proporcionan al modelo ejemplos de entrada y salida esperadas para la tarea1. La imagen anterior muestra la diferencia entre el zero-shot prompting y el few-shot prompting, con el one-shot prompting también mostrado como un caso especial. 

Al utilizar el mismo modelo IBM granite-3-8b-instruct, se proporcionan ejemplos de "Problemas" y sus "Clases" correspondientes para esta tarea2 .Los tres ejemplos de entrada y salida que se proporcionan ilustran la estrategia de few-shot prompting. En respuesta a esta instrucción, el modelo hace una predicción razonable de la clase "Medio" (como se destaca en negrita).

Nota: La instrucción se ejecutó con IBM® watsonx.ai Prompt Lab utilizando el modo "Freeform".

Establezca el nombre de la clase para el problema descrito en Alta, Media o Baja. He proporcionado algunos ejemplos de problemas y sus correspondientes nombres de clase. Prediga solo el nombre de la clase para el último problema. Proporcione una breve descripción de por qué se eligió ese nombre de clase.

Nombre de la clase: alta
Descripción: un problema que tiene un alto coste empresarial, afecta a muchos usuarios o a ambos.

Nombre de clase: media
Descripción: un problema que se encuentra en algún punto entre alto y bajo.

Nombre de clase: baja
Descripción: un problema que afecta a unos pocos usuarios, no tiene un coste empresarial elevado o ambas cosas.

Problema: los nuevos usuarios informan de que no pueden crear cuentas.
Clase: alta

Problema: un usuario informa de que las etiquetas se superponen en la función de análisis de la aplicación.
Clase: baja

Problema: los usuarios de Estados Unidos informan de que la aplicación se bloquea al intentar realizar una compra.
Clase: alta

Problema: los usuarios informan de que las imágenes no se cargan en la aplicación.

Clase: media

Explicación: el problema de que las imágenes no se carguen en la aplicación afecta a la experiencia de los usuarios y puede causar frustración, pero no tiene un coste empresarial elevado ni afecta a muchos usuarios. Por lo tanto, se clasifica como un problema de nivel medio.

El few-shot prompting, que es una estrategia derivada del paradigma de aprendizaje few-shot, es típicamente utilizado para mejorar el rendimiento del modelo sobre el zero-shot prompting en una tarea1En este ejemplo, el modelo de IA produce inferencias útiles tanto en el escenario zero-shot como en el few-shot. A la hora de decidir si utilizar zero-shot o few-shot prompting, se deben tener en cuenta las limitaciones del problema y el rendimiento demostrado de ambas estrategias. Reynolds y McDonell (2021) han descubierto que, con mejoras en la estructura de instrucciones, el zero-shot prompting puede superar al few-shot prompting en algunos escenarios4. Schulhoff et al. (2024) han hallado resultados diferentes comparando el rendimiento de varias estrategias de prompting5.

Ventajas y limitaciones de zero-shot prompting

El zero-shot prompting es un enfoque popular debido a sus ventajas6. Los investigadores siguen desarrollando técnicas de prompting para abordar las limitaciones de esta técnica de incitación8.

Ventajas

  1. Simplicidad: las instrucciones son sencillas de construir y fáciles de entender. Este enfoque permite a los usuarios experimentar con diferentes instrucciones sin conocimientos profundos de prompt engineering. 
  2. Facilidad de uso: el zero-shot prompting no requiere ningún dato adicional, lo que lo hace valioso en los casos en los que los datos relevantes son difíciles de obtener o escasos.
  3. Flexibilidad: las instrucciones son fáciles de adaptar según sea necesario. Mejorar una instrucción o actualizar una instrucción debido a circunstancias cambiantes requiere poco esfuerzo.

Limitaciones

  1. Variabilidad del rendimiento: aunque el zero-shot prompting puede ser eficaz, su rendimiento puede variar significativamente en función de la complejidad y especificidad de la tarea. Puede que los modelos tengan dificultades con tareas que requieren un profundo conocimiento del ámbito, una comprensión matizada o resultados muy específicos, lo que da lugar a resultados subóptimos en comparación con los modelos ajustados específicamente para cada tarea.
  2. Dependencia de la calidad del modelo preentrenado: el éxito del zero-shot prompting depende en gran medida de la calidad y la exhaustividad del modelo de lenguaje preentrenado. Si el modelo carece de exposición suficiente a determinados temas, lenguajes o contextos durante el preentrenamiento, es probable que su rendimiento zero-shot en tareas relacionadas sea deficiente.

Los avances en los métodos de entrenamiento para los LLM han mejorado la salida del modelo para el zero-shot prompting en varios casos de uso7.

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

Manténgase a la vanguardia de las últimas noticias de los sectores, herramientas de IA y tendencias emergentes en prompt engineering con el boletín Think. Además, acceda a nuevos artículos explicativos, tutoriales y conocimientos de expertos, directamente en su bandeja de entrada. Consulte la Declaración de privacidad de IBM.

¡Gracias! Está suscrito.

Mejoras en el rendimiento de zero-shot prompting

El zero-shot prompting se basa en el conocimiento preentrenado del modelo fundacional y en su flexibilidad para adaptarse a la instrucción solicitada y proporcionar una respuesta adecuada1.

Mejorar las respuestas en el escenario zero-shot es uno de los objetivos de los investigadores. La precisión de respuesta a instrucciones zero-shot se utiliza a menudo para comparar el rendimiento del modelo al probar nuevos métodos de entrenamiento de modelos7. Dos mejoras que han dado como resultado un mejor rendimiento de zero-shot prompting son el ajuste de instrucciones y el aprendizaje por refuerzo con feedback humano (RLHF)89.

En el ajuste de instrucciones, un modelo se ajusta utilizando el aprendizaje supervisado en un conjunto de datos que incluye instrucciones para varias tareas y resultados para estas tareas. El conjunto de datos incluye tareas como el resumen de textos, la conversión y la comprensión lectora. Esta estrategia de ajuste con un conjunto de datos instructivos ha dado como resultados un mejor rendimiento de zero-shot prompting en nuevas tareas en estas categorías8.

Otro ejemplo del uso del fine-tuning para mejorar los resultados del zero-shot prompting es el fine-tuning de RLHF, en el que el aprendizaje por refuerzo aprende una política que guía el modelo hacia mejores resultados. En este proceso de tres pasos, el modelo se ajusta primero utilizando un conjunto de datos instructivos en el que los humanos han proporcionado las respuestas objetivo. A continuación, el modelo proyecta las salidas a varias instrucciones clasificadas por humanos. Por último, los resultados se utilizan para entrenar un modelo de aprendizaje por refuerzo que aprende una política para seleccionar las mejores salidas en función de estas clasificaciones proporcionadas por humanos12.

El paso final utiliza la capacidad del aprendizaje por refuerzo para utilizar las consecuencias (recompensas o castigos) de las acciones (decisión o camino tomado) para aprender una estrategia (o política) para tomar buenas decisiones. En este caso, el espacio del problema son todas las estrategias potenciales que podrían utilizarse en la selección del modelo de una buena salida como respuesta9.

AI Academy

Conviértase en un experto en IA

Obtenga los conocimientos necesarios para priorizar las inversiones en IA que impulsan el crecimiento empresarial. Dé sus primeros pasos hoy mismo con nuestra AI Academy gratuita y lidere el futuro de la IA en su organización.

Aplicaciones de zero-shot prompting

En comparación con el machine learning supervisado tradicional para el procesamiento del lenguaje natural (PLN), el zero-shot prompting no requiere datos de entrenamiento etiquetados. Los profesionales de la inteligencia artificial y los científicos de datos pueden utilizar la tecnología de IA generativa de grandes modelos de lenguaje en el escenario de zero-shot prompting para varios casos de uso, entre ellos:10

Clasificación de textos

Como se muestra en el ejemplo anterior que clasifica la prioridad de los problemas de TI con el modelo granite-3-8b-instruct de IBM, el modelo puede lograr la clasificación sin ejemplos previos que pertenezcan a las diferentes clases. Esta capacidad es ideal para situaciones en las que existen datos de entrenamiento limitados o no etiquetados. Este tutorial de clasificación zero-shot muestra una implementación de este caso de uso.

Extracción de información

Dado un cuerpo de texto y una pregunta, un LLM puede extraer la información solicitada de acuerdo con una instrucción.

Respuesta a preguntas

Utilizando el conocimiento preentrenado de un modelo, un usuario puede solicitar una respuesta a una pregunta.

Resumen de textos

Dado el texto y una instrucción para el resumen del texto, los grandes modelos de lenguaje pueden ejecutar esta tarea en el escenario de instrucciones zero-shot sin necesidad de resúmenes de ejemplo de otros textos.

Generación

Los LLM generan datos en forma de texto, código, imágenes y más para casos de uso específicos.

Conversación

Normalmente, utilizando modelos ajustados para el chat (como la conocida serie chat-GPT), los LLM pueden interactuar con un usuario en modo chat, logrando muchos de los casos de uso anteriores.

Otros métodos de prompt engineering

Para casos de uso complejos, como tareas de razonamiento de varios pasos, tanto el zero-shot prompting como el few-shot prompting pueden no producir una respuesta adecuada del modelo. Las técnicas de prompting avanzadas, como la cadena de pensamientos y el árbol de pensamientos, pueden tener más éxito en estos casos.

Cadena de pensamientos: el prompting de cadena de pensamientos (CoT) es una estrategia que plantea una tarea al modelo especificando la tarea más grande como una serie de pasos discretos para resolver. Esta exposición de pasos intermedios mejora la capacidad del modelo para generar una respuesta correcta. CoT también permite una mayor transparencia en el proceso de resolución de problemas debido a la elucidación de los pasos intermedios. Esta técnica de prompt engineering muestra éxito en áreas como la mejora del rendimiento del chatbot de atención al cliente, la ayuda a organizar los pensamientos de investigadores y escritores y la generación de descripciones paso a paso para problemas educativos de matemáticas y ciencias11.

Árbol de pensamientos: el prompting de árbol de pensamientos (ToT) generan un árbol de texto ramificado de posibles próximos pasos y las posibles soluciones correspondientes al problema. Esta estructura de árbol permite al modelo explorar múltiples rutas y retroceder, si es necesario, cuando una ruta no da como resultado una solución aceptable. Está diseñado para aproximar las estrategias de razonamiento humano al comparar posibles caminos hacia una solución. Las estrategias comunes para explorar soluciones son la búsqueda en amplitud (BFS) y la búsqueda en profundidad (DFS), junto con los enfoques de búsqueda heurística y aprendizaje por refuerzo. Los investigadores han utilizado esta aplicación para resolver acertijos como el sudoku y el Juego de 2412, 13.

Soluciones relacionadas
IBM watsonx.ai

Entrene, valide, ajuste e implemente IA generativa, modelos fundacionales y capacidades de machine learning con IBM watsonx.ai, un estudio empresarial de nueva generación para desarrolladores de IA. Cree aplicaciones de IA en menos tiempo y con menos datos.

Explore watsonx.ai
Soluciones de inteligencia artificial

Ponga la IA al servicio de su negocio con la experiencia líder del sector y el portfolio de soluciones de IA de IBM.

Explore las soluciones de IA
Servicios y consultoría de inteligencia artificial (IA)

Los servicios de IA de IBM Consulting ayudan a reinventar la forma de trabajar de las empresas usando IA para la transformación.

Explore los servicios de IA
Dé el siguiente paso

Gracias a la IA, IBM Concert descubre información crucial sobre sus operaciones y ofrece recomendaciones de mejora personalizadas para cada aplicación. Descubra cómo Concert puede hacer avanzar su negocio.

Explorar el concierto Explore las soluciones de automatización de procesos empresariales
Notas a pie de página

1. E. Saravia. "Prompt Engineering Guide". https://github.com/dair-ai/Prompt-Engineering-Guide (consultado en octubre de 2024).

2. "Granite 3.0 Language Models". IBM Research. Yorktown Heights. NY. Octubre de 2024. https://github.com/ibm-granite/granite-3.0-language-models/blob/main/paper.pdf

3. B. Romera-Paredes, P. Torr. "An embarrassingly simple approach to zero-shot learning". En ICML. 2015. PP. 2152–2161. https://proceedings.mlr.press/v37/romera-paredes15.pdf.

4. L. Reynolds, K. McDonell. "Prompt Programming for Large Language Models: Beyond the Few-Shot Paradigm". Febrero de 2021. https://doi.org/10.48550/arXiv.2102.07350.

5. S. Schulhoff, M. Ilie, N. Balepur, K. Kahadze, A. Liu, C. Si, Y. Li, A. Gupta, H. Han, S. Schulhoff, P. S. Dulepet, S. Vidyadhara, D. Ki, S. Agrawal, C. Pham, G. Kroiz, F. Li, H. Tao, A. Srivastava et al. "The Prompt Report: A Systematic Survey of Prompting Techniques". Diciembre de 2024. https://doi.org/10.48550/arXiv.2406.06608.

6. Y. Li, Yinheng, "A Practical Survey on Zero-shot Prompt Design for In-context Learning". En RANLP. Julio de 2023. PP. 641‑647. https://acl-bg.org/proceedings/2023/RANLP%202023/pdf/2023.ranlp-1.69.pdf.

7. H. Touvron, T. Lavril, G. Izacard, X. Martinet, M.-A. Lachaux, T. Lacroix, B. Rozi`ere, N. Goyal, E. Hambro, F. Azhar, A. Rodriguez, A. Joulin, E. Grave y G. Lample. “LLaMA: Open and efficient foundation language models”. Febrero de 2023 https://doi.org/10.48550/arXiv.2302.13971.

8. J. Wei, M. Bosma, V. Y. Zhao, K. Guu, A. W. Yu, B. Lester, N. Du, A. M. Dai y Q. V. Le. "Finetuned Language Models are Zero-Shot Learners". En ICLR. 2022. https://doi.org/10.48550/arXiv.2109.01652.

9. L. Ouyang, J. Wu, X. Jiang, D. Almeida, C. L. Wainwright, P. Mishkin, C. Zhang, S. Agarwal, K. Slama, A. Ray, J. Schulman, J. Hilton, F. Kelton, L. Miller, M. Simens, A. Askell, P. Welinder, P. Christiano, J. Leike, y R. Lowe. “Training language models to follow instructions with human feedback”. En NeurIPS. 2022. https://proceedings.neurips.cc/paper_files/paper/2022/file/b1efde53be364a73914f58805a001731-Paper-Conference.pdf.

10. P. Liu, W. Yuan, J. Fu, Z. Jiang, H. Hayashi, y G. Neubig. “Pre-train, prompt and predict: A systematic survey of prompting methods in Natural Language Processing”. ACM Computing Surveys. Vol. 55. N.º 9. PP. 1–35. Enero de 2023. https://dl.acm.org/doi/pdf/10.1145/3560815.

11. J. Wei, X. Wang, D. Schuurmans, M. Bosma, B. Ichter, F. Xia, E. Chi, Q. Le, y D. Zhou, “Chain-of-thought prompting elicits reasoning in large language models". Enero de 2023. https://doi.org/10.48550/arXiv.2201.11903.

12. J. Long, "Large Language Model Guided Tree-of-Thought". Mayo de 2023. https://doi.org/10.48550/arXiv.2305.08291.

13. S. Yao, D. Yu, J. Zhao, I. Shafran, T. L. Griffiths, Y. Cao, y K. Narasimhan. "Tree of Thoughts: Deliberate Problem Solving with Large Language Models". Diciembre de 2023. https://doi.org/10.48550/arXiv.2305.10601.