- Eine offene Spezifikation auf Basis des OpenAPI-Standards, die einen klaren Vertrag zwischen LLMs und APIs definiert
- API-Aufrufe werden als zielorientierte Tools strukturiert, damit LLMs sie leicht nutzen können
- Mit bestehenden OpenAPI-Dokumentationen allein war es für LLMs schwierig, die passende API auszuwählen und aufzurufen
- agents.json unterstützt dabei, dass der API-Aufrufprozess deterministisch bleibt, während die von LLMs angestrebten Ergebnisse nichtdeterministisch umgesetzt werden können
Warum wird es benötigt?
- Um LLMs zu nutzen, muss die Art der Anbindung an APIs häufig direkt selbst implementiert werden
- Viele Entwickler verzichten auf das nichtdeterministische Verhalten von Agenten und versuchen stattdessen, mit hart codierten Workflows das gewünschte Ergebnis zu erzielen
- Mit agents.json kann ein LLM auf dem Weg zum gewünschten Ergebnis nichtdeterministisch arbeiten, während die API-Aufrufe selbst deterministisch ausgeführt werden
- Bestehende APIs sind meist für Entwickler konzipiert und daher für die direkte Nutzung durch LLMs schwer geeignet
- Beispiel Gmail API:
- Erforderlich sind Schritte wie E-Mails suchen, die E-Mail-Liste eines Threads abrufen und auf eine bestimmte E-Mail antworten
- Wenn ein LLM die OpenAPI-Dokumentation unverändert heranzieht, scheitert es oft daran, die passenden API-Aufrufe auszuwählen
- Mit agents.json lassen sich API-Aufrufe vorab definieren und in der richtigen Reihenfolge ausführen
Bestandteile von agents.json
- Die Datei
agents.json
- Dient dazu, API-Aufrufe miteinander zu verknüpfen und ergebnisorientierte Tools zu definieren
- Wird zusammen mit bestehenden OpenAPI-Dateien verwendet
- Das
agents.json SDK
- Ermöglicht es LLMs, auf Basis von agents.json Tools zu laden und eine Reihe von API-Aufrufen auszuführen
Unterschiede zu bestehendem OpenAPI
- Bei alleiniger Nutzung von OpenAPI gelingt es LLMs häufig nicht, API-Aufrufe korrekt auszuwählen
- Mit agents.json kann der Ablauf von API-Aufrufen als Template strukturiert werden, um den optimalen API-Flow für das gewünschte Ergebnis bereitzustellen
Warum es als Open Source veröffentlicht wurde
- Anfangs war es eine intern genutzte Konfigurationsdatei, wurde aber mit wachsendem Funktionsumfang schließlich als Open Source veröffentlicht
- HubSpot-CTO Dharmesh schlug das Konzept einer API-Übersetzungsspezifikation für LLMs vor; davon inspiriert wurde es öffentlich gemacht
- Derzeit gibt es 10 verifizierte API-Integrationen, und täglich kommen neue APIs hinzu
- Um Entwicklern eine einfache Erweiterung zu ermöglichen, wird kostenlos eine Plattform für Tool-Suche und benutzerdefinierte Sammlungen angeboten (https://wild-card.ai)
1 Kommentare
Hacker-News-Kommentare
Ich beobachte
agents.jsonaufmerksam und hoffe, dass sich dieses Protokoll durchsetztagents.jsonnebeneinander bestehen könntenDamit
agents.jsonfrüh angenommen wird, müsste die Dokumentation leichter verständlich seinagents.jsonerzeugtDie Kompatibilität zwischen OpenAPI und
agents.jsonist gut, könnte aber übertrieben seinagents.jsonentsteht, ist fraglich, ob sich die Unterstützung lohntViele Leute verwenden agentische IDEs, und es wäre gut, wenn
agents.jsonSnippets bereitstellen würde, die erklären, wie man es verwendet, wie man Dokumentation findet und wie man das Register durchsuchtFrage nach den Unterschieden zwischen
agents.jsonund der OpenAPI-Arazzo-SpezifikationDie Meinung, dass es schwierig ist, echte
agents.json-Dateien zu findenFrage zur Lizenz des Python-Pakets
Gute Idee, aber wegen der Lizenzprobleme könnte die Einführung schwierig sein
Es könnte noch einfacher werden, und das wäre gut
Vergleich von
agents.jsonundllms.txtllms.txtentwickelt sich ebenfalls zu einem Standard, der LLMs hilft, APIs zu verstehenagents.jsonscheint ein besseres strukturelles Verständnis verschiedener Endpunkte zu bietenFrage, warum Agents keine APIs verwenden können, die mit einer OpenAPI-Spezifikation dokumentiert sind
Hoffnung, dass
agents.jsonundLLM.txtzu einem einfachen Standard wierobot.txtwerdenagents.jsongut dazuFrage nach den Gemeinsamkeiten/Unterschieden zu MCP