Hola Amigos,
Ha pasado bastante tiempo (casi 3 meses) desde mi última entrada en el blog. Pero por fin he vuelto, ¡y vamos a empezar! A partir de ahora, mis blogs se centrarán principalmente en trabajos de investigación interesantes en el ámbito del LLM y la GenAI. Hablaré de problemas con los que me encuentro en mi día a día, en lo que nos gusta llamar «tiempo de historias», como muchos de vosotros recordaréis de mis blogs anteriores. A continuación, profundizaré en los aspectos técnicos de estos problemas. Además de explicar los trabajos de investigación, compartiré experiencias y ejemplos prácticos, y también profundizaré en detalles técnicos que los trabajos podrían omitir, dando por sentado que el lector ya los conoce. Así pues, ¡manos a la obra!
Hace unos días nos visitó un amigo de la familia. Tienen una preciosa hija de 8 años. Era el 15 de agosto, el Día de la Independencia de la India, y en el colegio le habían encargado que escribiera una redacción sobre el Día de la Independencia con el estricto requisito de «al menos 10000 palabras», ¡eso sí que es mucho! No sé si llamarlo redacción o minilibro para una niña de 8 años. Como de costumbre, los padres empezaron a redactarlo en nombre de su hijo. Lo primero que nos viene a todos a la cabeza es ChatGPT o algo parecido. Al principio, los padres estaban muy tranquilos y pensaron : «Empecemos a redactarlo el 14 de agosto, justo un día antes, ya que sólo es cuestión de ‘incitar al modelo LLM’ y obtener el resultado» La noche del 14 de agosto, hicieron precisamente eso, pero ¿alguien adivina qué pasó? El modelo, aunque dio un buen resultado, tuvo problemas para mantener los siguientes: Relevancia, Precisión, Coherencia, Claridad, Amplitud y Profundidad, y Experiencia Lectora. Además, cuando se le pide al modelo que emita estrictamente 10.000 palabras, repite el contexto y se descontextualiza considerablemente.
Ahora, todos ustedes se preguntarán, ¿cuáles son estas seis dimensiones? Para ello, continuemos con la lectura y adentrémonos en el planteamiento del problema: «limitaciones de los actuales modelos de gran lenguaje de contexto largo (LLM) a la hora de generar resultados ultralargos». «En este blog, analizaremos un interesante trabajo de investigación titulado «LONGWRITER: UNLEASHING 10,000+ WORD GENERATION FROM LONG CONTEXT LLMS» (LONGWRITER: LIBERANDO LA GENERACIÓN DE MÁS DE 10.000 PALABRAS A PARTIR DE LOS LLMS DE CONTEXTO LARGO) A pesar de que estos modelos pueden procesar entradas de hasta 100.000 tokens, normalmente tienen dificultades para producir salidas de más de 2.000 palabras. La razón principal de esta limitación se atribuye a los conjuntos de datos de ajuste fino supervisado (SFT), que carecen de ejemplos de resultados largos, lo que limita la capacidad de los modelos para generar textos extensos. Así que en este blog vamos a conocer la intrigante técnica que han utilizado los autores para mejorar las respuestas de salida larga y ¡asegurarnos de que la vida de los padres sea más fácil en el futuro! ¿Y qué pasa con los niños? Hoy en día, lo dejo en manos de su destino con los avances en IA y la forma en que la vida se ha vuelto más fácil para ellos con un uso limitado de sus capacidades mentales. En fin, empecemos.
Introducción
Ahora, entremos en la comprensión limítrofe del artículo. Empieza destacando un reto interesante con los LLM de contexto largo. Estos modelos, que pueden procesar más de 100.000 tokens de entrada, siguen teniendo dificultades para generar salidas de más de 2.000 palabras. Se trata de un problema importante porque, en algunos casos, más del 1% de las peticiones de los usuarios necesitan respuestas más largas.
¿Cuál es el principal problema? Los conjuntos de datos de ajuste fino supervisado (SFT) que entrenan estos modelos no incluyen suficientes ejemplos de resultados largos. Por tanto, aunque los modelos son capaces de manejar entradas largas, no han sido entrenados para producir salidas largas de forma eficaz. Esta limitación se ha mantenido porque muchos LLM se basan en estos mismos conjuntos de datos.
Para solucionar este problema, los autores presentan AgentWrite, un nuevo método que ayuda a estos modelos a generar textos más largos dividiendo la tarea en partes más pequeñas. Este método permite generar textos de hasta 20.000 palabras, mucho más de lo que suele ser posible.
El artículo también incluye LongWriter-6k y LongBench-Write, un conjunto de datos y una referencia creados para entrenar y probar la capacidad de los modelos de generar textos ultralargos. La idea es ampliar los límites de lo que pueden hacer los LLM, haciéndolos más capaces de manejar tareas que requieran un resultado extenso.
Veamos ahora qué es Agentwrite y cómo funciona:
Paso I: Planificar
Lo primero es lo primero, AgentWrite comienza con un plan – al igual que usted esbozaría un artículo antes de lanzarse a escribir. El modelo crea un esquema detallado basado en las instrucciones dadas, estableciendo el contenido principal y especificando el número de palabras para cada sección. Considéralo como la hoja de ruta del modelo. Por ejemplo, si se le encargara escribir un artículo de 30.000 palabras sobre el Imperio Romano, el plan podría tener este aspecto:
Apartado 1: Introducción a los orígenes del Imperio Romano (700 palabras)
Párrafo 2: Fundación del Imperio Romano (800 palabras)
…
Apartado 15: Resumen de la historia del Imperio Romano (500 palabras)
Este enfoque estructurado garantiza que el modelo sepa exactamente hacia dónde se dirige, lo que facilita la tarea de generar resultados largos. A continuación puede ver cómo el autor estructura la entrada: