Vai al contenuto

Streaming e strumenti ​

Richiedere uno stream ​

sh
curl --no-buffer --fail-with-body https://api.llm.netter.io/v1/chat/completions \
  -H "Authorization: Bearer $NETTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "NOME_PUBBLICO",
    "messages": [{"role": "user", "content": "Spiega il risultato in tre punti."}],
    "max_tokens": 1024,
    "stream": true
  }'

Lo streaming usa SSE secondo il protocollo richiesto. Consuma gli eventi fino al completamento previsto dal protocollo, comprese le informazioni d’uso finali. Un evento non coincide necessariamente con un token o un messaggio completo.

Il proxy non accumula l’intera risposta prima di inoltrarla. I limiti contano le richieste avviate; rifiutare una nuova richiesta per eccesso di traffico non deve chiudere uno stream già stabilito.

Errori e interruzioni ​

Un errore può arrivare dopo che lo stream è già iniziato. Gestisci gli errori in-band e il trasporto incompleto; non considerare una risposta connessa come completata solo perché ha restituito HTTP 200.

Non riconnettere automaticamente uno stream come se fosse la stessa richiesta. Un nuovo invio può duplicare il lavoro e l’addebito. Se mancano uso finale o evento terminale richiesto, la riserva può rimanere incerta fino al riscontro del provider.

Tool calling ​

Il modello può richiedere un’azione di uno strumento. Il client esegue l’azione autorizzata, raccoglie il risultato e lo reinvia nel formato nativo, mantenendo gli identificativi del tool. Netter non esegue automaticamente comandi sul computer del cliente.

La protezione PII ripristina anche i valori nei campi testuali compatibili degli argomenti degli strumenti. Valida comunque autorizzazioni, input e risultati nel tuo software prima di compiere azioni.

Reasoning e artefatti firmati ​

Per thinking firmato e blocchi cifrati, conserva gli artefatti opachi ricevuti e reinviali senza modificarli nel flusso previsto. L’envelope Netter mantiene i vincoli di contesto e identità. Cambiare chiave, utente, tenant o modello può rendere il replay incompatibile.

Diagnostica Switchyard ​

Quando presenti, questi header collegano costo e routing:

HeaderSignificato
x-netter-request-groupCollega registrazioni di selezione e risposta
x-netter-routing-charge-eurConsumo della selezione
x-netter-charge-eurNelle risposte non streaming, addebito comprendente selezione e risposta

Nello streaming il consumo della risposta si completa alla fine: non interpretare gli header iniziali come totale finale già definitivo. Usa i riepiloghi contabili per il riscontro economico.