¿Qué es 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 ingeniería rápida que se basa en el entrenamiento previo de un modelo de lenguaje grande (LLM) para inferir una respuesta adecuada. A diferencia de otros métodos de ingeniería rápida, como few-shot prompting, los modelos no reciben resultados cuando se les da instrucciones con la técnica zero-shot prompting.1

Cómo funciona zero-shot prompting

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

En el siguiente ejemplo, se instruye al modelo granite-3-8b-instruct de la serie Granite de IBM  mediante zero-shot prompting en un caso de uso de clasificación.2 En este caso, se le 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 solicitud se ejecutó en IBM watsonx.ai Prompt Lab utilizando el modo "Freeform".

Establece el Nombre de la clase para el problema descrito en Alto, Medio o Bajo. Predice solo el nombre de la clase para el último problema. Proporciona una breve descripción de por qué se eligió ese Nombre de clase.

Nombre de clase: Alto
Descripción: Un problema que tiene un alto costo comercial, afecta a muchos usuarios o ambos.

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

Nombre de clase: Bajo
Descripción: Un problema que tiene un impacto en unos cuantos usuarios; no tiene un alto costo comercial o ambos.

Problema: Los usuarios informan que no pueden cargar archivos.

Clase: Alto

Descripción: este problema se considera alto porque afecta a muchos usuarios y tiene un alto costo comercial. 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 costo empresarial.

Una estrategia de zero-shot prompting suele ser la de ingeniería rápida predeterminada cuando se asigna a un modelo un nuevo problema.1 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 problemas.3

Componentes de una instrucción

Diagrama de zero-shot prompting Figura 2: Componentes de una instrucción

Si bien el modelo no incluye instrucciones de ejemplo, sí incluye detalles sobre cómo completar la tarea:1

Instrucción: en primer lugar, las instrucciones proporcionadas al modelo son"Establece 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 resultado: 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 la clase del problema. Los indicadores de resultados 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, datos de entrada e indicadores de resultados.1 Los 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 con los componentes descritos, el modelo responde con los resultados adecuados para esta tarea.

Zero-shot prompting frente a few-shot prompting

Comparación de zero-shot, one-shot y few-shot prompting Figura 2: comparación de zero-shot, one-shot y few-shot prompting

A diferencia de zero-shot prompting, few-shot prompting proporciona al modelo ejemplos de entrada y salida esperadas para la tarea.1 La imagen anterior representa la diferencia entre zero-shot prompting y few-shot prompting, y one-shot prompting también se muestra 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 tarea.2 Los tres ejemplos de entrada y salida que se proporcionan ilustran la estrategia 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".

Establece el Nombre de la clase para el problema descrito en Alto, Medio o Bajo. He proporcionado algunos ejemplos de problemas y sus correspondientes nombres de clase. Predice solo el nombre de la clase para el último problema. Proporciona una breve descripción de por qué se eligió ese Nombre de clase.

Nombre de clase: Alto
Descripción: Un problema que tiene un alto costo comercial, afecta a muchos usuarios o ambos.

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

Nombre de clase: Bajo
Descripción: Un problema que tiene un impacto en unos pocos usuarios, no tiene un alto costo comercial o ambos.

Problema: Los nuevos usuarios informan que no pueden crear cuentas.
Clase: Alto

Problema: Un usuario informa que las etiquetas se superponen en la función de analytics de la aplicación.
Clase: Bajo

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

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

Clase: Medio

Explicación: El problema de las imágenes que no se cargan en la aplicación afecta la experiencia de los usuarios y puede causar frustración, pero no tiene un alto costo comercial ni afecta a muchos usuarios. Por lo tanto, se clasifica como un problema de nivel medio.

Few-shot prompting, que es una estrategia derivada del paradigma de aprendizaje few-shot, se usa normalmente para mejorar el rendimiento del modelo sobre zero-shot prompting en una tarea.1 En este ejemplo, el modelo de IA produce inferencias útiles tanto en el escenario de zero-shot como en el de few-shot. Al decidir si utilizar zero-shot o few-shot prompting, se deben considerar las limitaciones del problema y el rendimiento demostrado de ambas estrategias. Reynolds y McDonell (2021) descubrieron que, con mejoras en la estructura de las instrucciones, zero-shot prompting puede superar a few-shot prompting en algunos escenarios.4 Schulhoff et al. (2024) encuentran diferentes resultados comparando el rendimiento de varias estrategias de prompting.5

