Introduzione
Chat compatibile OpenAI per Gemini 3.5 Flash-Lite. Una finestra di lettura da 1.048.576 token, quattro livelli di sforzo di ragionamento predefiniti a minimal, 128 schemi di strumenti e output JSON in una sola chiamata sincrona, con streaming SSE quando lo chiedi.
Gemini 3.5 Flash-Lite è il modello di chat di Google pensato per il costo, pubblicato qui come un unico endpoint compatibile OpenAI. Legge fino a 1.048.576 token in una richiesta e risponde in un massimo di 65.536, e il suo sforzo di ragionamento parte da minimal – il livello più economico e più rapido – così classificazione, traduzione e semplice messa in forma dei dati girano sull'impostazione più bassa, a meno che una singola chiamata non chieda di più.
Caratteristiche principali
La corsia per il lavoro che arriva a migliaia
Quando un lavoro è fatto di diecimila righe invece che di una sola domanda difficile, è il prezzo della singola chiamata a decidere se si fa o no. È per questo che il modello sta qui: abbastanza economico perché ogni riga possa passare attraverso un modello, abbastanza veloce perché la coda si svuoti mentre la guardi.
Quattro livelli, e il predefinito è il più economico
reasoning_effort accetta minimal, low, medium o high ed è predefinito a minimal. Non inviare nulla compra quindi la risposta più economica e più rapida che questo modello abbia; alza il livello sulla singola richiesta che ha bisogno di più riflessione, non su tutta l'integrazione.
Un intero insieme di documenti in una sola richiesta
La finestra di lettura è di 1.048.576 token, così una specifica lunga, una trascrizione completa o un mese di log possono passare in una sola chiamata invece di essere tagliati in finestre che poi devi ricucire. I token di input restano comunque fatturati come misurati, quindi dimensiona il materiale, non solo il numero di chiamate.
Parametri della richiesta
| Parametro | Obbligatorio | Nota |
|---|---|---|
messages | Sì | Turni ordinati, dal più vecchio. Il contenuto è una stringa o un array di parti testo, |
max_tokens | No | Limita la risposta a 65.536; il valore predefinito è 4.096. |
reasoning_effort | No | minimal, low, medium o high; minimal è il valore predefinito, quindi non inviare nulla ti dà il livello più economico e più rapido. |
stop | No | Fino a 4 sequenze, come stringa o come array. La risposta si ferma appena il modello ne scrive una, e il testo corrispondente non viene restituito. almeno 1 caratteri · almeno 1 elementi · al massimo 4 elementi |
seed | No | Qualsiasi intero. |
temperature | No | Da 0 a 2, di serie 1. Google consiglia di lasciare i modelli Gemini 3 a 1,0: sotto quel valore la generazione può entrare in loop o peggiorare. |
top_p | No | Da 0,01 a 1. Regola questo oppure temperature, mai entrambi nello stesso confronto. |
tools | No | Fino a 128 definizioni di funzione per richiesta. al massimo 128 elementi |
tool_choice | No | auto, none, required, oppure un oggetto che nomina una sola funzione. |
response_format | No | Chiedi un oggetto JSON e dichiara ogni chiave nel messaggio di sistema: è così che il testo libero torna dentro le colonne che hai già. |
Prezzi
Input $0.30 / Output $2.50 per 1 milione di token
Casi d’uso
Classificazione ed etichettatura di massa
Instradare ticket, etichettare log di chat, smistare la posta in arrivo verso i rispettivi responsabili. Un messaggio di sistema fisso, una riga per chiamata, lo sforzo lasciato su minimal, e l'intera coda passa attraverso un modello invece che attraverso un'espressione regolare.
Passate di traduzione
Stringhe di prodotto, risposte dell'assistenza, testi di catalogo. L'istruzione e il glossario stanno nel messaggio di sistema, il testo di partenza va nel messaggio utente, e la dimensione dell'esecuzione smette di essere il motivo per non farla.
Testo libero dentro campi fissi
Chiedi un oggetto JSON con response_format, dichiara ogni chiave nel messaggio di sistema e lascia che il modello ripieghi una nota non strutturata dentro le colonne che il tuo database ha già. Parsing e convalida restano dalla tua parte.
I passi silenziosi di un ciclo agent
La maggior parte dei passi che un agent compie non è quello interessante: rileggere una pagina, decidere se un risultato è pertinente, riassumere quello che è appena successo. Manda quelli qui e tieni il modello costoso per il passo che decide davvero qualcosa.
Consigli avanzati
Istruzione nel messaggio di sistema, materiale in quello utente
Metti la descrizione del compito, la forma dell'output e il vocabolario in un unico messaggio di sistema, e invia solo la riga, il passaggio o il documento nel messaggio utente. È tenere fermo il messaggio di sistema su tutto il lotto che rende i risultati confrontabili fra loro.
Non toccare il livello di sforzo finché una chiamata non chiede di più
minimal è il valore predefinito ed è l'impostazione su cui dovrebbe girare il grosso di un lotto. Quando un elemento particolare ha bisogno di più riflessione, alza quella singola richiesta a low, medium o high: è una stringa nello stesso corpo, quindi nell'integrazione non cambia nient'altro.
Limiti da mettere in conto
Il tetto della risposta è 65.536 token e un max_tokens superiore non supera la convalida. Il contenuto dei messaggi è testo, immagini e video; le parti audio vengono respinte. Il video viene inviato come file caricato, e il video di una richiesta può arrivare a 14 MB in totale. Un response_format JSON dà forma alla risposta, ma il parsing e la convalida restano alla tua applicazione. La conoscenza interna al modello si ferma a marzo 2026, quindi tutto ciò che viene dopo deve arrivare nel prompt.
Avvio rapido dell’API
curl --fail-with-body -sN https://api.spicyapi.ai/v1/chat/completions \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"model": "google/gemini-3.5-flash-lite/chat",
"messages": [
{
"role": "user",
"content": "Summarise the following release notes into three bullet points."
}
],
"stream": true
}' \
| jq --unbuffered -Rrj 'select(startswith("data: ")) | .[6:] | select(. != "[DONE]") | fromjson | if .error then "\n[error] \(.error.message)\n" else (.choices[0].delta.content? // empty) end'
Nel riferimento dell’API trovi autenticazione, schema completo, polling e gestione degli errori.












