La ingeniería de indicaciones es el proceso de estructurar una instrucción que pueda ser interpretada y entendida por un modelo de inteligencia artificial (IA) generativa . [1] [2] Una indicación es un texto en lenguaje natural que describe la tarea que debe realizar una IA: [3] una indicación para un modelo de lenguaje de texto a texto puede ser una consulta como "¿cuál es el pequeño teorema de Fermat ?", [4] un comando como "escribe un poema al estilo de Edgar Allan Poe sobre las hojas que caen", [5] o una declaración más larga que incluya contexto, instrucciones, [6] e historial de conversación.
La ingeniería de indicaciones puede implicar formular una consulta, especificar un estilo, [5] proporcionar un contexto relevante [7] o asignar un rol a la IA como "actuar como un hablante nativo de francés". [8] Una indicación puede incluir algunos ejemplos para que un modelo aprenda de ellos, como pedirle al modelo que complete " maison → house, chat → cat, chien →" (la respuesta esperada es dog ), [9] un enfoque llamado aprendizaje de pocos disparos . [10]
Al comunicarse con un modelo de texto a imagen o de texto a audio, un mensaje típico es una descripción de un resultado deseado, como "una foto de alta calidad de un astronauta montando a caballo" [11] o "electro chill de baja fidelidad con BPM lento con muestras orgánicas". [12] Dar mensajes a un modelo de texto a imagen puede implicar agregar, quitar, enfatizar y reordenar palabras para lograr un tema, estilo [1] , diseño, iluminación [13] y estética deseados.
La ingeniería de indicaciones se posibilita mediante el aprendizaje en contexto , definido como la capacidad de un modelo de aprender temporalmente a partir de indicaciones. La capacidad de aprendizaje en contexto es una capacidad emergente [14] de los modelos de lenguaje grandes . El aprendizaje en contexto en sí mismo es una propiedad emergente de la escala del modelo , lo que significa que se producen rupturas [15] en las leyes de escalamiento posteriores de modo que su eficacia aumenta a un ritmo diferente en los modelos más grandes que en los modelos más pequeños. [16] [17]
A diferencia del entrenamiento y el ajuste fino para cada tarea específica, que no son temporales, lo aprendido durante el aprendizaje en contexto es de naturaleza temporal. No lleva los contextos temporales ni los sesgos, excepto los que ya están presentes en el conjunto de datos de (pre)entrenamiento , de una conversación a la otra. [18] Este resultado de la "optimización de mesa" [19] [20] dentro de las capas de transformadores es una forma de metaaprendizaje o "aprender a aprender". [21]
En 2018, los investigadores propusieron por primera vez que todas las tareas que antes se hacían por separado en el procesamiento del lenguaje natural podrían plantearse como un problema de respuesta a preguntas sobre un contexto. Además, entrenaron un primer modelo único, conjunto y multitarea que respondería a cualquier pregunta relacionada con la tarea, como "¿Cuál es el sentimiento?", "Traduce esta oración al alemán" o "¿Quién es el presidente?" [22].
En 2021, los investigadores ajustaron un modelo preentrenado generativamente (T0) para realizar 12 tareas de PNL (utilizando 62 conjuntos de datos, ya que cada tarea puede tener múltiples conjuntos de datos). El modelo mostró un buen desempeño en nuevas tareas, superando a los modelos entrenados directamente para realizar solo una tarea (sin preentrenamiento). Para resolver una tarea, se le da a T0 la tarea en una indicación estructurada, por ejemplo, If {{premise}} is true, is it also true that {{hypothesis}}? ||| {{entailed}}.
es la indicación utilizada para hacer que T0 resuelva la implicación . [23]
Un repositorio de sugerencias informó que en febrero de 2022 había disponibles más de 2000 sugerencias públicas para alrededor de 170 conjuntos de datos. [24]
En 2022, los investigadores de Google propusieron la técnica de incitación por cadena de pensamientos . [17] [25]
En 2023, varias bases de datos de indicaciones de texto a texto y de texto a imagen estuvieron disponibles públicamente. [26] [27]
La incitación por cadena de pensamiento (CoT) es una técnica que permite a los modelos de lenguaje grandes (LLM) resolver un problema como una serie de pasos intermedios [28] antes de dar una respuesta final. La incitación por cadena de pensamiento mejora la capacidad de razonamiento al inducir al modelo a responder un problema de varios pasos con pasos de razonamiento que imitan una línea de pensamiento . [29] [17] [30] Permite que los modelos de lenguaje grandes superen dificultades con algunas tareas de razonamiento que requieren pensamiento lógico y múltiples pasos para resolver, como preguntas de aritmética o de razonamiento de sentido común . [31] [32] [33]
Por ejemplo, dada la pregunta “P: La cafetería tenía 23 manzanas. Si usaron 20 para preparar el almuerzo y compraron 6 más, ¿cuántas manzanas tienen?”, una pregunta de CoT podría inducir al LLM a responder “A: La cafetería tenía 23 manzanas originalmente. Usaron 20 para preparar el almuerzo. Entonces tenían 23 - 20 = 3. Compraron 6 manzanas más, entonces tienen 3 + 6 = 9. La respuesta es 9”. [17]
Como se propuso originalmente, [17] cada mensaje de CoT incluía algunos ejemplos de preguntas y respuestas. Esto lo convertía en una técnica de mensajes de pocos intentos . Sin embargo, simplemente agregar las palabras "Pensemos paso a paso", [34] también ha demostrado ser eficaz, lo que convierte a CoT en una técnica de mensajes de cero intentos . Esto permite una mejor escalabilidad ya que un usuario ya no necesita formular muchos ejemplos específicos de preguntas y respuestas de CoT. [35]
Cuando se aplicó a PaLM , un modelo de lenguaje de parámetros 540B , la incitación de CoT ayudó significativamente al modelo, permitiéndole desempeñarse de manera comparable con modelos afinados específicos de la tarea en varias tareas, logrando resultados de vanguardia en ese momento en el punto de referencia de razonamiento matemático GSM8K . [17] Es posible afinar los modelos en conjuntos de datos de razonamiento CoT para mejorar aún más esta capacidad y estimular una mejor interpretabilidad . [36] [37]
Ejemplo: [34]
P: {pregunta} A: Pensemos paso a paso.
La inducción por cadena de pensamientos es sólo una de las muchas técnicas de ingeniería de inducción. Se han propuesto otras técnicas y se han publicado al menos 29 técnicas distintas. [38]
Incitación por cadena de símbolos (CoS)
La estimulación por cadena de símbolos junto con la estimulación por CoT ayuda a los estudiantes de maestría en derecho con la dificultad de razonamiento espacial en el texto. En otras palabras, el uso de símbolos arbitrarios como "/" ayuda al estudiante de maestría en derecho a interpretar el espaciado en el texto. Esto ayuda al razonamiento y aumenta el rendimiento del estudiante de maestría en derecho. [39]
Ejemplo: [39]
Aporte: Hay un conjunto de ladrillos. El ladrillo amarillo C está encima del ladrillo E. El ladrillo amarillo D está encima del ladrillo A. El ladrillo amarillo E está encima del ladrillo D. El ladrillo blanco A está encima del ladrillo B. Para el ladrillo B, el color es blanco. Ahora tenemos que conseguir un ladrillo específico. Ahora hay que agarrar los ladrillos de arriba a abajo, y si hay que agarrar el ladrillo inferior, hay que quitar primero el superior. ¿Cómo conseguir el ladrillo D?B/A/D/E/CC/EA/DDProducción:Así que obtenemos el resultado como C, E, D.
La generación de conocimiento [40] primero incita al modelo a generar hechos relevantes para completar la instrucción y luego procede a completarla. La calidad de la finalización suele ser mayor, ya que el modelo puede condicionarse a hechos relevantes.
Ejemplo: [40]
Generar algún conocimiento sobre los conceptos en la entrada. Entrada: {pregunta} Conocimiento:
La indicación de menor a mayor [41] indica a un modelo que primero enumere los subproblemas de un problema y luego los resuelva en secuencia, de modo que los subproblemas posteriores se puedan resolver con la ayuda de las respuestas a los subproblemas anteriores.
Ejemplo: [41]
Aporte: P: {pregunta} A: Analicemos este problema: 1.
La decodificación de autoconsistencia [42] realiza varias secuencias de ideas y luego selecciona la conclusión a la que se llega con mayor frecuencia de todas. Si las secuencias difieren en gran medida, se puede consultar a un humano para que indique la secuencia de ideas correcta. [43]
La estimulación basada en la complejidad [44] realiza varias implementaciones de CoT, luego selecciona las implementaciones con las cadenas de pensamiento más largas y luego selecciona la conclusión a la que se llega con mayor frecuencia entre ellas.
El autorefinamiento [45] solicita al LLM que resuelva el problema, luego solicita al LLM que critique su solución y luego solicita al LLM que resuelva el problema nuevamente en vista del problema, la solución y la crítica. Este proceso se repite hasta que se detiene, ya sea porque se agotan los tokens, el tiempo o porque el LLM emite un token de "detención".
Ejemplo de crítica: [45]
Tengo un código. Haz una sugerencia para mejorar la legibilidad. No arregles el código, solo haz una sugerencia. Código: {código} Sugerencia:
Ejemplo de refinamiento:
Código: {código} Utilicemos esta sugerencia para mejorar el código. Sugerencia: {sugerencia} Nuevo código:
La incitación por árbol de pensamiento [46] generaliza la cadena de pensamiento al incitar al modelo a generar uno o más "posibles pasos siguientes" y luego ejecutar el modelo en cada uno de los posibles pasos siguientes mediante búsqueda en amplitud , haz o algún otro método de búsqueda en árbol. [47]
La incitación mayéutica es similar al árbol del pensamiento. Se le pide al modelo que responda una pregunta con una explicación. Luego se le pide al modelo que explique partes de la explicación, y así sucesivamente. Los árboles de explicación inconsistentes se podan o descartan. Esto mejora el desempeño en el razonamiento complejo de sentido común. [48]
Ejemplo: [48]
P: {pregunta} A: Cierto, porque
P: {pregunta} A: Falso, porque
La estimulación direccional [49] incluye una pista o señal, como palabras clave deseadas, para guiar un modelo de lenguaje hacia el resultado deseado.
Ejemplo: [49]
Artículo: {article} Palabras clave:
Artículo: {article} P: Escriba un breve resumen del artículo en 2 a 4 oraciones que incorpore con precisión las palabras clave proporcionadas. Palabras clave: {keywords} A:
De manera predeterminada, la salida de los modelos de lenguaje puede no contener estimaciones de incertidumbre. El modelo puede generar texto que parezca confiable, aunque las predicciones de tokens subyacentes tengan puntajes de probabilidad bajos . Los modelos de lenguaje grandes como GPT-4 pueden tener puntajes de probabilidad calibrados con precisión en sus predicciones de tokens, [50] y, por lo tanto, la incertidumbre de la salida del modelo se puede estimar directamente leyendo los puntajes de probabilidad de las predicciones de tokens.
Pero si no se puede acceder a dichas puntuaciones (por ejemplo, cuando se accede al modelo a través de una API restrictiva), la incertidumbre aún se puede estimar e incorporar en la salida del modelo. Un método simple es pedirle al modelo que use palabras para estimar la incertidumbre. [51] Otro es pedirle al modelo que se niegue a responder de manera estandarizada si la entrada no satisface las condiciones. [ cita requerida ]
La generación aumentada por recuperación (RAG) es un proceso de dos fases que implica la recuperación de documentos y la formulación de respuestas mediante un modelo de lenguaje grande (LLM). La fase inicial utiliza incrustaciones densas para recuperar documentos. Esta recuperación puede basarse en una variedad de formatos de base de datos según el caso de uso, como una base de datos vectorial , un índice de resumen, un índice de árbol o un índice de tabla de palabras clave. [52]
En respuesta a una consulta, un recuperador de documentos selecciona los documentos más relevantes. Esta relevancia se determina típicamente codificando primero la consulta y los documentos en vectores, luego identificando los documentos cuyos vectores están más cerca en distancia euclidiana al vector de consulta. Después de la recuperación del documento, el LLM genera una salida que incorpora información tanto de la consulta como de los documentos recuperados. [53] Este método es particularmente beneficioso para manejar información patentada o dinámica que no se incluyó en las fases iniciales de entrenamiento o ajuste del modelo. RAG también es notable por su uso del aprendizaje de "pocos disparos", donde el modelo usa una pequeña cantidad de ejemplos, a menudo recuperados automáticamente de una base de datos, para informar sus salidas.
GraphRAG, [54] acuñado por Microsoft Research, extiende RAG de modo que en lugar de depender únicamente de la similitud de vectores (como en la mayoría de los enfoques RAG), GraphRAG utiliza el gráfico de conocimiento generado por LLM. Este gráfico permite que el modelo conecte piezas dispares de información, sintetice conocimientos y comprenda de manera holística conceptos semánticos resumidos en grandes colecciones de datos.
Los investigadores han demostrado la eficacia de GraphRAG utilizando conjuntos de datos como Violent Incident Information from News Articles (VIINA). [55] Al combinar los gráficos de conocimiento generados por LLM con el aprendizaje automático de gráficos, GraphRAG mejora sustancialmente tanto la exhaustividad como la diversidad de las respuestas generadas para las preguntas de búsqueda de sentido global.
Trabajos anteriores demostraron la eficacia de utilizar un gráfico de conocimiento para responder preguntas mediante la generación de texto a consulta. [56] Estas técnicas se pueden combinar para realizar búsquedas en datos estructurados y no estructurados, lo que proporciona un contexto ampliado y una clasificación mejorada.
Los modelos de lenguaje grandes (LLM) se pueden utilizar para componer indicaciones para modelos de lenguaje grandes. [57] [58] [59] [60]
El algoritmo automático de ingeniería de indicaciones utiliza un LLM para realizar búsquedas en indicaciones de otro LLM: [61]
Los ejemplos de CoT pueden ser generados por el propio LLM. En "CoT automático", [62] una biblioteca de preguntas se convierte en vectores mediante un modelo como BERT . Los vectores de preguntas se agrupan . Se seleccionan las preguntas más cercanas a los centroides de cada grupo. Un LLM realiza un CoT de cero disparos en cada pregunta. Los ejemplos de CoT resultantes se agregan al conjunto de datos. Cuando se solicita una nueva pregunta, se pueden recuperar ejemplos de CoT de las preguntas más cercanas y agregarlos al mensaje.
En 2022, se lanzaron al público modelos de texto a imagen como DALL-E 2 , Stable Diffusion y Midjourney . [63] Estos modelos toman indicaciones de texto como entrada y las usan para generar imágenes de arte de IA . Los modelos de texto a imagen generalmente no comprenden la gramática y la estructura de las oraciones de la misma manera que los modelos de lenguaje grandes , [64] y requieren un conjunto diferente de técnicas de indicaciones.
Un mensaje de texto a imagen generalmente incluye una descripción del tema de la obra de arte (como amapolas de color naranja brillante ), el medio deseado (como pintura digital o fotografía ), el estilo (como hiperrealista o pop-art ), la iluminación (como iluminación de borde o rayos crepusculares ), el color y la textura. [65]
La documentación de Midjourney fomenta indicaciones breves y descriptivas: en lugar de "Muéstrame una imagen de muchas amapolas de California en flor, hazlas de un naranja brillante y vibrante, y dibújalas en un estilo ilustrado con lápices de colores", una indicación eficaz podría ser "Amapolas de California de color naranja brillante dibujadas con lápices de colores". [64]
El orden de las palabras afecta el resultado de una instrucción de texto a imagen. Las palabras que se encuentran más cerca del comienzo de una instrucción pueden tener un mayor énfasis. [1]
Algunos modelos de conversión de texto a imagen son capaces de imitar el estilo de artistas concretos por su nombre. Por ejemplo, la frase en el estilo de Greg Rutkowski se ha utilizado en los mensajes de Stable Diffusion y Midjourney para generar imágenes en el estilo distintivo del artista digital polaco Greg Rutkowski. [66]
Los modelos de conversión de texto a imagen no comprenden de forma nativa la negación. Es probable que la indicación "una fiesta sin tarta" produzca una imagen que incluya una tarta. [64] Como alternativa, las indicaciones negativas permiten al usuario indicar, en una indicación separada, qué términos no deben aparecer en la imagen resultante. [67] Un enfoque común es incluir términos genéricos no deseados, como feo, aburrido o mala anatomía, en la indicación negativa de una imagen.
La generación de texto a video (TTV) es una tecnología emergente que permite crear videos directamente a partir de descripciones textuales. Este campo tiene potencial para transformar la producción de videos, la animación y la narración de historias. Al utilizar el poder de la inteligencia artificial, TTV permite a los usuarios pasar por alto las herramientas de edición de video tradicionales y traducir sus ideas en imágenes en movimiento.
Los modelos incluyen:
Algunos enfoques amplían o reemplazan las indicaciones de texto en lenguaje natural con entradas que no son texto.
Para los modelos de conversión de texto a imagen, la "inversión textual" [72] realiza un proceso de optimización para crear una nueva palabra incrustada en base a un conjunto de imágenes de ejemplo. Este vector de incrustación actúa como una "pseudopalabra" que puede incluirse en un mensaje para expresar el contenido o el estilo de los ejemplos.
En 2023, la investigación de IA de Meta lanzó Segment Anything, un modelo de visión artificial que puede realizar la segmentación de imágenes mediante indicaciones. Como alternativa a las indicaciones de texto, Segment Anything puede aceptar cuadros delimitadores, máscaras de segmentación y puntos de primer plano y fondo. [73]
En el "ajuste de prefijo", [74] "ajuste de aviso" o "aviso suave", [75] los vectores con valores de punto flotante se buscan directamente por descenso de gradiente , para maximizar la verosimilitud logarítmica en las salidas.
Formalmente, sea un conjunto de tokens de indicaciones suaves (incrustaciones ajustables), mientras que y sean las incrustaciones de tokens de la entrada y la salida respectivamente. Durante el entrenamiento, las incrustaciones ajustables, los tokens de entrada y salida se concatenan en una sola secuencia y se alimentan a los modelos de lenguaje grandes (LLM). Las pérdidas se calculan sobre los tokens; los gradientes se retropropagan a parámetros específicos de las indicaciones: en el ajuste de prefijos, son parámetros asociados con los tokens de indicaciones en cada capa; en el ajuste de indicaciones, son simplemente los tokens suaves agregados al vocabulario. [76]
Más formalmente, esto es un ajuste rápido. Sea un LLM escrito como , donde es una secuencia de tokens lingüísticos, es la función token-a-vector y es el resto del modelo. En el ajuste de prefijo, se proporciona un conjunto de pares de entrada-salida , y luego se usa el descenso de gradiente para buscar . En palabras, es la probabilidad logarítmica de generar , si el modelo primero codifica la entrada en el vector , luego antepone el vector con el "vector de prefijo" , luego aplica .
Para el ajuste de prefijo, es similar, pero el "vector de prefijo" se agrega previamente a los estados ocultos en cada capa del modelo.
Un resultado anterior [77] utiliza la misma idea de búsqueda por descenso de gradiente, pero está diseñado para modelos de lenguaje enmascarado como BERT, y busca solo en secuencias de tokens, en lugar de vectores numéricos. Formalmente, busca dónde se encuentran los rangos en secuencias de tokens de una longitud especificada.
La inyección de instrucciones es una familia de exploits de seguridad informática relacionados que se llevan a cabo haciendo que un modelo de aprendizaje automático (como un LLM) que fue entrenado para seguir instrucciones dadas por humanos siga instrucciones proporcionadas por un usuario malintencionado. Esto contrasta con el funcionamiento previsto de los sistemas de seguimiento de instrucciones, en los que el modelo de ML solo está destinado a seguir instrucciones confiables (instrucciones) proporcionadas por el operador del modelo de ML. [78] [79] [80]
de texto a imagen
pueda interpretar y comprender . Piense en ello como el lenguaje que necesita hablar para decirle a un modelo de IA qué dibujar.
La ingeniería rápida es el arte de comunicarse con un modelo de IA generativo.
Demostramos que los modelos de lenguaje pueden realizar tareas posteriores en un entorno de cero disparos, sin ninguna modificación de parámetros o arquitectura.
¿Qué es el pequeño teorema de Fermat?
"Indicación básica: 'Escribe un poema sobre la caída de las hojas'. Indicación mejor: 'Escribe un poema al estilo de Edgar Allan Poe sobre la caída de las hojas'.
A continuación, di un mensaje más complicado para intentar confundir a MusicGen: "Lo-fi slow BPM electro chill con samples orgánicos".
En la indicación, un modelo de lenguaje entrenado previamente recibe una indicación (por ejemplo, una instrucción en lenguaje natural) de una tarea y completa la respuesta sin ningún entrenamiento adicional o actualizaciones de gradiente de sus parámetros... La capacidad de realizar una tarea a través de una indicación de pocos intentos es emergente cuando un modelo tiene un rendimiento aleatorio hasta una cierta escala, después de la cual el rendimiento aumenta muy por encima del aleatorio.
Para cuando escriba una consulta en ChatGPT, la red debería estar arreglada; a diferencia de los humanos, no debería seguir aprendiendo. Por eso, fue una sorpresa que los LLM, de hecho, aprendan de las indicaciones de sus usuarios, una capacidad conocida como aprendizaje en contexto.
De esta manera, mostramos cómo los transformadores entrenados se convierten en optimizadores de mesa, es decir, aprenden modelos mediante descenso de gradiente en su paso hacia adelante.
Mesa-Optimization es la situación que ocurre cuando un modelo aprendido (como una red neuronal) es en sí mismo un optimizador.
El entrenamiento de un modelo para realizar aprendizaje en contexto puede verse como una instancia del paradigma más general de aprendizaje a aprender o metaaprendizaje.
'La estimulación en cadena de pensamientos nos permite describir problemas de varios pasos como una serie de pasos intermedios', afirma Sundar Pichai, director ejecutivo de Google
...indicación de menor a mayor. La idea clave de esta estrategia es dividir un problema complejo en una serie de subproblemas más simples y luego resolverlos en secuencia.
El estímulo direccional sirve como pistas o señales para cada consulta de entrada para guiar a los LLM hacia el resultado deseado, como palabras clave que el resumen deseado debe incluir para resumir.
Si indica explícitamente en su indicación que desea que la IA generativa emita una calificación de certeza o incertidumbre, es casi seguro que obtendrá dicha indicación.
{{cite journal}}
: Requiere citar revista |journal=
( ayuda ){{cite journal}}
: Requiere citar revista |journal=
( ayuda ){{cite journal}}
: Requiere citar revista |journal=
( ayuda )Usando solo 3-5 imágenes de un concepto proporcionado por el usuario, como un objeto o un estilo, aprendemos a representarlo a través de nuevas "palabras" en el espacio de incrustación de un modelo de texto a imagen congelado.
En este artículo, proponemos el prefijo-tuning, una alternativa ligera al ajuste fino... El prefijo-tuning se inspira en el prefijo-tuning.
En este trabajo, exploramos el "ajuste de indicaciones", un mecanismo simple pero efectivo para aprender "indicaciones suaves"... A diferencia de las indicaciones de texto discretas utilizadas por GPT-3, las indicaciones suaves se aprenden mediante retropropagación.