Técnicas de prompt engineering

Autor(es):

Vrunda Gadesha

AI Advocate | Technical Content Author

Las técnicas de prompt engineering son estrategias utilizadas para diseñar y estructurar instrucciones, entradas o indicaciones, proporcionadas a los modelos de IA, en particular a los modelos de lenguaje de gran tamaño (LLM) como GPT-4 de openAI, Google Gemini o IBM® Granite. Estas técnicas tienen como objetivo guiar los sistemas de IA generativa (IA gen) para producir respuestas precisas, relevantes y contextualmente apropiadas, lo que permite a los usuarios lograr los resultados deseados de manera efectiva.

Los modelos de lenguaje de gran tamaño, que se basan en algoritmos avanzados de machine learning, son capaces de comprender y generar texto similar al humano. El prompt engineering aprovecha esta capacidad creando entradas que ayudan al modelo a realizar tareas complejas, como resúmenes, traducción, escritura creativa o resolución de problemas, con mayor precisión. Al experimentar con diferentes estructuras de instrucciones, los usuarios pueden influir en el comportamiento de los LLM para optimizar su rendimiento en diversas aplicaciones.

A medida que la IA generativa continúa desempeñando un papel clave en varios dominios, comprender las técnicas de prompt engineering se ha convertido en esencial para desbloquear todo su potencial y adaptar los modelos de IA para satisfacer necesidades específicas de manera eficiente.

Comprender las instrucciones

Una instrucción es la entrada o la consulta proporcionada a un modelo de IA, como un modelo de lenguaje de gran tamaño, para generar una respuesta. Sirve como mecanismo principal para guiar el comportamiento del modelo, definir la tarea y establecer el contexto para la interacción. El diseño de una instrucción afecta significativamente a la calidad y relevancia del resultado, por lo que es esencial elegir el tipo de instrucción adecuado para tareas específicas.

Para lograr los mejores resultados de los modelos de IA, es esencial comprender las diversas formas en las que se pueden estructurar las instrucciones para adaptarse a diferentes tareas y objetivos. Hay tres formas principales de estructurar las instrucciones: instrucciones directas, instrucciones abiertas e instrucciones específicas de la tarea.

Las instrucciones directas son comandos claros y específicos que le dicen a la IA exactamente qué hacer. Estas instrucciones son ideales para tareas sencillas en las que el usuario tiene una expectativa clara del resultado. Las instrucciones directas se basan en la capacidad del modelo para analizar instrucciones explícitas y generar respuestas que se alinean estrechamente con el comando. Cuanto más detallada sea la instrucción, más probable es que el resultado cumpla con las expectativas.

Ejemplo:

Write a poem about nature.

En este caso, la IA conoce el formato exacto [un poema] y el tema [naturaleza] para generar el texto.

Las instrucciones abiertas son menos restrictivas y animan a la IA a explorar ideas más amplias o a proporcionar respuestas creativas e interpretativas. Estas instrucciones son útiles para la lluvia de ideas, la narración de historias o los debates exploratorios en los que el usuario valora la variedad y la originalidad de la output. Las instrucciones abiertas aprovechan las capacidades generativas del modelo sin imponer restricciones. El modelo se basa en sus datos de entrenamiento para inferir el mejor enfoque para la instrucción, lo que puede producir resultados diversos o inesperados.

Ejemplo:

Tell me about the universe.

Aquí, la IA tiene la libertad de decidir qué aspectos del universo discutir, como su origen, estructura o teorías científicas.

Las instrucciones específicas de tareas están diseñadas para tareas precisas y orientadas a objetivos, como traducciones, resúmenes o cálculos. Estas instrucciones suelen estar elaboradas con claridad y pueden incluir contexto o ejemplos adicionales para ayudar a garantizar respuestas precisas. Las instrucciones específicas de tareas aprovechan la comprensión del modelo de tareas especializadas. Pueden incorporar técnicas avanzadas de prompting como few-shot prompting (proporcionando ejemplos) o zero-shot prompting (sin proporcionar ejemplos pero confiando en el conocimiento preentrenado del modelo).

Ejemplo: 

Translate this text into French: ‘Hello.’

El modelo comprende tanto la tarea de traducción del idioma como la entrada específica, lo que le permite producir la salida deseada: "Bonjour".

Al comprender este tipo de instrucciones y los matices técnicos que hay detrás de ellas, los usuarios pueden crear instrucciones que guíen los modelos de IA de forma eficaz, optimizando la calidad y la relevancia de las respuestas. 

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.

