Sprache-Modelle mit RESTful APIs verbinden
Ein neues System zur Verbesserung von API-Interaktionen für Sprachmodelle.
― 3 min Lesedauer
Inhaltsverzeichnis
Sprachmodelle haben sich in letzter Zeit echt weiterentwickelt. Sie können verschiedene Aufgaben erledigen, indem sie Tools und externe Ressourcen nutzen. Aber viele Methoden haben noch Probleme, wenn's um echte Herausforderungen geht, vor allem bei denen, die mehrere APIs brauchen.
Das Problem
Die meisten bestehenden Methoden sind auf ein paar speziell designte Tools beschränkt. Das macht sie weniger effektiv, wenn's um komplexe Anfragen geht, die unterschiedliche APIs erfordern. Ausserdem fehlt ein klarer Standard für API-Design, was die Verbindung zu verschiedenen Diensten erschwert.
Die Lösung
In dieser Arbeit schlagen wir ein neues System vor, das Sprachmodelle mit RESTful APIs verbindet. Dieses System soll komplexe Nutzeranfragen effektiv bearbeiten. Es beinhaltet mehrere wichtige Komponenten:
- Planer: Zerlegt die Nutzerinstruktionen in kleinere Teilaufgaben.
- API-Auswähler: Wählt die richtigen APIs für die Schritte aus, die der Planer identifiziert hat.
- Executor: Ruft die APIs auf und verarbeitet die Antworten.
Dieses System verwendet einen schrittweisen Planungsansatz. Es kann seine Strategie anpassen, basierend auf den Antworten, die es von den APIs erhält.
Herausforderungen bei der Verbindung mit APIs
Die Verbindung von Sprachmodellen mit echten APIs bringt einige Herausforderungen mit sich.
- Unerwartete Situationen: Echte APIs können unvorhersehbar reagieren. Das System muss in der Lage sein, diese Situationen effektiv zu managen.
- Spezielle Formate: API-Parameter und -Antworten folgen oft bestimmten Formaten, was die Nutzung kompliziert machen kann.
Das Framework
Das vorgeschlagene System baut auf drei Hauptmodulen auf:
- Planung: Der Planer erstellt einen detaillierten Plan in natürlicher Sprache basierend auf der Anfrage des Nutzers.
- API-Auswahl: Der API-Auswähler mappt den Plan auf die entsprechenden API-Aufrufe.
- Ausführung: Der Executor führt die API-Aufrufe durch und verarbeitet die Ergebnisse.
Dieses Framework ermöglicht einen flexiblen Ansatz zur Lösung komplexer Probleme.
Benchmarking
Um unser Framework zu bewerten, haben wir einen Benchmark namens RestBench entwickelt. Dieser Test umfasst reale Szenarien und Nutzeranfragen, die Interaktionen mit mehreren APIs erfordern. Mit RestBench können wir beurteilen, wie gut unser System in echten Anwendungsfällen funktioniert.
Ergebnisse
In Experimenten zeigte unser vorgeschlagenes System starke Leistungen. Es konnte komplexe Nutzerinstruktionen effektiv bearbeiten. Die Ergebnisse zeigen, dass unser Framework effizient mit RESTful APIs verbinden kann.
Zukünftige Arbeiten
In der Zukunft wollen wir die Bandbreite der Aufgaben, die unser System bewältigen kann, erweitern. Ausserdem werden wir sein Potenzial in verschiedenen Bereichen, sowohl akademisch als auch industriell, erkunden.
Fazit
Diese Arbeit präsentiert eine neue Möglichkeit, Sprachmodelle mit RESTful APIs zu verbinden. Indem wir die Grenzen der aktuellen Methoden angehen, bieten wir ein System, das die Nutzerbedürfnisse in realen Szenarien besser erfüllen kann.
Titel: RestGPT: Connecting Large Language Models with Real-World RESTful APIs
Zusammenfassung: Tool-augmented large language models (LLMs) have achieved remarkable progress in tackling a broad range of tasks. However, existing methods are mainly restricted to specifically designed tools and fail to fulfill complex instructions, having great limitations when confronted with real-world scenarios. In this paper, we explore a more realistic scenario by connecting LLMs with RESTful APIs, which adhere to the widely adopted REST software architectural style for web service development. To address the practical challenges of tackling complex instructions, we propose RestGPT, which exploits the power of LLMs and conducts a coarse-to-fine online planning mechanism to enhance the abilities of task decomposition and API selection. RestGPT also contains an API executor tailored for calling RESTful APIs, which can meticulously formulate parameters and parse API responses. To fully evaluate the performance of RestGPT, we propose RestBench, a high-quality benchmark which consists of two real-world scenarios and human-annotated instructions with gold solution paths. Experiments show that RestGPT is able to achieve impressive results in complex tasks and has strong robustness, which paves a new way towards AGI. RestGPT and RestBench is publicly available at https://restgpt.github.io/.
Autoren: Yifan Song, Weimin Xiong, Dawei Zhu, Wenhao Wu, Han Qian, Mingbo Song, Hailiang Huang, Cheng Li, Ke Wang, Rong Yao, Ye Tian, Sujian Li
Letzte Aktualisierung: 2023-08-26 00:00:00
Sprache: English
Quell-URL: https://arxiv.org/abs/2306.06624
Quell-PDF: https://arxiv.org/pdf/2306.06624
Lizenz: https://creativecommons.org/licenses/by/4.0/
Änderungen: Diese Zusammenfassung wurde mit Unterstützung von AI erstellt und kann Ungenauigkeiten enthalten. Genaue Informationen entnehmen Sie bitte den hier verlinkten Originaldokumenten.
Vielen Dank an arxiv für die Nutzung seiner Open-Access-Interoperabilität.
Referenz Links
- https://restgpt.github.io
- https://api.themoviedb.org/3/search/person
- https://api.themoviedb.org/3/person/1769/movie
- https://api.themoviedb.org/3/person/6193/movie
- https://api.themoviedb.org/3/movie/466420/credits
- https://api.spotify.com/v1/me/player/volume
- https://api.spotify.com/v1/me/player/next
- https://api.spotify.com/v1/me/playlists
- https://api.spotify.com/v1/search
- https://api.spotify.com/v1/playlists/6GHT/tracks
- https://api.themoviedb.org/3/tv/63926/season/1/episode/2
- https://api.spotify.com/v1/me/player/currently-playing
- https://api.spotify.com/v1/tracks/5gAC
- https://python.langchain.com/