Conoce ToolLLM Un marco de trabajo general para la construcción de datos y entrenamiento de modelos que mejora el uso de la API de Modelos de Lenguaje Grandes.

ToolLLM es un marco de trabajo general para construir y entrenar modelos de lenguaje grandes, mejorando el uso de la API de Modelos de Lenguaje Grandes.

Para conectar eficientemente con numerosas herramientas (APIs) y completar tareas difíciles, el aprendizaje de herramientas intenta aprovechar el potencial de los grandes modelos de lenguaje (LLMs). Los LLMs pueden aumentar significativamente su valor y adquirir la capacidad de actuar como intermediarios efectivos entre los consumidores y el amplio ecosistema de aplicaciones al conectarse con APIs. Aunque la ajuste de instrucciones ha permitido a los LLMs de código abierto, como LLaMA y Vicuna, desarrollar una amplia gama de capacidades, aún necesitan manejar tareas de nivel superior como comprender las instrucciones del usuario e interactuar de manera efectiva con las herramientas (APIs). Esto se debe a que la ajuste de instrucciones actualmente se enfoca principalmente en tareas de lenguaje simples (como charlas informales) en lugar del dominio de uso de herramientas.

Por otro lado, los LLMs de última generación (SOTA) como GPT-4, que han demostrado excelentes habilidades en el uso de herramientas, son de código cerrado y opacos en su funcionamiento interno. Debido a esto, se limita la amplitud de la innovación y desarrollo impulsados por la comunidad y la democratización de la tecnología de IA. Consideran vital que los LLMs de código abierto sean capaces de comprender una variedad de APIs de manera adecuada en este sentido. Aunque estudios anteriores investigaron la creación de datos de ajuste de instrucciones para el uso de herramientas, sus limitaciones intrínsecas impiden que estimulen completamente las capacidades de uso de herramientas dentro de los LLMs. (1) APIs restringidas: Ignoran APIs del mundo real (como RESTAPI) o solo tienen en cuenta una gama limitada de APIs con poca diversidad; (2) Escenario limitado: Los trabajos existentes se limitan a instrucciones que solo utilizan una sola herramienta. En contraste, los entornos del mundo real podrían requerir la combinación de muchas herramientas para la ejecución de herramientas en múltiples rondas para completar una tarea desafiante.

Además, presuponen con frecuencia que los usuarios predeterminarían el conjunto óptimo de APIs para un determinado comando, lo cual es imposible cuando se ofrecen una gran cantidad de APIs; (3) Planificación y razonamiento insuficientes: Los estudios existentes utilizan un mecanismo de generación de instrucciones sencillo para el razonamiento del modelo (como chain-of-thought (CoT) o ReACT), que no logra evocar completamente las capacidades codificadas en los LLMs y, por lo tanto, no puede manejar instrucciones complicadas. Este problema es particularmente grave para los LLMs de código abierto, ya que tienen capacidades de razonamiento mucho peores que los LLMs SOTA. Además, algunos trabajos ni siquiera utilizan APIs para obtener respuestas genuinas, que son datos cruciales para el posterior desarrollo del modelo. Presentan ToolLLM, un marco general de uso de herramientas para la producción de datos, entrenamiento y evaluación del modelo, para estimular las habilidades de uso de herramientas dentro de los LLMs de código abierto.

La Figura 1 muestra cómo entrenan su recuperador de API y ToolLLaMA en tres pasos y cómo construyen ToolBench.

El recuperador de API sugiere APIs pertinentes a ToolLLaMA durante la inferencia de instrucciones, y ToolLLaMA realiza una serie de llamadas a APIs para llegar al resultado final. ToolEval evalúa todo el proceso de deliberación.

Primero recopilan un conjunto de datos de ajuste de instrucciones de alta calidad llamado ToolBench, como se muestra en la Figura 1. Utilizan el ChatGPT más reciente (gpt-3.5-turbo-16k), que ha sido actualizado con capacidades de llamada de función mejoradas, para generarlo automáticamente. La Tabla 1 proporciona una comparación entre ToolBench y esfuerzos anteriores. En particular, hay tres etapas para crear ToolBench:

• Recopilación de APIs: Recopilan 16,464 APIs REST (transferencia de estado representacional) de RapidAPI2. Esta plataforma alberga una gran cantidad de APIs del mundo real puestas a disposición por desarrolladores. Estas APIs cubren 49 áreas distintas, incluyendo comercio electrónico, redes sociales y clima. Extraen documentación completa de APIs de RapidAPI para cada API, incluyendo resúmenes de características, entradas necesarias, ejemplos de código para llamadas a API, etc. Para que el modelo generalice a APIs no encontradas durante el entrenamiento, esperan que los LLMs aprendan a utilizar las APIs comprendiendo estos documentos.

