Gorilla: Una Nueva Herramienta para Interactuar con APIs
Gorilla mejora la capacidad de los LLMs para generar llamadas API precisas y así tener un mejor rendimiento.
― 7 minilectura
Tabla de contenidos
- El Desafío con los LLMs Actuales
- Por Qué Gorilla es Diferente
- APIBench: La Herramienta de Evaluación
- Cómo Funciona Gorilla
- Entrenando el Modelo
- Abordando el Problema de las Alucinaciones
- La Importancia del Contexto
- Pruebas y Comparación de Desempeño
- Adaptándose al Cambio
- Aplicaciones en el Mundo Real
- Interacción Amigable
- Limitaciones Actuales
- Direcciones Futuras
- Conclusión
- Fuente original
- Enlaces de referencia
Gorilla es una nueva herramienta diseñada para ayudar a los modelos de lenguaje grandes (LLMs) a interactuar mejor con las APIs. Aunque los LLMs han avanzado mucho en entender y generar texto, todavía tienen problemas para usar las APIs de manera efectiva. Las APIs son como instrucciones que permiten que diferentes programas de software se comuniquen y trabajen juntos. Por ejemplo, cuando usas una app para reservar un vuelo, esa app probablemente usa varias APIs para verificar disponibilidad, reservar el boleto y enviar una confirmación. Gorilla busca mejorar cómo los LLMs generan estas llamadas a las APIs, haciéndolas más precisas y reduciendo las posibilidades de errores.
El Desafío con los LLMs Actuales
A pesar de los avances de los últimos años, LLMs como GPT-4 todavía enfrentan limitaciones. Dependiendo de un conjunto fijo de información, no pueden actualizar su conocimiento fácilmente. Si algo cambia en el mundo, estos modelos a menudo necesitan ser reentrenados para mantenerse al día. Esto puede ser un problema para aplicaciones que dependen de información que cambia frecuentemente, como las APIs. Al permitir que los LLMs usen herramientas y accedan a información actualizada, podemos ayudarles a desempeñarse mejor en tareas que requieren datos en tiempo real.
Por Qué Gorilla es Diferente
Gorilla está construido sobre un modelo llamado LLaMA, que ha sido ajustado para manejar mejor las llamadas a las APIs. Está diseñado específicamente para reducir errores que los LLMs suelen cometer al generar las instrucciones de la API. Por ejemplo, a menudo identifica mal qué API usar o genera parámetros incorrectos para las llamadas. Gorilla aborda estos problemas y muestra una fuerte capacidad para adaptarse a cambios al instante, lo cual es esencial para mantenerse al día con la Documentación de la API que evoluciona.
APIBench: La Herramienta de Evaluación
Para medir la capacidad de Gorilla, el equipo creó un conjunto de datos llamado APIBench. Este conjunto incluye una variedad de APIs populares de fuentes como HuggingFace, PyTorch y TensorFlow. Usando este conjunto, pueden evaluar qué tan bien se desempeña Gorilla al generar llamadas a las APIs precisas en comparación con los modelos existentes.
Cómo Funciona Gorilla
Gorilla funciona combinando una versión ajustada de LLaMA con un sistema de recuperación de documentos. Esto significa que cuando un usuario hace una pregunta, Gorilla puede buscar la documentación de la API más relevante en tiempo real. De esta forma, no solo genera llamadas a las APIs, sino que también asegura que las llamadas se basen en la información más actual. En pruebas, Gorilla ha mostrado mejor precisión y ha reducido la posibilidad de cometer errores en comparación con otros modelos.
Entrenando el Modelo
El equipo recopiló un gran número de llamadas a las APIs y creó ejemplos útiles para entrenar a Gorilla. Examinaron varias fuentes significativas para reunir APIs y aseguraron que las APIs seleccionadas tuvieran buena documentación. Después de recopilar esta información, crearon un conjunto de datos completo que contiene miles de pares de instrucciones-API.
Durante el entrenamiento, Gorilla aprendió a generar instrucciones específicas basadas en las solicitudes de los usuarios. Se entrenó para entender no solo cómo llamar a las APIs, sino también las limitaciones que podrían estar involucradas, como el tamaño del modelo o la precisión requerida.
Abordando el Problema de las Alucinaciones
Un problema importante con los LLMs es su tendencia a "alucinar", lo que significa que generan llamadas a las APIs incorrectas o imaginarias. Gorilla ha hecho mejoras significativas en este aspecto. Al ajustar su capacidad para usar una amplia selección de APIs, el modelo puede diferenciar mejor entre llamadas correctas e incorrectas a las APIs. Esto resulta en menos errores de alucinación, haciéndolo más confiable para los usuarios.
La Importancia del Contexto
Otro aspecto crítico del diseño de Gorilla es su capacidad para usar el contexto de manera efectiva. Cuando los usuarios proporcionan indicaciones, Gorilla puede recuperar la documentación más reciente relevante para esas indicaciones. Este enfoque adaptativo le permite responder con precisión basada en la información actual, haciéndolo más útil para aplicaciones del mundo real.
Pruebas y Comparación de Desempeño
Para evaluar la efectividad de Gorilla, el equipo comparó su desempeño contra otros modelos líderes como GPT-4 y sus predecesores. Realizaron pruebas en varios entornos, tanto con como sin el sistema de recuperación, para analizar qué tan bien respondía cada modelo a diferentes indicaciones. Los resultados indicaron que Gorilla supera consistentemente a otros modelos en precisión y relevancia, al mismo tiempo minimizando las alucinaciones.
Adaptándose al Cambio
La capacidad de Gorilla para adaptarse a los cambios en la documentación de la API es una de sus fortalezas clave. Dado que las APIs pueden cambiar con frecuencia, esta característica asegura que los usuarios puedan confiar en Gorilla para proporcionar información precisa, independientemente de las actualizaciones en el mundo de las APIs. Esta adaptabilidad no es común entre otros modelos, que a menudo luchan por mantenerse al día con la documentación recién lanzada.
Aplicaciones en el Mundo Real
Gorilla tiene el potencial para numerosas aplicaciones. Por ejemplo, puede ser usado para ayudar a desarrolladores a crear aplicaciones que requieren integración de APIs sin problemas. Tareas que antes requerían muchos pasos-como reservar viajes o coordinar eventos-podrían volverse mucho más simples. Los usuarios podrían simplemente pedirle a Gorilla que realice estas acciones, y este manejaría las llamadas necesarias a las APIs en segundo plano.
Interacción Amigable
Uno de los objetivos de Gorilla es facilitar la interacción para los usuarios. Al permitir indicaciones en lenguaje natural, los usuarios pueden ingresar sus solicitudes como lo harían en una conversación. El sistema de recuperación y las funciones adaptativas significan que los usuarios no necesitan conocer las APIs específicas o sus funciones. En cambio, pueden concentrarse en lo que quieren lograr, y Gorilla se encargará de los detalles técnicos.
Limitaciones Actuales
Aunque Gorilla muestra promesas, aún hay áreas para mejorar. El modelo depende en gran medida de la calidad de la documentación de la API que recupera. Si la documentación es mala o está desactualizada, podría llevar a imprecisiones en las respuestas. Además, Gorilla sigue siendo un modelo en desarrollo; por lo tanto, se necesitan más pruebas y ajustes para maximizar su potencial.
Direcciones Futuras
Mirando hacia adelante, hay muchas oportunidades para mejorar Gorilla. Las versiones futuras podrían incluir mejor soporte para más APIs diversas o incluso expandirse a otros lenguajes de programación. También se podría investigar cómo hacer el modelo más robusto contra errores en la documentación o proporcionar respuestas más intuitivas.
Conclusión
Gorilla representa un emocionante avance en el campo de los modelos de lenguaje grandes y su aplicación en interacciones con APIs. Al mejorar cómo los LLMs generan llamadas a las APIs y se adaptan a los cambios, Gorilla tiene el potencial de mejorar diversas aplicaciones en diferentes dominios. A medida que el modelo continúa desarrollándose, promete hacer que las interacciones con la tecnología sean más fluidas y amigables para los usuarios, abriendo nuevas posibilidades tanto para usuarios como para desarrolladores.
Título: Gorilla: Large Language Model Connected with Massive APIs
Resumen: Large Language Models (LLMs) have seen an impressive wave of advances recently, with models now excelling in a variety of tasks, such as mathematical reasoning and program synthesis. However, their potential to effectively use tools via API calls remains unfulfilled. This is a challenging task even for today's state-of-the-art LLMs such as GPT-4, largely due to their inability to generate accurate input arguments and their tendency to hallucinate the wrong usage of an API call. We release Gorilla, a finetuned LLaMA-based model that surpasses the performance of GPT-4 on writing API calls. When combined with a document retriever, Gorilla demonstrates a strong capability to adapt to test-time document changes, enabling flexible user updates or version changes. It also substantially mitigates the issue of hallucination, commonly encountered when prompting LLMs directly. To evaluate the model's ability, we introduce APIBench, a comprehensive dataset consisting of HuggingFace, TorchHub, and TensorHub APIs. The successful integration of the retrieval system with Gorilla demonstrates the potential for LLMs to use tools more accurately, keep up with frequently updated documentation, and consequently increase the reliability and applicability of their outputs. Gorilla's code, model, data, and demo are available at https://gorilla.cs.berkeley.edu
Autores: Shishir G. Patil, Tianjun Zhang, Xin Wang, Joseph E. Gonzalez
Última actualización: 2023-05-24 00:00:00
Idioma: English
Fuente URL: https://arxiv.org/abs/2305.15334
Fuente PDF: https://arxiv.org/pdf/2305.15334
Licencia: https://creativecommons.org/licenses/by/4.0/
Cambios: Este resumen se ha elaborado con la ayuda de AI y puede contener imprecisiones. Para obtener información precisa, consulte los documentos originales enlazados aquí.
Gracias a arxiv por el uso de su interoperabilidad de acceso abierto.