Técnicas clave en prompt engineering

Para maximizar la eficacia de los modelos de IA, el prompt engineering emplea una variedad de técnicas adaptadas a diferentes tareas y objetivos. A continuación se presentan varias técnicas clave, cada una de ellas explicada con ejemplos de instrucciones diseñadas para lograr resultados específicos. 

Para demostrar la eficacia de varias técnicas de prompt engineering, veamos un caso de uso como caso de uso central: explicar el cambio climático. La tarea se enmarca de la siguiente manera: 

Explain the concept of climate change, its causes, and its effects in a way that is accessible to a general audience.

Cada técnica aborda la tarea de manera diferente, ofreciendo diferentes niveles de orientación, complejidad y metodología. A continuación, exploramos cómo se pueden aplicar estas técnicas a este caso de uso, con instrucciones adaptadas para resaltar sus capacidades únicas.

Zero-shot prompting

El zero-shot prompting consiste en pedir al modelo que realice una tarea sin proporcionar ningún ejemplo u orientación previos. Se basa completamente en el conocimiento preentrenado de la IA para interpretar y responder a la instrucción[1].

Ejemplo de instrucción:

Explain the concept of climate change, its causes, and its effects in simple terms.

El modelo no recibe ejemplos previos ni contexto adicional y debe basarse únicamente en su conocimiento preentrenado para generar la output.

Few-shot prompting

El few-shot prompting incluye un pequeño número de ejemplos dentro de la instrucción para demostrar la tarea al modelo. Este enfoque ayuda al modelo a comprender mejor el contexto y el resultado esperado[2].

Ejemplo de instrucción:

Here are some examples of how to explain complex topics:

- Topic: Photosynthesis
- Explanation: Photosynthesis is the process by which plants convert sunlight, water, and carbon dioxide into energy and oxygen.
- Topic: Gravity
- Explanation: Gravity is the force that pulls objects toward each other, like how the Earth pulls us to its surface.

Now explain: Climate Change.

Al proporcionar algunos ejemplos de cómo explicar otros temas, el modelo se guía por el tono y el nivel de simplicidad esperados para la explicación del cambio climático.

Prompting de cadena de pensamiento (CoT)

Las indicaciones de CoT animan al modelo a razonar un problema paso a paso, dividiéndolo en componentes más pequeños para llegar a una conclusión lógica[3].

Ejemplo de instrucción:

Step 1: Define what climate change is.
Step 2: Explain the causes of climate change.
Step 3: Describe its effects on the planet.

Now, follow these steps to explain climate change.

Se anima al modelo a pensar paso a paso, desglosando la explicación en partes más pequeñas y lógicas para mayor claridad.

Meta prompting

El meta prompting consiste en pedir al modelo que genere o perfeccione sus propias instrucciones para realizar mejor la tarea. Esta técnica puede mejorar la calidad de la salida aprovechando la capacidad de autodirección del modelo[4].

Ejemplo de instrucción:

Create a prompt that will help you explain climate change, its causes, and its effects in simple terms

El modelo genera su propia instrucción antes de intentar explicar el tema, lo que puede mejorar la relevancia y la calidad de la salida.

Autoconsistencia

La autocoherencia utiliza varias generaciones independientes del modelo para identificar la respuesta más coherente o precisa. Es particularmente útil para tareas que requieren razonamiento o interpretación[5].

Ejemplo de instrucción:

Provide three different explanations of climate change, its causes, and its effects. Then identify the most coherent and clear explanation

El modelo produce múltiples respuestas independientes y selecciona la más consistente o coherente como resultado.

Generar indicaciones de conocimiento

Esta técnica consiste en pedir al modelo que genere conocimientos previos antes de abordar la tarea principal, lo que mejora su capacidad para producir respuestas informadas y precisas[6].

Ejemplo de instrucción:

Before explaining climate change, first list the key scientific principles related to it. Once done, use these principles to explain the concept, its causes, and its effects.

El modelo genera primero conocimiento de fondo (por ejemplo, gases de efecto invernadero, calentamiento global) para proporcionar una explicación más informada.

Cadena de instrucciones

La cadena de instrucciones implica enlazar varias instrucciones entre sí, donde la salida de una instrucción sirve como entrada para la siguiente. Esta técnica es ideal para procesos de varios pasos.

Ejemplo de instrucción:

What is climate change? Provide a brief definition.

Siguiente instrucción basada en la respuesta anterior:

What are the primary causes of climate change?

Siguiente instrucción basada en la respuesta anterior: 

What are the effects of climate change on the environment and human life?

La tarea se divide en una cadena de instrucciones más pequeñas, con la salida de cada paso alimentando el siguiente para una explicación más estructurada.

Árbol de pensamientos en prompting

El árbol de pensamientos en prompting anima al modelo a explorar múltiples ramas de razonamiento o ideas antes de llegar a un resultado final[7][8].

Ejemplo de instrucción:

List three possible ways to explain climate change to a general audience. For each method, describe its advantages and disadvantages. Then choose the best explanation and elaborate on it

El modelo Explorar múltiples enfoques de la explicación y selecciona el más eficaz, proporcionando un output completo.

Generación aumentada por recuperación (RAG)

La generación aumentada por recuperación (RAG) combina la recuperación de información externa con la IA generativa para producir respuestas basadas en conocimientos actualizados o específicos del dominio[9].

Ejemplo de instrucción:

Using the global temperature datasets from NASA GISS (GISTEMP) dataset on climate science, explain climate change, its causes, and its effects in simple terms.

El modelo combina sus capacidades generativas con el conocimiento externo para producir una explicación informada.

Razonamiento automático y uso de herramientas

Esta técnica integra capacidades de razonamiento con herramientas externas o interfaces de programación de aplicaciones (API), lo que permite que el modelo utilice recursos como calculadoras o motores de búsqueda[10].

Ejemplo de instrucción:

Use the provided climate data to calculate the global temperature rise over the last century, and then explain how this relates to climate change, its causes, and its effects.

El modelo integra el razonamiento con herramientas externas (por ejemplo, calculadoras o API) para analizar datos y proporcionar una explicación basada en datos.

Ingeniero de prompt automático

Este método implica utilizar la propia IA para generar y optimizar indicaciones para tareas específicas, automatizando el proceso de elaboración de instrucciones eficaces.

Ejemplo de instrucción:

Generate a prompt that will help explain climate change, its causes, and effects. Then use the generated prompt to provide the explanation.

El modelo automatiza la creación de una instrucción optimizada para mejorar la calidad de su respuesta.

Active-prompt

El Active-prompting ajusta dinámicamente la instrucción en función de las salidas intermedias del modelo, refinando la entrada para obtener resultados[11].

Instrucción inicial

Explain climate change, its causes, and its effects in simple terms.

Instrucción de seguimiento

Add more detail about the causes of climate change, focusing on human activities.

La instrucción evoluciona dinámicamente en función del resultado intermedio, refinando la respuesta a lo largo de las iteraciones.

Directional stimulus prompting

El directional stimulus prompting (DSP) utiliza señales direccionales para empujar el modelo hacia un tipo específico de respuesta o perspectiva[12].

Ejemplo de instrucción:

Explain the concept of climate change from an environmentalist’s perspective, focusing on the need for immediate action.

El modelo se empuja hacia una perspectiva o tono específico, lo que influye en el marco de su explicación.

Modelos de lenguaje asistidos por programas (PALM)

PALM integra capacidades de programación para aumentar las habilidades computacionales y de razonamiento del modelo[13].

Ejemplo de instrucción:

Write Python code to visualize the increase in global temperatures over time. Then explain how this data relates to climate change, its causes, and its effects.

El modelo combina la programación con la generación de lenguaje para proporcionar tanto una visualización como una explicación.

ReAct

ReAct combina instrucciones de razonamiento y actuación, alentando al modelo a pensar críticamente y actuar en función de su razonamiento[14].

Ejemplo de instrucción:

Analyze the following climate data and identify key trends. Based on your analysis, explain the concept of climate change, its causes, and its effects.

Este ejemplo ilustra cómo el modelo puede combinar el razonamiento analítico con conocimientos que se pueden ejecutar.

Reflexión

La reflexión permite al modelo evaluar sus resultados anteriores y refinarlos para mejorar la precisión o la coherencia[15].

Ejemplo de instrucción:

Here is my first attempt at explaining climate change: [Insert initial output]. Review this explanation and improve it for clarity and accuracy.

El modelo reflexiona sobre su output y lo mejora iterativamente.

Cadena de pensamiento multimodal (CdT multimodal)

Esta técnica integra el razonamiento de la cadena de pensamiento en múltiples modalidades, como texto, imágenes o audio[16].

Ejemplo de instrucción:

Analyze this infographic on global warming trends, then explain climate change, its causes, and its effects step by step

