Connect with us

Ingeniería de prompts

ChatGPT y la Ingeniería de Prompts Avanzada: Impulsando la Evolución de la IA

mm

OpenAI ha sido fundamental en el desarrollo de herramientas revolucionarias como el OpenAI Gym, diseñado para el entrenamiento de algoritmos de refuerzo, y los modelos GPT-n. También se destaca DALL-E, un modelo de IA que crea imágenes a partir de entradas textuales. Uno de estos modelos que ha llamado la atención es ChatGPT de OpenAI, un ejemplo destacado en el ámbito de los Grandes Modelos de Lenguaje.

GPT-4: Ingeniería de Prompts

ChatGPT ha transformado el paisaje de los chatbots, ofreciendo respuestas similares a las humanas a las entradas de los usuarios y expandiendo sus aplicaciones en diversos dominios, desde el desarrollo y prueba de software hasta la comunicación empresarial e incluso la creación de poesía.

En manos de empresas y particulares, GPT-4, por ejemplo, podría servir como un depósito inagotable de conocimientos, versado en temas que van desde las Matemáticas y la Biología hasta los Estudios Legales. Estos modelos de IA sofisticados y accesibles están en condiciones de redefinir el futuro del trabajo, el aprendizaje y la creatividad.

Logotipo futurista de ChatGPT

Los modelos generativos como GPT-4 pueden producir nuevos datos basados en entradas existentes. Esta característica distintiva les permite emprender diversas tareas, incluyendo la generación de texto, imágenes, música y video.

En el contexto de ChatGPT y los modelos de OpenAI, un prompt es la entrada que los usuarios proporcionan a los modelos, generalmente en forma de texto. Los prompts sirven como el medio principal de controlar la salida generada por estos modelos, lo que los hace cruciales para conversaciones exitosas y relevantes.

El Impacto de la Calidad del Prompt

Usar prompts bien definidos es la clave para participar en conversaciones útiles y significativas con los sistemas de IA. Los prompts mal definidos pueden resultar en salidas que no son útiles para el usuario y pueden incluso llevar a contenido engañoso.

Para demostrar el impacto de la calidad del prompt, comparemos dos prompts diferentes dados a ChatGPT. El primer prompt, mal definido y asumiendo conocimiento previo, genera una respuesta potencialmente inútil para el usuario. Por otro lado, el segundo prompt proporciona más contexto y ejemplos, asegurando una respuesta más relevante y comprensible.

Prompt 1: “Háblame sobre las Redes Neuronales Convolutivas.”

Respuesta 1: “Las Redes Neuronales Convolutivas (CNN) son redes de perceptrón mult capas que consisten en capas completamente conectadas y capas de pooling. Se utilizan comúnmente en tareas de reconocimiento de imágenes. El proceso implica aplicar filtros a las imágenes de entrada y reducirlas utilizando capas de pooling.”

Prompt 2: “Quiero aprender sobre las Redes Neuronales Convolutivas, pero no tengo conocimiento previo de Redes Neuronales Artificiales. ¿Puedes proporcionarme una explicación amigable para principiantes y un ejemplo de cómo las CNN se utilizan en el reconocimiento de imágenes?”

Respuesta 2: “Las Redes Neuronales Convolutivas (CNN) son un tipo de red neuronal principalmente utilizada para tareas de reconocimiento de imágenes. A diferencia de otras redes neuronales, aprovechan capas convolutivas y capas de pooling para procesar imágenes. Imagina que tienes una imagen de un gato. Las CNN pueden identificar diferentes características en la imagen, como bigotes, orejas y cola, aplicando filtros y reduciendo la imagen utilizando capas de pooling. Este proceso hace que las CNN sean muy efectivas para reconocer objetos en imágenes.”

Al comparar las dos respuestas, es evidente que un prompt bien definido conduce a una respuesta más relevante y amigable para el usuario. El diseño y la ingeniería de prompts son disciplinas en crecimiento que apuntan a optimizar la calidad de salida de los modelos de IA como ChatGPT.

En las siguientes secciones de este artículo, profundizaremos en el ámbito de metodologías avanzadas destinadas a refinar los Grandes Modelos de Lenguaje (LLM), como técnicas y tácticas de ingeniería de prompts. Estas incluyen el aprendizaje de pocos disparos, ReAct, cadena de pensamiento, RAG y más.

Técnicas de Ingeniería Avanzada

Antes de proceder, es importante entender un problema clave con los LLM, referido como “alucinación”. En el contexto de los LLM, “alucinación” significa la tendencia de estos modelos a generar salidas que pueden parecer razonables pero no están arraigadas en la realidad fáctica o el contexto de entrada dado.