• Generación de instrucciones: Comienzan seleccionando algunas APIs de toda la colección y luego piden a ChatGPT que desarrolle varias instrucciones para estas APIs. Se seleccionan instrucciones que cubren escenarios de herramienta única y multitool para abarcar situaciones del mundo real. Esto asegura que su modelo aprenda cómo manejar diversas herramientas individualmente y cómo combinarlas para completar tareas desafiantes.

• Anotación de la ruta de solución: Destacan las respuestas excelentes a estas directivas. Cada respuesta puede implicar varias iteraciones de razonamiento del modelo y solicitudes de API en tiempo real para llegar a la conclusión final. Incluso el LLM más avanzado, es decir, GPT-4, tiene una baja tasa de éxito para comandos complicados debido a las dificultades intrínsecas del aprendizaje de herramientas, lo que hace que la recopilación de datos sea ineficaz. Para hacer esto, crean un árbol de decisiones único basado en búsqueda en profundidad (DFSDT) para mejorar la capacidad de planificación y razonamiento de los LLMs. En comparación con la cadena de pensamiento tradicional (CoT) y ReACT, DFSDT permite a los LLMs evaluar una variedad de razones y decidir si retroceder o continuar por una buena ruta. En los estudios, DFSDT completa de manera efectiva esas instrucciones difíciles que no pueden responderse utilizando CoT o ReACT y aumenta en gran medida la eficiencia de la anotación.

Investigadores de la Universidad de Tsinghua, ModelBest Inc., Universidad Renmin de China, Universidad de Yale, WeChat AI, Tencent Inc. y Zhihu Inc. crearon ToolEval, un evaluador automatizado respaldado por ChatGPT, para evaluar las habilidades de uso de herramientas de los LLMs. Incluye dos métricas cruciales: (1) tasa de victoria, que contrasta el valor y la utilidad de dos enfoques de solución posibles, y (2) tasa de aprobación, que evalúa la capacidad para llevar a cabo una instrucción con recursos limitados con éxito. Demuestran que ToolEval está fuertemente asociado con la evaluación humana y ofrece una evaluación precisa, escalable y consistente del aprendizaje de herramientas. Obtienen ToolLLaMA optimizando LLaMA en ToolBench.

Tras el análisis utilizando su ToolEval, llegan a las siguientes conclusiones:

• La capacidad de ToolLLaMA para manejar tanto instrucciones simples de herramienta única como instrucciones sofisticadas de multitool es atractiva. Solo se necesita la documentación de la API para que ToolLLaMA se generalice con éxito a nuevas APIs, lo que lo hace único en el campo. Esta adaptabilidad permite a los usuarios incorporar nuevas APIs de manera fluida, aumentando la utilidad del modelo en aplicaciones del mundo real. A pesar de estar optimizado en solo más de 12,000 instancias, ToolLLaMA logra un rendimiento comparable al del modelo “profesor” ChatGPT en el uso de herramientas.

• Demuestran cómo su DFSDT funciona como un método amplio de toma de decisiones para mejorar la capacidad de razonamiento de los LLMs.

DFSDT supera a ReACT al extender el espacio de búsqueda al considerar varias trayectorias de razonamiento. Además, piden a ChatGPT que sugiera APIs pertinentes para cada instrucción y luego entrenan un recuperador de API neuronal utilizando estos datos. En la práctica, esta solución elimina la necesidad de selección manual de un vasto conjunto de APIs. Pueden integrar eficazmente ToolLLaMA y el recuperador de API. Como se ve en la Figura 1, el recuperador de API sugiere una colección de APIs pertinentes en respuesta a una instrucción, que luego se envía a ToolLLaMA para la toma de decisiones en varias rondas para determinar la respuesta final. Demuestran que el recuperador muestra una precisión de recuperación asombrosa, devolviendo APIs que coinciden estrechamente con los datos reales mientras clasifica un amplio conjunto de APIs. En conclusión, este estudio tiene como objetivo permitir que los LLMs de código abierto realicen comandos complejos utilizando una variedad de APIs en situaciones del mundo real. Anticipan que este trabajo investigará más a fondo la relación entre el uso de herramientas y el ajuste de instrucciones. También ofrecen una demostración junto con el código fuente en su página de GitHub.