El modelo integra el razonamiento en múltiples modalidades (texto e imágenes) para ofrecer una explicación completa.

Solicitud de gráficos

El prompting de gráficos aprovecha las estructuras basadas en gráficos para organizar y razonar a través de relaciones complejas entre conceptos o puntos de datos.

Ejemplo de instrucción:

Using the provided graph of CO₂ emissions over time, explain how it relates to climate change, its causes, and its effects.

El modelo utiliza un razonamiento basado en gráficos para conectar puntos de datos y generar una explicación perspicaz.

Por lo tanto, podemos ver cómo se pueden aplicar diferentes técnicas de prompt engineering a una sola tarea. Al utilizar la misma tarea en métodos como zero-shot, few-shot, cadena de pensamiento y árbol de pensamientos, podemos ver cómo cada técnica estructura la tarea de manera diferente y guía a la IA para producir respuestas únicas. Estos ejemplos muestran la flexibilidad y la creatividad del prompt engineering para resolver una variedad de desafíos. Se anima a los lectores a probar estos ejemplos de instrucciones con diferentes modelos de IA o aplicaciones, como los modelos Granite de IBM, ChatGPT de OpenAI, Bard de Google, Claude de Anthropic, Cohere o Jurassic de AI21 Labs. Esto permite a los usuarios ver cómo varían los resultados y encontrar lo que mejor se adapta a sus necesidades.

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.

Desafíos con técnicas de prompt engineering

Aunque las técnicas de prompt engineering son potentes, conllevan varios retos. Crear instrucciones eficaces que produzcan resultados precisos de forma sistemática puede ser difícil, especialmente para tareas que requieren un razonamiento complejo, comprensión del sentido común o respuestas matizadas. La alucinación es otro problema común, en el que los modelos de IA generativa generan información inexacta o totalmente inventada. Confiar en plantillas estructuradas o ajustar el modelo puede ayudar a mitigar algunos de estos problemas, pero diseñar instrucciones que funcionen en diversos escenarios sigue siendo un proceso de prueba y error. Además, equilibrar las capacidades generales de la inteligencia artificial con objetivos específicos de tareas puede ser complicado, especialmente para tareas especializadas o específicas de un dominio.

Aplicaciones de técnicas de prompt engineering

Las técnicas de prompt engineering tienen una amplia gama de aplicaciones en diversos campos. En los chatbots, ayudan a refinar las respuestas generadas para mejorar las interacciones de los usuarios en tiempo real. Para los desarrolladores, las instrucciones pueden ayudar a generar fragmentos de código o crear tutoriales paso a paso para conceptos de programación. En formación, pueden simplificar explicaciones o resolver un problema matemático con un razonamiento detallado. Las empresas utilizan el prompt engineering para la toma de decisiones generando resultados de la IA perspicaces adaptados a escenarios específicos. A gran escala, estas técnicas se emplean en la creación de contenidos, la atención al cliente y los flujos de trabajo automatizados, lo que hace que los sistemas de IA sean más eficientes y adaptables a diversas tareas.

Futuro de las técnicas de prompt engineering

El futuro de las técnicas de prompt engineering radica en avanzar en el procesamiento del lenguaje natural para ayudar a garantizar respuestas más precisas y relevantes en diversas aplicaciones. A medida que evolucionen los modelos de IA, mejorará su capacidad de razonamiento, lo que les permitirá gestionar tareas más complejas con un mínimo de indicaciones. También podemos esperar el desarrollo de herramientas y marcos más inteligentes para automatizar y optimizar la creación de instrucciones, haciendo que las interacciones con la IA sean más intuitivas, eficientes y personalizadas para los usuarios en diversos dominios.

Resumen

Las técnicas de prompt engineering son esenciales para optimizar las interacciones de la IA y desbloquear el potencial completo de los modelos de lenguaje de gran tamaño. Mediante el uso de enfoques estructurados como zero-shot, few-shot, cadena de pensamiento y árbol de pensamientos, estas técnicas permiten a la IA abordar una amplia gama de tareas, desde chatbots hasta toma de decisiones y educación. A pesar de desafíos como las alucinaciones y el diseño de instrucciones efectivas, las aplicaciones de prompt engineering continúan expandiéndose en todos los dominios, proporcionando resultados de la IA más inteligentes y personalizados. A medida que avanzan los progresos en el procesamiento del lenguaje natural y las capacidades de razonamiento, el futuro del prompt engineering promete una eficiencia y adaptabilidad aún mayores. Se anima a los lectores a experimentar con estas técnicas en diferentes modelos de IA para explorar sus capacidades y perfeccionar sus resultados.

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] Wei, J., Bosma, M., Zhao, V.Y., Guu, K., Yu, A.W., Lester, B., Du, N., Dai, A.M. y Le, Q.V. 2021. Finetuned language models are zero-shot learners. arXiv. Preimpresión de arXiv:2109.01652.

