OpenAI-Antworten-API

Panida (Chompoo) Nimnual Porträtfoto
8 min gelesen
Fassen Sie dies mit AI zusammen

OpenAI hat die Responses API vorgestellt, seine fortschrittlichste und vielseitigste Schnittstelle für die Entwicklung intelligenter KI-Anwendungen. Diese API unterstützt sowohl Text- als auch Bildeingaben mit Rich-Text-Ausgaben und ermöglicht dynamische, zustandsbehaftete Konversationen, die sich an frühere Interaktionen erinnern und darauf aufbauen, wodurch KI-Erfahrungen natürlicher und kontextsensitiver werden. Darüber hinaus bietet sie leistungsstarke Funktionen durch integrierte Tools wie Websuche, Dateisuche, Code-Interpreter und mehr und ermöglicht gleichzeitig die nahtlose Integration mit externen Systemen über Funktionsaufrufe. Das ereignisgesteuerte Design liefert klare, strukturierte Updates bei jedem Schritt und macht es einfacher denn je, anspruchsvolle, mehrstufige KI-Workflows zu erstellen.

Die wichtigsten Merkmale sind:

  • Zustandsbehaftete Konversationen über die vorherige Antwort-ID
  • Integrierte Tools wie Websuche, Dateisuche, Code-Interpreter, MCP und andere
  • Zugang zu exklusiv verfügbaren fortschrittlichen Modellen wie o1-pro
  • Verbesserte Unterstützung für Argumentationsmodelle mit Argumentationszusammenfassungen und effizienter Kontextverwaltung durch vorherige Antwort-IDs oder verschlüsselte Argumentationselemente
  • Klare, ereignisbasierte Ausgaben, die die Integration und Steuerung vereinfachen

Während die Chat Completions API weiterhin vollständig unterstützt wird und weit verbreitet ist, plant OpenAI, die Assistants API in der ersten Hälfte des Jahres 2026 einzustellen.

Um die Einführung der Responses-API zu unterstützen, wurden zwei neue Snaps eingeführt:

OpenAI-Chat-Vervollständigungen ⇒ OpenAI-Antworten API-Generierung

Aufruf des OpenAI-Tools ⇒ Aufruf des OpenAI-Antwort-API-Tools

Beide Snaps sind vollständig kompatibel mit bestehenden Upstream- und Downstream-Utility-Snaps, darunter dem OpenAI Prompt Generator, dem OpenAI Multimodal Content Generator, allen Function Generators (Multi-Pipeline, OpenAPI und APIM), dem Function Result Generator und dem Message Appender. Dadurch können bestehende Pipelines und vertraute Entwicklungsmuster wiederverwendet werden, während gleichzeitig Zugriff auf die erweiterten Funktionen der Responses API gewährt wird.

OpenAI-Antworten-API-Generierung

Der OpenAI Responses API Generation Snap wurde entwickelt, um die neueste Responses API von OpenAI zu unterstützen und strukturiertere, zustandsbehaftete und durch Tools erweiterte Interaktionen zu ermöglichen. Er baut zwar auf der vertrauten Oberfläche des Chat Completions Snap auf, verfügt jedoch über mehrere neue Eigenschaften und Verhaltensaktualisierungen, um den Funktionen der Responses API gerecht zu werden.

