KI-Apps & APIs: Warum sie sich nicht verbinden

Oreilly

In einer sich schnell entwickelnden digitalen Landschaft durchqueren zunehmend KI-gesteuerte Bots das Internet, suchen fleißig nach Application Programming Interfaces (APIs) und versuchen, mit ihnen zu interagieren. Während einige dieser automatisierten Entdecker bösartige Absichten hegen, ist eine bedeutende und wachsende Anzahl wohlmeinender Konsumenten, die sich bemühen, bestehende APIs zu entdecken, zu nutzen und davon zu profitieren. Diese Anfragen stammen häufig von Model Context Protocol (MCP)-gesteuerten Plattformen, die darauf ausgelegt sind, autonome Software direkt mit Web-APIs interagieren zu lassen.

Trotz ihrer hochentwickelten Natur haben diese KI-Clients in vielerlei Hinsicht Schwierigkeiten. Aktuelle Statistiken zeichnen ein herausforderndes Bild: Die Erfolgsquote für mehrstufige KI-gesteuerte API-Workflows liegt bei lediglich 30 %. Erschwerend kommt hinzu, dass diese hartnäckigen Clients nach anfänglichen Fehlern oft nicht aufgeben. Stattdessen setzen sie ihre Versuche fort, erzeugen übermäßigen Traffic und mindern gleichzeitig den Gesamtwert der Ziel-APIs. Dies wirft eine entscheidende Frage auf: Warum sind diese fortschrittlichen KI-Clients nicht in der Lage, die heutigen APIs effektiv zu nutzen, und was ist erforderlich, um diesen Trend umzukehren?

Die Antwort ist, wie sich herausstellt, nicht neu. Die grundlegenden Anforderungen für KI-gesteuerte API-Konsumenten spiegeln die menschlicher Entwickler wider: Sie benötigen Klarheit, kontextbezogene Informationen und eine sinnvolle Struktur, um erfolgreich zu interagieren. Doch viele Organisationen haben diese Grundsätze historisch vernachlässigt und scheinbar die tiefgreifende Erkenntnis aus dem wegweisenden Papier von 2017, “Attention Is All You Need”, vergessen. Diese entscheidende Forschung führte das Konzept der “Transformatoren” in die Welt der KI ein – Modelle, die Wörter mathematisch bewerten, basierend auf ihren Beziehungen innerhalb des umgebenden Inhalts. Dieser Bewertungsmechanismus, “Attention” genannt, ermöglicht es Programmen wie ChatGPT, Antworten zu generieren, die bemerkenswert kohärent und menschenähnlich sind.

Das Aufkommen von Transformatoren-gesteuerten generativen KI-Tools erfordert eine vollständige Neubewertung, wie APIs entworfen, dokumentiert und implementiert werden. Während Plattformen wie ChatGPT, Claude, Gemini und Copilot hervorragend darin sind, auf API-Designs zu “achten” – URLs, HTTP-Methoden, Eingaben, Schemata und erwartete Ausgaben zu identifizieren – fehlt ihnen von Natur aus die Fähigkeit zum wahren Verständnis oder zur Argumentation. Sie können erkennen, wie eine API aussieht, aber nicht, warum sie verwendet werden sollte oder was die zurückgegebenen Daten bedeuten. Im Wesentlichen sind die heutigen KI-Bots schnelle, flexible API-Konsumenten, die Schwierigkeiten mit der Entscheidungsfindung und der Interpretation von Bedeutung haben. Die gute Nachricht ist, dass wir durch die Nutzung ihrer Stärke bei der Mustererkennung und kontextuellen Assoziation API-Designs verbessern können, um ihre aktuellen Einschränkungen auszugleichen und APIs somit “KI-bereit” zu machen.

Um gleiche Wettbewerbsbedingungen zu schaffen, gibt es vier Schlüsselpraktiken, die lange für menschliche Entwickler von Vorteil waren und für KI-gesteuerte Clients gleichermaßen entscheidend sind. Erstens: Seien Sie explizit. Im Gegensatz zu Menschen sind Maschinen keine intuitiven Entdecker. Obwohl sie geschickt im Parsen von Text sind, können sie keine intuitiven Sprünge machen. Sie benötigen explizite Hinweise darauf, was erreicht werden kann, wie es zu tun ist und warum. Eine knappe Liste von Operationen wie GET /customers/ mag für einen Menschen klar sein, der weitere Dokumentation für Details suchen würde. Für eine Maschine führt diese Kürze jedoch zu statistischen Vermutungen. Das Bereitstellen expliziter Anweisungen, wie “Um eine Liste von Kundendatensätzen abzurufen, verwenden Sie GET /customers/” oder “Um einen neuen Kundendatensatz zu erstellen, verwenden Sie POST /customers/ mit dem createCustomer-Schema”, erhöht die Erfolgsquoten erheblich, indem kein Raum für Mehrdeutigkeiten bleibt.

