OpenAI ha annunciato l'API Responses, la sua interfaccia più avanzata e versatile per la creazione di applicazioni AI intelligenti. Supportando sia input di testo che di immagini con output di testo arricchito, questa API consente conversazioni dinamiche e stateful che ricordano e si basano sulle interazioni precedenti, rendendo le esperienze AI più naturali e sensibili al contesto. Sblocca inoltre potenti funzionalità attraverso strumenti integrati come la ricerca web, la ricerca di file, l'interprete di codice e altro ancora, consentendo al contempo una perfetta integrazione con sistemi esterni tramite la chiamata di funzioni. Il suo design basato sugli eventi fornisce aggiornamenti chiari e strutturati in ogni fase, rendendo più facile che mai la creazione di flussi di lavoro AI sofisticati e in più fasi.
Le caratteristiche principali includono:
- Conversazioni con stato tramite l'ID della risposta precedente
- Strumenti integrati come ricerca web, ricerca file, interprete di codice, MCP e altri
- Accesso a modelli avanzati disponibili in esclusiva, come o1-pro
- Supporto migliorato per i modelli di ragionamento con sintesi del ragionamento e gestione efficiente del contesto tramite ID delle risposte precedenti o elementi di ragionamento crittografati.
- Output chiari e basati sugli eventi che semplificano l'integrazione e il controllo
Sebbene l'API Chat Completions rimanga pienamente supportata e ampiamente utilizzata, OpenAI prevede di ritirare l'API Assistants nella prima metà del 2026.
Per supportare l'adozione dell'API Responses, sono stati introdotti due nuovi Snap:
Completamenti chat OpenAI ⇒ Generazione API risposte OpenAI
Chiamata dello strumento OpenAI ⇒ Chiamata dello strumento API OpenAI Responses
Entrambi gli Snap sono completamente compatibili con gli Snap di utilità upstream e downstream esistenti, inclusi OpenAI Prompt Generator, OpenAI Multimodal Content Generator, tutti i Function Generator (Multi-Pipeline, OpenAPI e APIM), Function Result Generator e Message Appender. Ciò consente di riutilizzare le pipeline esistenti e i modelli di sviluppo familiari, ottenendo al contempo l'accesso alle funzionalità avanzate dell'API Responses.
Generazione API risposte OpenAI


Lo Snap OpenAI Responses API Generation è progettato per supportare la nuovissima API Responses di OpenAI, consentendo interazioni più strutturate, stateful e potenziate dagli strumenti. Sebbene si basi sulla familiare interfaccia dello Snap Chat Completions, sono state introdotte diverse nuove proprietà e aggiornamenti comportamentali per allinearsi alle funzionalità dell'API Responses.
Nuove proprietà
- Messaggio: l'input inviato all'LLM. Questo campo sostituisce il precedente Utilizza payload del messaggio, Payload del messaggioe Prompt nello Snap OpenAI Chat Completions, consolidandole in un unico input. Elimina l'ambiguità tra "prompt" come testo grezzo e come modello e supporta sia il formato stringa che quello elenco.
- ID risposta precedente: l'ID univoco della risposta precedente al modello. Utilizzarlo per creare conversazioni a più turni.
- Parametri del modello
- Riepilogo del ragionamento: per i modelli di ragionamento, fornisce un riepilogo del processo di ragionamento del modello, facilitando il debug e la comprensione del processo di ragionamento del modello. La proprietà può essere nessuna, automatica o dettagliata.
- Configurazioni avanzate dei prompt
- Istruzioni: applicate solo alla risposta corrente, rendendole utili per lo scambio dinamico di istruzioni tra i turni. Per mantenere le istruzioni tra i turni quando si utilizza previous_response_id, è necessario utilizzare il messaggio dello sviluppatore nello Snap OpenAI Prompt Generator.
- Configurazioni avanzate di risposta
- Troncamento: definisce come gestire gli input che superano la finestra di contesto del modello. L'opzione "auto" consente al modello di troncare la parte centrale della conversazione per adattarla, mentre l'opzione "disabled" (impostazione predefinita) fa sì che la richiesta fallisca con un errore 400 se viene superato il limite di contesto.
- Includi contenuto crittografato del ragionamento: include una versione crittografata dei token di ragionamento nell'output, consentendo agli elementi di ragionamento di persistere quando l'archivio è disabilitato.
- Strumenti integrati
- Ricerca sul web: Consente al modello di accedere a informazioni aggiornate da Internet per rispondere a domande che vanno oltre i dati di addestramento.
- Tipo di ricerca web
- Dimensione del contesto di ricerca
- Posizione dell'utente: posizione approssimativa dell'utente, inclusi città, regione, paese e fuso orario, per fornire risultati di ricerca più pertinenti.
- Ricerca file: Consente al modello di recuperare informazioni da documenti o file.
- ID negozio Vector
- Numero massimo di risultati
- Includi risultati della ricerca: determina se i risultati della ricerca grezzi vengono inclusi nella risposta per motivi di trasparenza o debug.
- Classificatore
- Soglia di punteggio
- Filtri: filtri aggiuntivi basati sui metadati per affinare i risultati della ricerca. Per ulteriori dettagli sull'utilizzo dei filtri, vedere Filtraggio dei metadati.
- Ricerca sul web: Consente al modello di accedere a informazioni aggiornate da Internet per rispondere a domande che vanno oltre i dati di addestramento.
- Configurazione avanzata degli strumenti
- Scelta dello strumento: una nuova opzione, SPECIFICA UNO STRUMENTO INTEGRATO, consente di specificare che il modello deve utilizzare uno strumento integrato per generare una risposta.
Si noti che lo Snap Generazione API risposte OpenAI non supporta le proprietà del conteggio delle risposte o delle sequenze di arresto, poiché queste non sono disponibili nell'API risposte. Inoltre, il nome utente del messaggio, che può essere specificato nello Snap Generatore di prompt, non è supportato e verrà ignorato se incluso.
Risposta modello di Chat Completions vs Responses API
API per il completamento delle chat

