El Portal de las Tecnologías para la Innovación

Re-Invoke: reescritura de la invocación de herramientas para la recuperación de herramientas de disparo cero

Proponemos Re-Invoke, un método de recuperación de herramientas no supervisado que recupera de manera eficaz y eficiente las herramientas más relevantes de un gran conjunto de herramientas dada la consulta del usuario con múltiples intenciones subyacentes.

Aumentar los modelos de lenguaje grandes (LLM) con herramientas externas, en lugar de depender únicamente de su conocimiento interno, podría liberar su potencial para resolver problemas más desafiantes. Los enfoques comunes para este «aprendizaje de herramientas» se dividen en dos categorías: (1) métodos supervisados ​​para generar funciones de llamada de herramientas , o (2) aprendizaje en contexto, que utiliza documentos de herramientas que describen el uso previsto de la herramienta junto con demostraciones de pocos intentos. Los documentos de herramientas brindan instrucciones sobre las funcionalidades de la herramienta y cómo invocarla, lo que permite a los LLM dominar las herramientas individuales.

Sin embargo, estos métodos enfrentan desafíos prácticos cuando se escalan a una gran cantidad de herramientas. En primer lugar, sufren límites de token de entrada. Es imposible alimentar la lista completa de herramientas dentro de una sola solicitud y, incluso si fuera posible, los LLM aún a menudo luchan por procesar de manera efectiva la información relevante de contextos de entrada largos . En segundo lugar, el conjunto de herramientas está evolucionando. Los LLM a menudo se combinan con un recuperador entrenado en pares de consulta-herramienta etiquetados para recomendar una lista corta de herramientas. Sin embargo, el conjunto de herramientas LLM ideal debería ser amplio y dinámico, con herramientas que se actualizan con frecuencia. Proporcionar y mantener etiquetas para entrenar a un recuperador para un conjunto de herramientas tan extenso y en evolución sería poco práctico. Finalmente, uno debe lidiar con intenciones ambiguas del usuario. El contexto del usuario en las consultas podría ofuscar las intenciones subyacentes, y no identificarlas podría llevar a llamar a las herramientas incorrectas.

En “ Re-Invoke: Tool Invocation Rewriting for Zero-Shot Tool Retrieval ”, presentado en EMNLP 2024 , presentamos un nuevo método de recuperación no supervisado diseñado específicamente para el aprendizaje de herramientas para abordar estos desafíos únicos. Re-Invoke aprovecha los LLM tanto para el enriquecimiento de documentos de herramientas como para la extracción de intenciones del usuario para mejorar el rendimiento de la recuperación de herramientas en varios casos de uso. Demostramos que el método Re-Invoke propuesto mejora de manera consistente y significativa las líneas de base que cubren las tareas de recuperación de una sola herramienta y de múltiples herramientas en conjuntos de datos de referencia de uso de herramientas.

Re-invocar

La tarea de recuperación de herramientas se formula como la recuperación de las herramientas más relevantes que un agente posterior puede ejecutar para satisfacer las consultas del usuario, dada una lista de documentos de herramientas que describen el uso previsto de la herramienta. Re-Invoke es un método de recuperación de herramientas totalmente no supervisado diseñado para tales tareas. Consta de dos componentes principales:

  1. Generador de consultas : para cada documento de herramienta, los LLM generan diversas consultas sintéticas que pueden responderse con la herramienta proporcionada. Estas consultas enriquecen el documento de herramienta y luego se codifican en el espacio de incrustación cuando los documentos de herramienta se incorporan sin conexión.
  2. Extractor de intenciones de consulta : durante la inferencia en línea, los LLM extraen las intenciones relacionadas con la herramienta principal de las consultas del usuario, filtrando el contexto de fondo irrelevante. Luego, cada intención del usuario se codifica en el mismo espacio de incrustación que los documentos de la herramienta para la comparación de similitudes.
Descripción general de ReInvoke-1

Descripción general de Re-Invoke en las tareas de recuperación de herramientas. Arriba: un generador de consultas produce diversas consultas sintéticas a partir de la documentación de la herramienta. Cada consulta sintética se concatena con la documentación de la herramienta para crear varias copias de la documentación de la herramienta ampliada. Abajo: un extractor de intenciones sintetiza varias intenciones subyacentes a partir de las consultas del usuario para recuperar las herramientas relevantes.

Como se pueden recuperar diferentes herramientas relevantes de cada intención extraída de las consultas del usuario, presentamos un nuevo método de clasificación de similitud de múltiples vistas para considerar todas las intenciones relacionadas con las herramientas expresadas en la consulta del usuario. Clasificamos las herramientas individualmente por la puntuación de relevancia dentro de cada intención y recuperamos la herramienta principal de cada intención (consulte el ejemplo a continuación). Para lograr esto, diseñamos una función de ordenamiento para considerar tanto la clasificación de la herramienta recuperada dentro de cada intención como el valor de la puntuación de similitud entre la herramienta y la intención en el espacio de incrustación. La formulación propuesta nos permite capturar la relevancia de cada intención para diferentes aspectos del documento de la herramienta, como se representa mediante las consultas sintéticas.

Clasificación de ReInvoke-2

Una ilustración del algoritmo de clasificación de similitud de múltiples vistas durante la recuperación. Se pueden extraer múltiples intenciones de la consulta del usuario. Primero calculamos los puntajes de similitud entre los documentos de herramientas expandidos y cada intención en el espacio de incrustación y luego clasificamos y recuperamos las mejores herramientas de cada intención.

Experimento