Zweitens: Sagen Sie ihnen, warum. KI-Modelle sind geschickt darin, zu erkennen, wie eine API verwendet werden kann, aber weniger darin, zu bestimmen, warum sie verwendet werden sollte. Das Anreichern der Dokumentation mit kontextbezogenen Erklärungen schließt diese Lücke. Phrasen wie “Verwenden Sie den PriorityAccounts-Endpunkt, um die zehn wichtigsten Kunden basierend auf der Marktgröße zu identifizieren” oder “Verwenden Sie den submitApplication-Endpunkt, sobald alle anderen Schritte im Mitarbeiterbewerbungsprozess abgeschlossen sind” liefern unschätzbare Hinweise. KI-gesteuerte Clients, insbesondere solche, die von großen Sprachmodellen (LLMs) unterstützt werden, sind geschickt darin, solche Texte zu erkennen und sie mit relevanten API-Endpunkten zu assoziieren.

Drittens: Seien Sie konsistent und vorhersehbar. Die immense Leistungsfähigkeit von LLM-basierten Anwendungen beruht auf den riesigen Datensätzen von Code und Dokumenten, auf denen sie trainiert werden. Diese angesammelten historischen Muster ermöglichen es KI-Clients, mit neuen APIs zu interagieren. Folglich wird eine API, die gängige Muster und Konventionen in diesen Trainingsdaten widerspiegelt, reibungslosere Interaktionen ermöglichen. Abweichungen mit einzigartigen Elementen, unerwarteten Antworten oder nicht-traditionellen Verwendungen von Standardprotokollen (z. B. die ausschließliche Verwendung von HTTP PUT zur Erstellung, wenn POST üblicher ist, oder das Vertrauen auf XML-Schemata, wenn JSON vorherrschend ist) werden es KI-gesteuerten Anwendungen unweigerlich erschweren, erfolgreich zu sein.

Schließlich: Machen Sie Fehlerantworten umsetzbar. Wenn Menschen auf Fehler stoßen, scannen sie typischerweise Informationen, leiten das Problem ab und formulieren eine Lösung. Maschinengetriebenen Clients fehlt jedoch diese intuitive Problemlösungsfähigkeit. Sie greifen oft auf Wiederholungsversuche mit zufälligen Änderungen zurück oder geben einfach auf. Um sie zu unterstützen, müssen API-Fehlerantworten explizit sein, Kontext liefern und konsistenten Formaten folgen. Die Annahme der Spezifikation “Problem Details for HTTP APIs” (RFC7078) wird dringend empfohlen. Dieses strukturierte Format identifiziert und erklärt nicht nur den Fehler, sondern kann auch eine mögliche Lösung vorschlagen, wie z. B. “Dieses Update ist fehlgeschlagen, da ein Feld fehlte: hatsize.” Dieser Ansatz steht auch im Einklang mit dem Prinzip der Konsistenz, da RFC7078 in LLM-Trainingsdaten weit verbreitet ist. Darüber hinaus können APIs durch die Behandlung von Fehlern als “Teilversuche” und die Bereitstellung klarer Rückmeldungen Maschinen-Clients effektiv “neu trainieren”, indem sie ihren lokalen Kontext mit Beispielen zur Behebung zukünftiger Probleme füllen.

Letztendlich sind die Praktiken, die Interaktionen mit KI-gesteuerten API-Clients verbessern, genau die, die seit langem zur Verbesserung des API-Designs für menschliche Entwickler befürwortet werden. Explizit zu sein reduziert die kognitive Belastung, Entwicklern (und Maschinen) zu sagen, warum, strafft die Entscheidungsfindung, Konsistenz fördert eine intuitive Erfahrung und umsetzbare Fehlerantworten führen zu einer schnelleren Problemlösung. Die kontinuierliche Überwachung der API-Nutzung – Beobachtung gängiger Endpunkte, persistenter Fehlerbedingungen und Verkehrsmuster – liefert entscheidende Einblicke für zukünftige Designverbesserungen. Ob für menschliche Entwickler oder Maschinenagenten, die Beachtung dieser grundlegenden Designprinzipien zahlt sich erheblich aus.