Este problema se destacó en un reciente caso judicial donde un abogado defensor utilizó ChatGPT para investigación legal. La herramienta de IA, fallando debido a su problema de alucinación, citó casos legales inexistentes. Este error tuvo repercusiones significativas, causando confusión y socavando la credibilidad durante los procedimientos. Este incidente sirve como un recordatorio impactante de la necesidad urgente de abordar el problema de “alucinación” en los sistemas de IA.

Nuestra exploración en técnicas de ingeniería de prompts apunta a mejorar estos aspectos de los LLM. Al mejorar su eficiencia y seguridad, allanamos el camino para aplicaciones innovadoras como la extracción de información. Además, abre las puertas a integrar sin problemas los LLM con herramientas y fuentes de datos externas, ampliando el rango de sus usos potenciales.

Aprendizaje de Cero y Pocos Disparos: Optimización con Ejemplos

Los Modelos de Transformadores Preentrenados Generativos (GPT-3) marcaron un punto de inflexión importante en el desarrollo de los Modelos de IA Generativa, ya que introdujeron el concepto de “aprendizaje de pocos disparos“. Este método fue un cambio de juego debido a su capacidad de operar de manera efectiva sin la necesidad de un ajuste fino integral. El marco de GPT-3 se discute en el papel “Los Modelos de Lenguaje son Aprendices de Pocos Disparos“, donde los autores demuestran cómo el modelo sobresale en una variedad de casos de uso sin necesidad de conjuntos de datos personalizados o código.

A diferencia del ajuste fino, que requiere un esfuerzo continuo para resolver casos de uso variables, los modelos de pocos disparos demuestran una adaptabilidad más fácil a una gama más amplia de aplicaciones. Si bien el ajuste fino puede proporcionar soluciones robustas en algunos casos, puede ser costoso a gran escala, lo que hace que el uso de modelos de pocos disparos sea un enfoque más práctico, especialmente cuando se integra con la ingeniería de prompts.

Imagina que estás tratando de traducir del inglés al francés. En el aprendizaje de pocos disparos, le proporcionarías a GPT-3 algunos ejemplos de traducción como “nutria de mar -> loutre de mer”. GPT-3, siendo el modelo avanzado que es, es entonces capaz de continuar proporcionando traducciones precisas. En el aprendizaje de cero disparos, no proporcionarías ningún ejemplo, y GPT-3 aún sería capaz de traducir del inglés al francés de manera efectiva.

El término “aprendizaje de pocos disparos” proviene de la idea de que el modelo se le da un número limitado de ejemplos para “aprender” de ellos. Es importante tener en cuenta que “aprender” en este contexto no implica actualizar los parámetros o pesos del modelo, sino que influye en el rendimiento del modelo.

Aprendizaje de Pocos Disparos como se demuestra en el papel de GPT-3

Aprendizaje de Pocos Disparos como se demuestra en el papel de GPT-3

El aprendizaje de cero disparos lleva este concepto un paso más allá. En el aprendizaje de cero disparos, no se proporcionan ejemplos de realización de tareas en el modelo. El modelo se espera que realice bien basado en su entrenamiento inicial, lo que hace que esta metodología sea ideal para escenarios de respuesta a preguntas de dominio abierto como ChatGPT.

En muchos casos, un modelo diestro en el aprendizaje de cero disparos puede realizar bien cuando se le proporcionan pocos disparos o incluso un solo disparo. Esta capacidad de cambiar entre escenarios de aprendizaje de cero, uno y pocos disparos subraya la adaptabilidad de los modelos grandes, lo que mejora sus aplicaciones potenciales en diferentes dominios.

Los métodos de aprendizaje de cero disparos se están volviendo cada vez más prevalentes. Estos métodos se caracterizan por su capacidad para reconocer objetos no vistos durante el entrenamiento. Aquí hay un ejemplo práctico de un Prompt de Pocos Disparos:

"Traduce las siguientes frases en inglés al francés:

'nutria de mar' se traduce a 'loutre de mer'
'cielo' se traduce a 'ciel'
¿A qué se traduce 'nube' en francés?"

Al proporcionar al modelo algunos ejemplos y luego formular una pregunta, podemos guiar efectivamente al modelo para generar la salida deseada. En este caso, GPT-3 probablemente traduciría correctamente “nube” a “nuage” en francés.

Profundizaremos más en las diversas nuances de las técnicas de ingeniería de prompts y su papel esencial en la optimización del rendimiento del modelo durante la inferencia. También exploraremos cómo se puede utilizar de manera efectiva para crear soluciones rentables y escalables en una amplia gama de casos de uso.

A medida que exploramos más a fondo la complejidad de las técnicas de ingeniería de prompts en los modelos GPT, es importante destacar nuestro último artículo ‘Guía Esencial para la Ingeniería de Prompts en ChatGPT‘. Esta guía proporciona información sobre las estrategias para instruir a los modelos de IA de manera efectiva en una variedad de casos de uso.

