Guida all'integrazione GloopAPI
Risposte in streaming
Consuma eventi in streaming e segnali di fine.
Lo streaming consegna l’output progressivamente senza modificare autorizzazioni o fatturazione. Imposta stream: true e leggi text/event-stream. Non interpretare l’intera risposta come un solo documento JSON.
Responses usa eventi tipizzati come response.output_text.delta e response.completed; analizza ogni evento secondo il tipo.
Analisi secondo il protocollo
Il campo SSE data di Chat Completions contiene un frammento JSON; il testo si trova normalmente in choices[].delta, e anche le chiamate agli strumenti possono essere frammentate. data: [DONE] indica la fine del protocollo. Richiedendo stream_options.include_usage potresti ricevere un frammento finale di utilizzo con choices vuoto; dati di utilizzo mancanti non significano gratuità.
Confini di rete
Un blocco di byte di rete non equivale a un evento. Accumula i dati fino al separatore di riga vuota, unisci le righe data e poi analizza il JSON. Gestisci caratteri UTF-8 divisi tra frammenti, righe vuote, commenti ed eventi di errore . Gli esempi a destra dell'endpoint mostrano la forma degli eventi del protocollo.
Se la connessione si interrompe o manca l'evento finale, contrassegna l'output come incompleto e conserva il testo già mostrato e i dati diagnostici della richiesta. Chiudere la connessione non garantisce né che il servizio non abbia eseguito la richiesta né un rimborso. Le richieste testuali sincrone non confermate non hanno il contratto di recupero delle attività persistenti e non vanno reinviate automaticamente.
Utilizzo e trattamento successivo
Conferma il risultato completo solo dopo una conclusione normale. La fatturazione finale si basa sui registri di utilizzo della piattaforma e non può essere dedotta dal numero locale di frammenti. Se il flusso segnala un errore dopo HTTP 200, gestiscilo secondo il protocollo senza basarti solo sullo stato iniziale. Vedi Gestione degli errori e Fatturazione.