[2] Touvron, H., Lavril, T., Izacard, G., Martinet, X., Lachaux, M.A., Lacroix, T., Rozière, B., Goyal, N., Hambro, E., Azhar, F. y Rodriguez, A. 2023. Llama: Open and efficient foundation language models. arXiv. Preimpresión de arXiv:2302.13971.

[3] Wei, J., Wang, X., Schuurmans, D., Bosma, M., Xia, F., Chi, E., Le, Q.V. y Zhou, D. 2022. Chain-of-thought prompting elicits reasoning in large language models. Advances in neural information processing systems. 35. PP. 24824-24837.

[4] Zhang, Y., Yuan, Y. y Yao, A.C.C. 2023. Meta prompting for ai systems. arXiv. Preimpresión de arXiv:2311.11482.

[5] Wang, X., Wei, J., Schuurmans, D., Le, Q., Chi, E., Narang, S., Chowdhery, A. y Zhou, D. 2022. Self-consistency improves chain of thought reasoning in language models. arXiv. Preimpresión de arXiv:2203.11171.

[6] Liu, J., Liu, A., Lu, X., Welleck, S., West, P., Bras, R.L., Choi, Y. y Hajishirzi, H. 2021. Generated knowledge prompting for commonsense reasoning. arXiv. Preimpresión de arXiv:2110.08387.

[7] Yao, S., Yu, D., Zhao, J., Shafran, I., Griffiths, T., Cao, Y. y Narasimhan, K. 2023. Tree of thoughts: Deliberate problem solving with large language models. Advances in neural information processing systems. 36. PP. 11809-11822.

[8] Long, J. 2023. Large language model guided tree-of-thought. arXiv. Preimpresión de arXiv:2305.08291.

[9] Lewis, P., Perez, E., Piktus, A., Petroni, F., Karpukhin, V., Goyal, N., Küttler, H., Lewis, M., Yih, W.T., Rocktäschel, T. y Riedel, S. 2020. Retrieval-augmented generation for knowledge-intensive nlp tasks. Advances in neural information processing systems. 33. PP. 9459-9474.

[10] Paranjape, B., Lundberg, S., Singh, S., Hajishirzi, H., Zettlemoyer, L. y Ribeiro, M.T. 2023. Art: Automatic multi-step reasoning and tool-use for large language models. arXiv. Preimpresión de arXiv:2303.09014.

[11] Diao, S., Wang, P., Lin, Y., Pan, R., Liu, X. y Zhang, T. 2023. Active prompting with chain-of-thought for large language models. arXiv. Preimpresión de arXiv:2302.12246.

[12] Li, Z., Peng, B., He, P., Galley, M., Gao, J. y Yan, X. 2023. Guiding large language models via directional stimulus prompting. Advances in Neural Information Processing Systems. 36. PP. 62630-62656

[13] Gao, L., Madaan, A., Zhou, S., Alon, U., Liu, P., Yang, Y., Callan, J. y Neubig, G. 2022. Pal: program-aided language models. arXiv. Preimpresión de arXiv:2211.10435.

[14] Yao, S., Zhao, J., Yu, D., Du, N., Shafran, I., Narasimhan, K. y Cao, Y. 2023. Enero. React: Synergizing reasoning and acting in language models. En International Conference on Learning Representations (ICLR).

[15] Shinn, N., Cassano, F., Gopinath, A., Narasimhan, K. y Yao, S. 2023. Reflexion: Language agents with verbal reinforcement learning. Advances in Neural Information Processing Systems. 36. PP. 8634-8652.

[16] Zhang, Z., Zhang, A., Li, M., Zhao, H., Karypis, G. y Smola, A. 2023. Multimodal chain-of-thought reasoning in language models. arXiv. Preimpresión de arXiv:2302.00923.

[17] Liu, Z., Yu, X., Fang, Y. and Zhang, X. 2023. Abril. Graphprompt: Unifying pre-training and downstream tasks for graph neural networks. En Actas de la conferencia web de la ACM de 2023 (PP. 417-428).