En nuestras discusiones anteriores, nos sumergimos en los métodos de prompt fundamentales para los grandes modelos de lenguaje (LLM) como el aprendizaje de cero y pocos disparos, así como la instrucción de prompts. Dominar estas técnicas es crucial para navegar los desafíos más complejos de la ingeniería de prompts que exploraremos aquí.

El aprendizaje de pocos disparos puede ser limitado debido a la ventana de contexto restringida de la mayoría de los LLM. Además, sin las salvaguardias adecuadas, los LLM pueden ser engañados para entregar salidas potencialmente dañinas. Además, muchos modelos luchan con tareas de razonamiento o siguiendo instrucciones multi-paso.

Dadas estas limitaciones, el desafío radica en aprovechar los LLM para abordar tareas complejas. Una solución obvia podría ser desarrollar LLM más avanzados o refinar los existentes, pero eso podría implicar un esfuerzo sustancial. Entonces, surge la pregunta: ¿cómo podemos optimizar los modelos actuales para una mejor resolución de problemas?

Igualmente fascinante es explorar cómo esta técnica se cruza con aplicaciones creativas en Unite AI’s ‘Dominando el Arte de IA: Una Guía Concisa para Midjourney y la Ingeniería de Prompts‘ que describe cómo la fusión del arte y la IA puede resultar en un arte asombroso.

Prompt de Cadena de Pensamiento

El prompt de cadena de pensamiento aprovecha las propiedades auto-regresivas inherentes de los grandes modelos de lenguaje (LLM), que sobresalen en predecir la próxima palabra en una secuencia dada. Al promptear al modelo para que aclare su proceso de pensamiento, induce una generación más detallada y metódica de ideas, que tiende a alinearse estrechamente con información precisa. Este alineamiento se deriva de la tendencia del modelo a procesar y entregar información de manera reflexiva y ordenada, similar a un experto humano que guía a un oyente a través de un concepto complejo. Una simple afirmación como “explícamelo paso a paso” es a menudo suficiente para desencadenar esta salida más prolija y detallada.

Prompt de Cadena de Pensamiento de Cero Disparos

Mientras que el prompt de cadena de pensamiento convencional requiere un entrenamiento previo con demostraciones, un área emergente es el prompt de cadena de pensamiento de cero disparos. Este enfoque, introducido por Kojima et al. (2022), innovadoramente agrega la frase “Pensemos paso a paso” al prompt original.

Crearemos un prompt avanzado donde ChatGPT se encarga de resumir los puntos clave de artículos de investigación de IA y NLP.

En esta demostración, utilizaremos la capacidad del modelo para comprender y resumir información compleja de textos académicos. Utilizando el enfoque de aprendizaje de pocos disparos, enseñaremos a ChatGPT a resumir los hallazgos clave de artículos de investigación de IA y NLP:

1. Título del Artículo: "La Atención es Todo lo que Necesitas"
Punto Clave: Se introdujo el modelo de transformador, enfatizando la importancia de los mecanismos de atención sobre las capas recurrentes para tareas de transducción de secuencias.

2. Título del Artículo: "BERT: Pre-entrenamiento de Transformadores Profundos Bidireccionales para la Comprensión del Lenguaje"
Punto Clave: Se presentó BERT, demostrando la eficacia del pre-entrenamiento de modelos bidireccionales profundos, logrando resultados de estado del arte en diversas tareas de NLP.

Ahora, con el contexto de estos ejemplos, resume los puntos clave del siguiente artículo:

Título del Artículo: "Ingeniería de Prompts en Grandes Modelos de Lenguaje: Un Examen"

Este prompt no solo mantiene una clara cadena de pensamiento sino que también aprovecha el enfoque de aprendizaje de pocos disparos para guiar al modelo. Se vincula a nuestros palabras clave centrándose en los dominios de IA y NLP, específicamente encomendando a ChatGPT realizar una operación compleja relacionada con la ingeniería de prompts: resumir artículos de investigación.

ReAct

ReAct, o “Razonar y Actuar”, fue introducido por Google en el papel “ReAct: Sinergizando el Razonamiento y la Acción en Modelos de Lenguaje“, y revolucionó la forma en que los modelos de lenguaje interactúan con una tarea, prompteando al modelo para generar dinámicamente tanto trazas de razonamiento verbales como acciones específicas de la tarea.

He pasado los últimos cinco años sumergiéndome en el fascinante mundo del Aprendizaje Automático y el Aprendizaje Profundo. Mi pasión y experiencia me han llevado a contribuir a más de 50 proyectos de ingeniería de software diversos, con un enfoque particular en AI/ML. Mi curiosidad continua también me ha llevado hacia el Procesamiento de Lenguaje Natural, un campo que estoy ansioso por explorar más a fondo.