Neue Eigenschaften

  • Nachricht: Die an das LLM gesendete Eingabe. Dieses Feld ersetzt das bisherige Nachrichten-Nutzlast verwenden, Nachrichten-Nutzlastund Eingabeaufforderung im OpenAI Chat Completions Snap und konsolidieren Sie sie zu einer einzigen Eingabe. Dadurch wird die Mehrdeutigkeit zwischen „Prompt” als Rohtext und als Vorlage beseitigt und sowohl Zeichenfolgen- als auch Listenformate werden unterstützt.
  • Vorherige Antwort-ID: Die eindeutige ID der vorherigen Antwort an das Modell. Verwenden Sie diese, um mehrteilige Unterhaltungen zu erstellen.
  • Modellparameter
    • Zusammenfassung der Argumentation: Bei Argumentationsmodellen bietet diese Eigenschaft eine Zusammenfassung des Argumentationsprozesses des Modells und hilft so bei der Fehlersuche und beim Verständnis des Argumentationsprozesses des Modells. Die Eigenschaft kann „none“, „auto“ oder „detailed“ sein.
  • Erweiterte Eingabeaufforderungskonfigurationen
    • Anweisungen: Gilt nur für die aktuelle Antwort und ist daher nützlich, um Anweisungen zwischen den Runden dynamisch auszutauschen. Um Anweisungen über mehrere Runden hinweg beizubehalten, wenn previous_response_id verwendet wird, sollte die Entwicklermeldung im OpenAI Prompt Generator Snap verwendet werden.
  • Erweiterte Antwortkonfigurationen
    • Trunkierung: Legt fest , wie Eingaben behandelt werden, die das Kontextfenster des Modells überschreiten. Mit „auto“ kann das Modell die Mitte der Konversation trunkieren, um sie anzupassen, während „disabled“ (Standard) dazu führt, dass die Anfrage mit einem 400-Fehler fehlschlägt, wenn das Kontextlimit überschritten wird.
    • Verschlüsselte Inhalte einbeziehen: Bezieht eine verschlüsselte Version der Reasoning-Tokens in die Ausgabe ein, sodass Reasoning-Elemente auch dann erhalten bleiben, wenn der Speicher deaktiviert ist.
  • Integrierte Tools
    • Websuche: Ermöglicht dem Modell den Zugriff auf aktuelle Informationen aus dem Internet, um Anfragen zu beantworten, die über seine Trainingsdaten hinausgehen.
      • Art der Websuche
      • Suchkontextgröße
      • Standort des Benutzers: Ein ungefährer Standort des Benutzers, einschließlich Stadt, Region, Land und Zeitzone, um relevantere Suchergebnisse zu liefern.
    • Dateisuche: Ermöglicht dem Modell, Informationen aus Dokumenten oder Dateien abzurufen.
      • Vektor-Speicher-IDs
      • Maximale Anzahl von Ergebnissen
      • Suchergebnisse einbeziehen: Legt fest, ob Rohsuchergebnisse aus Gründen der Transparenz oder zur Fehlerbehebung in die Antwort einbezogen werden.
      • Ranker
      • Punkteschwelle 
      • Filter: Zusätzliche metadatenbasierte Filter zur Verfeinerung der Suchergebnisse. Weitere Informationen zur Verwendung von Filtern finden Sie unter Metadatenfilterung.
  • Erweiterte Werkzeugkonfiguration
    • Werkzeugauswahl: Mit der neuen Option „EINGEBUILTES WERKZEUG ANGEBEN“ kann festgelegt werden, dass das Modell ein eingebautes Werkzeug zur Erzeugung einer Antwort verwenden soll.

Beachten Sie, dass das OpenAI Responses API Generation Snap die Eigenschaften „Response Count“ (Antwortanzahl ) und „Stop Sequences“ (Stoppsequenzen) nicht unterstützt, da diese in der Responses API nicht verfügbar sind. Darüber hinaus wird der Benutzername der Nachricht, der im Prompt Generator Snap angegeben werden kann, nicht unterstützt und ignoriert, wenn er enthalten ist.

Modellantwort von Chat Completions vs Responses API

Chat-Vervollständigungs-API

Antworten-API

Die Responses API führt eineereignisgesteuerte Ausgabestruktur ein, die die Art und Weise, wie Entwickler KI-gestützte Anwendungen erstellen und verwalten, im Vergleich zur herkömmlichen Chat Completions API erheblich verbessert. Während die Chat Completions API eine einzige Antwort im Klartext innerhalb der choices , stellt die Responses-API ein Ausgabe mit einer Folge von semantischen Ereigniselementen zurück, wie z. B. Begründung, Nachricht, Funktionsaufruf, web_search_callund mehr – die jeden Schritt in der Argumentation und den Aktionen des Modells klar abgrenzen. Dieser strukturierte Ansatz ermöglicht es Entwicklern, das Verhalten des Modells leicht zu verfolgen und zu interpretieren, was eine robustere Fehlerbehandlung und eine reibungslosere Integration mit externen Tools ermöglicht. Darüber hinaus enthält die Antwort der Responses-API die Einstellungen der Modellparameter und bietet Entwicklern zusätzlichen Kontext.

Beispiele für Pipelines

Dieses Beispiel zeigt, wie das integrierte Web-Suchtool verwendet wird. In dieser Pipeline wird der Standort des Benutzers angegeben, um sicherzustellen, dass die Websuche relevante geografische Ergebnisse liefert.

Systemaufforderung: Sie sind ein freundlicher und hilfsbereiter Assistent. Bitte entscheiden Sie nach eigenem Ermessen, ob Sie die geeigneten Tools verwenden, um die Fragen des Benutzers zu beantworten.

Frage: Können Sie mir zwei gute Sushi-Restaurants in meiner Nähe empfehlen?

Ausgabe:

Das Ergebnis enthält somit sowohl einen Websuchaufruf als auch eine Nachricht. Das Modell nutzt die Websuche, um auf der Grundlage aktueller Daten Empfehlungen zu finden und bereitzustellen, die auf den angegebenen Standort zugeschnitten sind.

Dieses Beispiel zeigt, wie das integrierte Dateisuchtool es dem Modell ermöglicht, während der Antwortgenerierung Informationen aus Dokumenten abzurufen, die in einem Vektorspeicher gespeichert sind. In diesem Fall wurde die Datei wildfire_stats.pdf hochgeladen. Sie können Vektorspeicher über dieVerwaltungsseite „Vektorspeicher“ erstellen und verwalten.

Frage: Wie viele Waldbrände gab es 2018 in den Vereinigten Staaten?

Ausgabe:

Das Ausgabearray enthält eine file_search_call , das Suchergebnisse in seinem results . Diese Ergebnisse liefern übereinstimmenden Text, Metadaten und Relevanzbewertungen aus dem Vektorspeicher. Darauf folgt ein message , in dem das Modell die abgerufenen Informationen verwendet, um eine fundierte Antwort zu generieren. Das Vorhandensein detaillierter Ergebnisse im file_search_call wird durch Auswahl der Option „Dateisuchergebnisse einbeziehen“ aktiviert.

Aufruf des OpenAI Responses API-Tools

Das OpenAI Responses API Tool Calling Snap wurde entwickelt, um Funktionsaufrufe mithilfe der Responses API von OpenAI zu unterstützen. Es funktioniert ähnlich wie das OpenAI Tool Calling Snap (das die Chat Completions API verwendet), ist jedoch an die ereignisgesteuerte Antwortstruktur der Responses API angepasst und unterstützt zustandsbehaftete Interaktionen über die vorherige Antwort-ID. Obwohl es viele Konfigurationsmerkmale mit dem Responses API Generation Snap gemeinsam hat, wurde es speziell für Workflows entwickelt, die Funktionsaufrufe beinhalten.

Bestehende LLM-Agent-Pipeline-Muster und Utility-Snaps – wie der Function Generator und der Function Result Generator– können mit diesem Snap weiterhin verwendet werden, genau wie mit dem ursprünglichen OpenAI Tool Calling Snap. Der Hauptunterschied besteht darin, dass die Snap-Konfiguration an die ereignisgesteuerte Ausgabe der Responses-API angepasst werden muss, insbesondere an die strukturierte function_call im Ausgabe .

Das Responses API Tool Calling Snap bietet zwei Ausgabeansichten, ähnlich wie das OpenAI Tool Calling Snap, mit Verbesserungen zur Vereinfachung der Erstellung von Agenten-Pipelines und zur Unterstützung von zustandsbehafteten Interaktionen unter Verwendung der vorherigen Antwort-ID:

  • Modellantwortansicht: Die vollständige API-Antwort, einschließlich zusätzlicher Felder:
    • Nachrichten: eine leere Liste, wenn die Speicherung aktiviert ist, oder der vollständige Nachrichtenverlauf – einschließlich Nachrichteninhalt und Modellantwort – wenn sie deaktiviert ist (ähnlich wie beim OpenAI Tool Calling Snap). Bei der Verwendung von zustandsbehafteten Workflows ist der Nachrichtenverlauf nicht erforderlich, da die vorherige Antwort-ID zur Aufrechterhaltung des Kontexts verwendet wird.
    • has_tool_call: Ein boolescher Wert, der angibt, ob die Antwort einen Tool-Aufruf enthält. Da die Responses-API den Wert  finish_reason: „tool_calls”  enthält, erleichtert dieses neue Feld die Erstellung von Stoppbedingungen im Pipeloop-Snap innerhalb der Agent-Treiber-Pipeline.
  • Tool-Aufrufansicht: Zeigt die Liste der Funktionsaufrufe an, die vom Modell während der Interaktion ausgeführt wurden.

Tool-Aufruf Ansicht der Chat-Abschlüsse im Vergleich zu Antworten API

Verwendungszwecke id als Funktionsaufruf-Bezeichner beim Zurücksenden des Funktionsergebnisses.

Toolaufruf-Eigenschaften (name, arguments) sind in der function .

Jeder Tool-Aufruf umfasst:
id: die eindeutige Ereignis-ID
call_id: wird verwendet, um beim Zurückgeben des Ergebnisses auf den Funktionsaufruf zu verweisen

Die Tool-Aufrufstruktur ist flach — name und arguments sind Felder der obersten Ebene.

Aufbau von LLM-Agent-Pipelines

Um LLM-Agent-Pipelines mit dem OpenAI Responses API Tool Calling Snap zu erstellen, können Sie dasselbe Agent-Pipeline-Muster wiederverwenden, das in „Einführung in Tool Calling Snaps und LLM-Agent-Pipelines“ beschrieben ist. Es sind nur geringfügige Konfigurationsänderungen erforderlich, um die Responses API zu unterstützen.

Agent-Treiber-Pipeline

Die wichtigste Änderung betrifft diePipeLoop-Snap-Konfiguration , bei der die Stoppbedingung nun die has_tool_call , da die Responses-API den Wert „finish_reason” nicht mehr enthält :„tool_calls”enthält.

Agent-Arbeiter-Pipeline

Feldzuordnung

Ein Mapper Snap wird verwendet, um die zugehörigen Felder für das OpenAI Responses API Tool Calling Snap vorzubereiten.

Aufruf des OpenAI Responses API-Tools

Die wichtigsten Änderungen betreffen die Konfiguration dieses Snaps, um die zustandsbehafteten Interaktionen der Responses-API zu unterstützen. Es werden zwei Ansätze unterstützt:

Option 1: Store verwenden (empfohlen)
Nutzt die integrierte Statusverwaltung der Responses-API.

  • Store aktivieren
  • Vorherige Antwort-ID verwenden
  • Senden Sie nur die Ergebnisse der Funktionsaufrufe als Eingangsnachrichten für die nächste Runde. (Nachrichten in der Ausgabe des Snaps ist ein leeres Array, sodass Sie es weiterhin im Message Appender Snap verwenden können, um die Ergebnisse des Tools zu sammeln.)

Option 2: Konversationsverlauf in Pipeline-
beibehalten Ähnlich wie bei der Chat Completions API.

  • Store deaktivieren
  • Fügen Sie den vollständigen Nachrichtenverlauf in die Eingabe ein (Nachrichten in der Ausgabe des Snaps enthält den Nachrichtenverlauf)
  • (Optional) Aktivieren Sie „Include Reasoning Encrypted Content” (für Reasoning-Modelle), um den Reasoning-Kontext effizient zu bewahren.

OpenAI-Funktionsergebnisgenerator

Wie im Abschnitt „Tool Call View of Chat Completions vs Responses API“ erläutert, umfasst die Responses API sowohl eine id und eine call_id. Sie müssen die call_id verwenden, um das Ergebnis des Funktionsaufrufs zu erstellen, wenn Sie es an das Modell zurücksenden.

Schlussfolgerung

Die OpenAI Responses API macht KI-Workflows intelligenter und anpassungsfähiger, mit zustandsbehafteten Interaktionen und integrierten Tools. Die OpenAI Responses API Generation und Tool Calling Snaps von SnapLogic bringen diese Funktionen direkt in Ihre Pipelines und ermöglichen es Ihnen, mit nur minimalen Anpassungen von erweiterten Funktionen wie integrierten Tools und ereignisbasierten Ausgaben zu profitieren. Durch die Integration dieser Snaps können Sie Ihre Workflows nahtlos verbessern und das Potenzial der Responses API voll ausschöpfen.

Panida (Chompoo) Nimnual Porträtfoto
Software-Entwickler bei SnapLogic
Kategorie: Technik