HyperAIHyperAI
vor 17 Tagen

ToolLLM: Unterstützung von Large Language Models bei der Beherrschung von über 16.000 realen APIs

Yujia Qin, Shihao Liang, Yining Ye, Kunlun Zhu, Lan Yan, Yaxi Lu, Yankai Lin, Xin Cong, Xiangru Tang, Bill Qian, Sihan Zhao, Lauren Hong, Runchu Tian, Ruobing Xie, Jie Zhou, Mark Gerstein, Dahai Li, Zhiyuan Liu, Maosong Sun
ToolLLM: Unterstützung von Large Language Models bei der Beherrschung von über 16.000 realen APIs
Abstract

Trotz der Fortschritte bei offenen Großsprachmodellen (Large Language Models, LLMs), wie beispielsweise LLaMA, bleiben deren Fähigkeiten im Umgang mit Tools erheblich eingeschränkt, d. h., die Nutzung externer Werkzeuge (APIs) zur Erfüllung menschlicher Anweisungen. Der Grund hierfür liegt darin, dass die derzeitige Anweisungstuning-Strategie primär auf grundlegende Sprachaufgaben fokussiert ist und den Bereich des Werkzeuggebrauchs vernachlässigt. Dies steht im Gegensatz zu den hervorragenden Werkzeugnutzungs-Fähigkeiten modernster, geschlossener LLMs, wie beispielsweise ChatGPT. Um diese Lücke zu schließen, stellen wir ToolLLM vor – einen allgemeinen Rahmen für den Werkzeuggebrauch, der die Datenkonstruktion, Modelltrainierung und Evaluierung umfasst. Zunächst präsentieren wir ToolBench, eine für den Werkzeuggebrauch konzipierte Anweisungstuning-Datenbank, die automatisch mit Hilfe von ChatGPT erstellt wurde. Die Erstellung gliedert sich in drei Phasen: (i) API-Sammlung: Wir sammeln 16.464 reale RESTful-APIs aus 49 Kategorien aus dem RapidAPI Hub; (ii) Anweisungsgenerierung: Wir nutzen ChatGPT, um vielfältige Anweisungen zu generieren, die diese APIs einbeziehen, wobei sowohl Einzel- als auch Mehrwerkzeug-Szenarien abgedeckt werden; (iii) Lösungspfad-Annotation: Wir verwenden ChatGPT, um für jede Anweisung einen gültigen Lösungspfad (Kette von API-Aufrufen) zu ermitteln. Um die Schlussfolgerungsfähigkeiten von LLMs zu verbessern, entwickeln wir einen neuartigen Algorithmus basierend auf Tiefensuche und Entscheidungsbäumen. Dieser ermöglicht es LLMs, mehrere Schlussfolgerungspfade zu bewerten und den Suchraum effizient zu erweitern. Darüber hinaus entwickeln wir einen automatischen Evaluierungsmechanismus namens ToolEval, um die Werkzeugnutzungs-Fähigkeiten von LLMs zu bewerten. Auf Basis von ToolBench fine-tunen wir LLaMA zu einem LLM namens ToolLLaMA und versehen es mit einem neuronalen API-Rekommendationssystem, das für jede Anweisung geeignete APIs vorschlägt. Experimente zeigen, dass ToolLLaMA eine bemerkenswerte Fähigkeit zur Ausführung komplexer Anweisungen und zur Generalisierung auf bisher nicht gesehene APIs aufweist und eine vergleichbare Leistung wie ChatGPT erreicht. ToolLLaMA zeigt zudem eine starke Zero-Shot-Generalisierungsfähigkeit auf einem außerhalb der Verteilung liegenden Datensatz für Werkzeugnutzung: APIBench.