- DeepResearch, presentado por OpenAI, resume contenido y realiza preguntas y respuestas mediante búsquedas web
- Ha llamado la atención por lograr una puntuación alta en el benchmark GAIA
- Combina un LLM potente con un framework interno de agentes para usar gradualmente distintas herramientas, como la navegación web
- Como OpenAI no reveló los detalles de su framework de agentes, se realizó un experimento de 24 horas para recrearlo como código abierto
¿Qué es un framework de agentes y por qué es importante?
- Un framework de agentes es una estructura que añade una capa extra sobre el LLM para permitirle realizar diversas acciones, como navegar o leer PDFs
- En comparación con usar un LLM solo en formato de chat, combinarlo con un sistema de agentes lo hace mucho más potente
- Incluso al aplicar un framework de agentes simple mediante bibliotecas como smolagents, el rendimiento mejora de forma importante
- OpenAI DeepResearch también obtiene un rendimiento sobresaliente aprovechando este enfoque
Benchmark GAIA
- GAIA es un benchmark muy difícil para evaluar el rendimiento de agentes
- Como ejemplo, plantea preguntas complejas, como enumerar en orden las frutas que aparecen en “Embroidery from Uzbekistan” relacionándolas con el antiguo desayuno de cierto barco
- Con un solo LLM, el resultado se queda alrededor del 7%, pero DeepResearch supera el 67%, mostrando una gran diferencia
- Las preguntas de GAIA requieren razonamiento de múltiples pasos, búsqueda de información y procesamiento multimodal, por lo que son adecuadas para probar el verdadero valor de un enfoque basado en agentes
Construyendo Open Deep Research
- Se realizó un experimento que combina un LLM de código abierto con un framework de agentes para reproducir el enfoque de DeepResearch
- El objetivo es mejorar el rendimiento en GAIA usando un navegador web simple basado en texto y herramientas para revisar archivos
- Uso de CodeAgent
- El enfoque CodeAgent expresa las acciones como código en lugar de JSON
- Según el estudio de Wang et al. (2024), la representación en código es compacta, intuitiva y tiene ventajas de optimización para los LLM
- Reduce la cantidad de pasos, lo que baja costos, y también resulta favorable para gestionar estados multimodales
- Creación de herramientas adecuadas
- Primera herramienta: navegador web basado en texto
- Aún no implementa funciones avanzadas como Operator, pero en esta etapa inicial solo ofrece navegación simple
- Segunda herramienta: inspector para abrir formatos de archivo de texto
- Permite leer contenido mediante una herramienta sencilla de procesamiento de documentos
- Más adelante, se planea añadir soporte para formatos de archivo más detallados, integrar modelos de visión durante la navegación web e introducir agentes de GUI
Resultados
- El experimento de reproducción realizado en 24 horas alcanzó alrededor de 54% en el benchmark GAIA
- Al usar representación en código en lugar de JSON, la puntuación subió de 33% a 54%
- Cualquiera puede reproducirlo usando el framework abierto smolagents y sus herramientas
- Hay mucho margen de mejora al combinarlo con un navegador al nivel de Operator o con modelos locales más potentes
Reimplementaciones de la comunidad
- En la comunidad han aparecido diversas implementaciones, como las de dzhng, assafelovic, nickscamara, jina-ai y mshumer
- Cada una aprovecha bibliotecas distintas o prueba diferentes métodos de búsqueda e indexación
- La idea es seguir avanzando compartiendo resultados de reproducción basados en LLM abiertos, modelos de visión y representación de acciones basada en código
El siguiente paso más importante
- Es importante crear un agente de GUI que permita funciones avanzadas de navegación web, como OpenAI Operator
- Se busca ofrecer como código abierto la capacidad de ver la pantalla y operar con mouse y teclado
- Se planea mejorar el nivel de acabado integrándolo con smolagents, OpenAI Operator y otros
- Los principales retos son mejorar la puntuación en GAIA, aprovechar LLM abiertos e implementar navegación web visual
Aún no hay comentarios.