Streaming granulare degli strumenti
Streaming granulare degli strumenti
L’uso degli strumenti ora supporta lo streaming granulare per i valori dei parametri. Questo consente agli sviluppatori di trasmettere in streaming i parametri di uso degli strumenti senza buffering / validazione JSON, riducendo la latenza per iniziare a ricevere parametri di grandi dimensioni.
Lo streaming granulare degli strumenti è una funzionalità beta. Assicurati di valutare le tue risposte prima di utilizzarla in produzione.
Utilizza questo modulo per fornire feedback sulla qualità delle risposte del modello, sull’API stessa o sulla qualità della documentazione—non vediamo l’ora di sentirti!
Quando utilizzi lo streaming granulare degli strumenti, potresti potenzialmente ricevere input JSON non validi o parziali. Assicurati di tenere conto di questi casi limite nel tuo codice.
Come utilizzare lo streaming granulare degli strumenti
Per utilizzare questa funzionalità beta, aggiungi semplicemente l’header beta fine-grained-tool-streaming-2025-05-14
a una richiesta di uso degli strumenti e attiva lo streaming.
Ecco un esempio di come utilizzare lo streaming granulare degli strumenti con l’API:
In questo esempio, lo streaming granulare degli strumenti consente a Claude di trasmettere in streaming le righe di una lunga poesia nella chiamata dello strumento make_file
senza buffering per validare se il parametro lines_of_text
è JSON valido. Questo significa che puoi vedere il parametro in streaming mentre arriva, senza dover aspettare che l’intero parametro venga bufferizzato e validato.
Con lo streaming granulare degli strumenti, i chunk di uso degli strumenti iniziano lo streaming più velocemente e sono spesso più lunghi e contengono meno interruzioni di parole. Questo è dovuto alle differenze nel comportamento di chunking.
Esempio:
Senza streaming granulare (ritardo di 15s):
Con streaming granulare (ritardo di 3s):
Poiché lo streaming granulare invia parametri senza buffering o validazione JSON, non c’è garanzia che il flusso risultante si completi in una stringa JSON valida.
In particolare, se viene raggiunto il motivo di arresto max_tokens
, il flusso potrebbe terminare a metà di un parametro e potrebbe essere incompleto. Generalmente dovrai scrivere supporto specifico per gestire quando viene raggiunto max_tokens
.