Introducción
Hacer un resumen no es una tarea sencilla. Uno debe ser capaz de extraer las ideas principales del texto y, a su vez, reducir su longitud (no tendría sentido crear un resumen casi tan extenso como el texto original, ¿verdad?)
Imagínate un algoritmo de Inteligencia Artificial que sea capaz de llevar esa tarea a cabo.
Seguramente, al leer esto, estarás pensando: “Si chatGPT ya es capaz de hacer resúmenes de textos. Yo mismo lo probé”. Y sí, en parte tienes razón. ChatGPT es capaz de realizar resúmenes, aunque si el texto es muy extenso o complejo, como un artículo científico, su capacidad de comprensión y extracción de las ideas principales se ve drásticamente limitada.
El problema de resumir
En este punto me pongo del lado de la IA. Debo confesar que, luego de haber ido al colegio secundario, la facultad y haber pasado por un doctorado, no sé cómo realizar resúmenes. Siento que tengo la inhabilidad de extraer las ideas principales de una clase o de un texto.
Con esto no pretendo hacer catarsis ni tomar este artículo del blog como una sesión de terapia, sino que considero que realizar buenos resúmenes no es simple. Hay varias cuestiones a tener en cuenta al momento de resumir:
- Debemos tener una comprensión global del texto o clase sobre la cual queremos hacer el resumen
- Debemos poder extraer las ideas principales, sintetizadas en un puñado de palabras o, a lo sumo, oraciones cortas. Esto implica que no debe ser demasiado extenso.
- Pero estas ideas deben mantener coherencia si las separamos del texto principal, es decir, si se las damos a una persona que nunca leyó el texto, debería ser capaz de comprender acerca de lo que estamos hablando (sin entrar en los detalles, obviamente)
- A pesar de lo anterior, esas ideas deben cargar suficiente información como para que, si quisiéramos, podamos desarrollarlas y construir un texto más comprensible.
En fin, vemos que hay muchas cosas a tener en cuenta al momento de resumir.
En el caso de la inteligencia artificial, los modelos de lenguaje deben ser capaces de tener en cuenta todo esto para poder hacer un resumen de manera efectiva. Las soluciones existentes hasta el momento, si bien no son malas, tienen ciertas falencias cuando se trata de un texto complejo.
Cadenas de Densidad
Para abordar este problema, científicos de la Universidad de Columbia, el MIT y Salesforce, en una investigación conjunta, desarrollaron una técnica de instrucciones (prompting) llamada Chain of Density (CoD) o Cadena de Densidad, la cual es capaz de realizar resúmenes con una calidad y rendimiento mejor que la obtenida con GPT-4 con un prompt más ‘tradicional’ (o un ‘prompt vainilla’ como comúnmente se dice). Los resúmenes generados por CoD son más abstractos, exhiben más fusión y tienen menos sesgo que los resúmenes realizados por GPT-4 generados por un prompt básico. Si quieres profundizar más en el contenido del artículo puedes encontrarlo en este link.
El poder de este método de prompting para crear resúmenes se basa en 2 pasos clave:
- Generar un esqueleto de resumen disperso: El modelo de lenguaje utilizado (en este caso GPT-4), toma el texto fuente y crea un resumen inicial breve, abarcando solamente de 1 a 3 entidades clave. Esto lo utilizará luego como estructura (de ahí el concepto de “esqueleto”), ya que justamente contiene información sustantiva mínima.
- Fusión de los detalles faltantes de forma iterativa: El algoritmo recorre el texto original con el objetivo de identificar ciertas frases que no están en el resumen inicial y, a pesar de ser concisas, contienen una gran cantidad de información. Luego se le pide al modelo (GPT-4) que reescriba el resumen, pero esta vez que contemple los nuevos detalles extraídos, es decir, que fusione el resumen del paso (1) con la nueva extracción, pero prestando especial atención en no aumentar su volumen. En pocas palabras, agregar lo nuevo pero con la misma cantidad de palabras que antes.
El prompt por dentro
Seguramente te estés preguntando cómo es ese prompt que construyeron los autores para realizar los resúmenes. Si es así, estás de suerte. A continuación te voy a mostrar cómo es que construyen el prompt y el resultado obtenido.
Para realizar este trabajo, los autores utilizaron como fuente un conjunto de datos llamado “CNN Dailymail” que, como su nombre lo indica, son unos 300.000 artículos periodísticos publicados tanto en CNN como en el Daily Mail.
En la imagen podemos ver, del lado izquierdo, el prompt utilizado para generar el resumen. Allí vemos que le pide que realice 5 veces el proceso de 2 pasos mencionados más arriba en la sección anterior.
Por otra parte, del lado derecho de la imagen, podemos ver el resultado de este prompt. Como éste pide que se repita 5 veces el proceso, la imagen muestra cada una de las 5 salidas intermedias que hace al finalizar cada iteración del proceso, donde se puede ver cómo va cambiando el resumen a medida que realiza una iteración más.
Conclusiones
En este artículo vimos una nueva técnica de prompting para mejorar la capacidad de resumen que presenta GPT-4 mediante una técnica llamada Chain of Density.
Este nuevo método mostró ser más eficiente que GPT-4 utilizado con un prompt más clásico, lo que lleva a concluir que la ingeniería de prompts (o prompt engineering, como se dice en inglés) no es un tema para tomar a la ligera y que, si sabemos escribir el prompt correcto, los modelos de lenguaje tendrán un desempeño muy superior.
Entonces, si quieres aprovechar al máximo el potencial de GPT, ya sea su versión 3.5 o la más reciente 4 (esto también es válido para otros modelos de lenguaje), verás que es crucial dominar el arte del prompt engineering para conocer bien a fondo todo lo que hay que saber para crear los mejores prompts.