Ventajas y limitaciones de zero-shot prompting

zero-shot prompting es un enfoque popular debido a sus ventajas.6 Los investigadores siguen desarrollando técnicas para abordar las limitaciones de esta técnicas de ingeniería de instrucciones.8

Ventajas

  1. Simplicidad: las instrucciones son simples de construir y fáciles de entender. Este enfoque permite a los usuarios experimentar con diferentes instrucciones sin un conocimiento profundo de ingeniería rápida. 
  2. Facilidad de uso: zero-shot prompting no requiere ningún dato adicional, lo que lo hace valiosa en los casos en 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: si bien zero-shot prompting puede ser efectivo, su rendimiento puede variar significativamente según la complejidad y especificidad de la tarea. Los modelos pueden tener dificultades con tareas que requieren un conocimiento profundo del dominio, una comprensión matizada o resultados muy específicos, lo que lleva a resultados subóptimos en comparación con los modelos ajustados específicos de la tarea.
  2. Dependencia de la calidad del modelo previamente entrenado: el éxito de zero-shot prompting depende en gran medida de la calidad y la exhaustividad del modelo de lenguaje previamente entrenado. Si el modelo carece de exposición suficiente a ciertos temas, lenguajes o contextos durante el entrenamiento previo, 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 el resultado del modelo para zero-shot prompting en varios casos de uso.7

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.

Mejoras en el rendimiento de zero-shot prompting

Zero-shot prompting se basa en el conocimiento previamente entrenado del modelo fundacional y su flexibilidad para adaptarse a la instrucción solicitada y proporcionar una respuesta adecuada.1

Mejorar las respuestas en el escenario zero-shot es un enfoque de los investigadores.La precisión de la respuesta de zero-shot prompting se utiliza a menudo para comparar el rendimiento del modelo mientras se prueban nuevos métodos de entrenamiento de modelos.7 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).8, 9

En el ajuste de instrucciones, un modelo se ajusta mediante el uso de 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 resultado un mejor rendimiento de zero-shot prompting en nuevas tareas en estas categorías.8

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

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 un buen resultado como respuesta.9

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.

Aplicaciones de zero-shot prompting

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

Clasificación de texto

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 previamente entrenado de un modelo, un usuario puede solicitar una respuesta a una pregunta.

Resumen de texto

Dado el texto y una instrucción para el resumen del texto, los modelos de lenguaje grandes pueden ejecutar esta tarea en el escenario de zero-shot prompting sin requerir 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

Por lo general, utilizando modelos ajustados para 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 ingeniería rápida

Para casos de uso complejos, como tareas de razonamiento de varios pasos, es posible que ni zero-shot prompting ni few-shot prompting produzcan una respuesta adecuada del modelo. Las técnicas de ingeniería de instrucciones avanzadas, incluyendo chain-of-thoughts y tree-of-thoughts, pueden ser más exitosas en estos casos.

Chain-of-thoughts: chain-of-thought (CoT) prompting 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 ingeniería rápida muestra éxito en áreas que incluyen mejorar el rendimiento del chatbot de atención al cliente, ayudar a organizar los pensamientos de investigadores y escritores, y generar descripciones paso a paso para problemas educativos de matemáticas y ciencias.11

Tree of thoughts: tree-of-thought (ToT) prompting genera un árbol de texto ramificado de posibles próximos pasos y las posibles soluciones correspondientes al problema. Esta estructura de árbol permite que el modelo explore múltiples rutas y retroceda, 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 caminos potenciales 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 sudoku y el juego del 24.12, 13

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. 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," in 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 and 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 and Q. V. Le, "Finetuned Language Models are Zero-Shot Learners," in 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, and R. Lowe, “Training language models to follow instructions with human feedback,” in 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, and G. Neubig, “Pre-train, prompt and predict: A systematic survey of prompting methods in Natural Language Processing,” ACM Computing Surveys, vol. 55, no. 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, and 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, and K. Narasimhan, "Tree of Thoughts: Deliberate Problem Solving with Large Language Models," diciembre de 2023, https://doi.org/10.48550/arXiv.2305.10601.