API delle risposte

L'API Responses introduce unastruttura di output basata sugli eventi che migliora significativamente il modo in cui gli sviluppatori creano e gestiscono le applicazioni basate sull'intelligenza artificiale rispetto alla tradizionale API Chat Completions. Mentre l'API Chat Completions restituisce una singola risposta in testo semplice all'interno delle array , l'API Responses fornisce un array output che contiene una sequenza di elementi semantici, come il ragionamento, messaggio, chiamata_funzione, richiesta_webe altro ancora, che delineano chiaramente ogni fase del ragionamento e delle azioni del modello. Questo approccio strutturato consente agli sviluppatori di tracciare e interpretare facilmente il comportamento del modello, facilitando una gestione degli errori più robusta e un'integrazione più fluida con strumenti esterni. Inoltre, la risposta dall'API Responses include le impostazioni dei parametri del modello, fornendo un contesto aggiuntivo agli sviluppatori.
Esempi di pipeline
Strumento integrato: ricerca web

Questo esempio mostra come utilizzare lo strumento di ricerca web integrato. In questa pipeline, la posizione dell'utente viene specificata per garantire che la ricerca web restituisca risultati geografici pertinenti.
Messaggio di sistema: sei un assistente cordiale e disponibile. Usa il tuo giudizio per decidere se utilizzare gli strumenti appropriati per rispondere alle domande dell'utente.
Domanda: Puoi consigliarmi 2 buoni ristoranti di sushi vicino a me?

Uscita:

Di conseguenza, l'output contiene sia una ricerca web che un messaggio. Il modello utilizza la ricerca web per trovare e fornire consigli basati sui dati attuali, personalizzati in base alla posizione specificata.
Strumento integrato: Ricerca file
Questo esempio mostra come lo strumento di ricerca file integrato consenta al modello di recuperare informazioni dai documenti archiviati in un archivio vettoriale durante la generazione della risposta. In questo caso, è stato caricato il file wildfire_stats.pdf. È possibile creare e gestire archivi vettoriali tramite lapagina di gestione Vector Store.
Domanda: Qual è il numero di incendi boschivi federali nel 2018?

Uscita:

L'array di output contiene un file_search_call , che include i risultati della ricerca nel suo results . Questi risultati forniscono il testo corrispondente, i metadati e i punteggi di pertinenza dall'archivio vettoriale. Segue un message , in cui il modello utilizza le informazioni recuperate per generare una risposta fondata. La presenza di risultati dettagliati nel file file_search_call è abilitata selezionando l'opzione Includi risultati della ricerca file.
Chiamata dello strumento API OpenAI Responses