Seleccionamos los conjuntos de datos ToolBench y ToolE para evaluar el rendimiento de recuperación de herramientas de Re-Invoke. Ambos conjuntos de datos proporcionan pares de documentos de herramientas de consulta y de verdad fundamental que reflejan escenarios del mundo real. El conjunto de datos ToolBench consta de más de 10 000 herramientas extraídas del centro RapidAPI , adecuadas para evaluaciones de recuperación de herramientas a gran escala. Usamos la métrica nDCG@k para evaluar el rendimiento de recuperación de herramientas considerando solo las k herramientas recuperadas principales. Usamos el mismo conjunto de datos ToolBench para evaluar el rendimiento de extremo a extremo al integrar el agente LLM con el método de recuperación Re-Invoke propuesto.

Para Re-Invoke, utilizamos el modelo text-bison@001 de Google Vertex AI en el generador de consultas con una temperatura de muestreo de 0,7 (para introducir variaciones en la respuesta del modelo) para generar 10 consultas sintéticas diversas por documento de herramienta. El mismo modelo text-bison@001 (con una temperatura de muestreo de 0,0) se utiliza en el extractor de intenciones para sintetizar las intenciones de las consultas del usuario. Luego, extraemos vectores de incrustación densos de los documentos de herramientas aumentados y las intenciones extraídas utilizando el modelo textembedding-gecko@003 de Google Vertex AI . Para el método de recuperación dispersa, utilizamos vectores de incrustación BM25 . Promediamos los valores de incrustación de varias copias del documento de herramienta expandido como una representación del documento de herramienta. Replicamos nuestro experimento utilizando otros LLM, incluido el modelo turbo gpt-3.5 de OpenAI y el modelo Mistral-7B-Instruct-v0.3 de Mistral AI con los mismos parámetros de modelo y solicitud. Tenga en cuenta que esta investigación se realizó principalmente en noviembre de 2023 y, por lo tanto, utilizamos modelos text-bison@001 en nuestro experimento.

Re-Invoke supera las líneas base de recuperación dispersas y densas en las tareas de recuperación de herramientas

Para el método de recuperación dispersa no supervisada, utilizamos BM25 y HyDE con el modelo text-bison@001 de Google Vertex AI para la troncal LLM como métodos de recuperación de referencia. En el método de recuperación densa no supervisada, aplicamos el modelo textembedding-gecko@003 de Google Vertex AI y HyDE con el modelo text-bison@001 de Google Vertex AI como métodos de recuperación de referencia. nDCG@5 cuantifica el rendimiento de la recuperación frente a las etiquetas de verdad fundamental.

Como se muestra en el gráfico a continuación, Re-Invoke supera de manera consistente a los métodos de referencia en los métodos de recuperación densos y dispersos en todos los conjuntos de datos de referencia. La mejora es constante en los diferentes LLM principales. Los resultados de la evaluación demuestran la eficacia tanto de la mejora de los documentos de herramientas con consultas sintéticas como de la comprensión de las consultas del usuario para identificar las herramientas pertinentes.

Comparación de ReInvoke-3

Métricas nDCG@5 en conjuntos de datos de una sola herramienta y de múltiples herramientas de ToolBench I1, I2, I3 y ToolE utilizando métodos dispersos y de recuperación. También integramos Re-Invoke con la incrustación de BM25 y la incrustación de texto de Vertex AI utilizando text-bison@001, gpt-3.5-turbo y Mistral-7B-Instruct-v0.3 como tres LLM principales diferentes. El nDCG@5 varía de 0 a 1; cuanto más alto, mejor.

Estudio de caso sobre el rendimiento de Re-Invoke

Para mostrar cualitativamente la mejora del rendimiento con nuestro método de recuperación Re-Invoke propuesto, enumeramos algunos ejemplos en los que se recuperan las herramientas correctas con Re-Invoke. Por ejemplo, cuando el usuario solicita recomendaciones sobre cursos en línea sobre aprendizaje automático y necesita acceso a archivos PDF o URL relevantes, Re-Invoke identifica dos intenciones, «recomendar un curso sobre aprendizaje automático» y «tener acceso a archivos PDF o URL relevantes para leer más». También recupera con éxito las herramientas correctas para cada intención, CourseTool y PDF&URLTool . Sin embargo, el método de recuperación de referencia recupera CourseTool y las herramientas de búsqueda en su lugar.

ReInvoke-4-Muestra

Una lista de consultas de ejemplo del conjunto de datos de múltiples herramientas ToolE, que compara dos herramientas recuperadas por la línea base con Re-Invoke mediante la API de incrustación de texto Vertex. Re-Invoke identifica las intenciones (en verde y azul) y recupera las herramientas correctas (en verde y azul), mientras que la línea base recupera las herramientas incorrectas (en rojo).

Conclusión

Proponemos Re-Invoke, un enfoque de recuperación de herramientas totalmente no supervisado diseñado para escalar el aprendizaje de herramientas LLM a grandes conjuntos de herramientas. Aprovechamos los LLM para mejorar el contexto del documento de herramientas con diversas consultas sintéticas y extraer intenciones esenciales relacionadas con las herramientas a través de la extracción de intenciones. Re-Invoke ofrece una nueva perspectiva sobre la recuperación de herramientas escalable, priorizando la mejora del contexto del documento de herramientas y la comprensión de las intenciones sin ningún entrenamiento.

Expresiones de gratitud

Esta investigación fue realizada por Yanfei Chen, Jinsung Yoon, Devendra Singh Sachan, Qingze Wang, Vincent Cohen-Addad, Mohammadhossein Bateni, Chen-Yu Lee y Tomas Pfister. Google Blog. Traducido al español

Artículos relacionados

Scroll al inicio