Lo strumento OpenAI Responses API Tool Calling Snap è progettato per supportare la chiamata di funzioni utilizzando l'API Responses di OpenAI. Funziona in modo simile allo Snap di chiamata dello strumento OpenAI (che utilizza l'API Chat Completions), ma è adattato alla struttura di risposta basata sugli eventi dell'API Responses e supporta interazioni stateful tramite l'ID della risposta precedente. Sebbene condivida gran parte della sua configurazione con lo Snap di generazione dell'API Responses, è stato appositamente progettato per flussi di lavoro che coinvolgono chiamate di funzione.
I modelli di pipeline degli agenti LLM esistenti e gli Snap di utilità, come Function Generator e Function Result Generator, possono continuare a essere utilizzati con questo Snap, proprio come con l'originale OpenAI Tool Calling Snap. La differenza principale risiede nell'adattamento della configurazione dello Snap per accogliere l'output event-driven dell'API Responses, in particolare la funzione strutturata function_call nell'elemento output .
Lo Snap API Tool Calling di Responses offre due visualizzazioni di output, simili allo Snap Tool Calling di OpenAI, con miglioramenti che semplificano la creazione di pipeline di agenti e supportano interazioni stateful utilizzando l'ID della risposta precedente:
- Visualizzazione della risposta del modello: La risposta API completa, compresi i campi aggiuntivi:
- messaggi: un elenco vuoto se l'archiviazione è abilitata, oppure la cronologia completa dei messaggi, inclusi il payload dei messaggi e la risposta del modello, se disabilitata (simile allo Snap OpenAI Tool Calling). Quando si utilizzano flussi di lavoro con stato, la cronologia dei messaggi non è necessaria perché per mantenere il contesto viene utilizzato l'ID della risposta precedente.
- has_tool_call: un valore booleano che indica se la risposta include una chiamata allo strumento. Poiché l'API delle risposte non include più il campo finish_reason: "tool_calls" , questo nuovo campo semplifica la creazione di condizioni di arresto nel pipeloop Snap all'interno della pipeline del driver dell'agente.
- Visualizzazione delle chiamate agli strumenti: visualizza l'elenco delle chiamate alle funzioni effettuate dal modello durante l'interazione.
Visualizzazione degli strumenti delle chat completate rispetto alle risposte API


Usi id come identificatore della chiamata alla funzione quando si restituisce il risultato della funzione.
Proprietà della chiamata allo strumento (nome, argomenti) sono annidate all'interno della funzione campo .
Ogni chiamata allo strumento include:
• id: l'ID evento univoco
• call_id: utilizzato per fare riferimento alla chiamata di funzione quando si restituisce il risultato
La struttura della chiamata allo strumento è piatta — nome e argomenti sono campi di primo livello.
Creazione di pipeline di agenti LLM
Per creare pipeline di agenti LLM con lo Snap Tool Calling dell'API Responses di OpenAI, è possibile riutilizzare lo stesso modello di pipeline di agenti descritto in Introduzione agli Snap Tool Calling e alle pipeline di agenti LLM. Sono necessarie solo piccole modifiche alla configurazione per supportare l'API Responses.
Pipeline dell'agente driver

La modifica principale riguarda la configurazione diPipeLoop Snap , dove ora la condizione di arresto deve verificare la presenza di has_tool_call , poiché l'API Responses non include più il campo finish_reason:"tool_calls".

Pipeline degli agenti operativi

Mappatura dei campi
Un Mapper Snap viene utilizzato per preparare i campi correlati per lo Snap di chiamata dello strumento API OpenAI Responses.

Chiamata dello strumento API OpenAI Responses
Le modifiche principali riguardano la configurazione di questo Snap per supportare le interazioni stateful dell'API Responses. Sono supportati due approcci:
Opzione 1: Utilizza Store (consigliato)
Sfrutta la gestione dello stato integrata dell'API Responses.
- Abilita negozio
- Utilizza ID risposta precedente
- Invia solo i risultati delle chiamate di funzione come messaggi di input per il round successivo. (I messaggi nell'output dello Snap sarà un array vuoto, quindi potrai comunque utilizzarlo nello Snap Message Appender per raccogliere i risultati dello strumento).

Opzione 2: conservare la cronologia delle conversazioni nella pipeline
Simile all'approccio utilizzato nell'API Chat Completions.
- Disattiva negozio
- Includere la cronologia completa dei messaggi nell'input (messaggi nel campo dell'output dello Snap contiene la cronologia dei messaggi)
- (Facoltativo) Abilitare Includi contenuto crittografato di ragionamento (per modelli di ragionamento) per preservare in modo efficiente il contesto di ragionamento.
Generatore di risultati delle funzioni OpenAI
Come spiegato nella sezione Visualizzazione delle chiamate agli strumenti delle API Chat Completions vs Responses, l'API Responses include sia un id e un call_id. È necessario utilizzare l' call_id per costruire il risultato della chiamata alla funzione quando lo si invia nuovamente al modello.

Conclusione
L'API OpenAI Responses rende i flussi di lavoro dell'IA più intelligenti e adattabili, con interazioni stateful e strumenti integrati. Gli Snap di generazione API e di chiamata strumenti OpenAI Responses di SnapLogic integrano queste funzionalità direttamente nelle vostre pipeline, consentendovi di sfruttare caratteristiche avanzate come strumenti integrati e output basati su eventi con solo minime regolazioni. Integrando questi Snap, potrete migliorare senza soluzione di continuità i vostri flussi di lavoro e sfruttare appieno il potenziale dell'API Responses.



