Gemini 4 Argon in OpenCode: configurazione e limiti attuali
Configura Gemini 4 Argon con il provider Google nativo di OpenCode. Scopri la versione testata, la gestione delle firme e i limiti della continuazione.
Leggi in MarkdownPuoi configurare Gemini 4 Argon in OpenCode tramite il suo provider Google nativo. La domanda utile è che cosa succede dopo la prima risposta: il client conserva le parti firmate, restituisce correttamente i risultati degli strumenti e riconosce una risposta di continuazione? La nostra verifica offline di OpenCode v1.19.0 ha mostrato una gestione corretta del testo e dei messaggi degli strumenti, ma anche lacune nella continuazione degli output lunghi e nei flussi interrotti.
Questa guida ti offre una configurazione iniziale e chiarisce esattamente che cosa dimostrano queste verifiche. Non dimostra un’integrazione completa, verificata tramite chiamate reali, tra SeedRouter e un agente di programmazione. Se preferisci un client più semplice, con una sola richiesta avviata consapevolmente per ogni turno, usa il tutorial della conversazione in Python.
Configurare Gemini 4 Argon in OpenCode
Controlla la versione installata con opencode --version. I risultati seguenti si riferiscono alla versione pubblicata v1.19.0, testata il 14 ottobre 2026. Una versione più recente richiede una verifica specifica; la presenza di una funzione in un ramo di sviluppo non dimostra che una versione installata la supporti.[1]
Crea una cartella di progetto vuota per la prima verifica. Scarica al suo interno la configurazione di OpenCode. La sezione relativa alla connessione è:
{
"provider": {
"google": {
"npm": "@ai-sdk/google",
"options": {
"apiKey": "{env:SEEDROUTER_API_KEY}",
"baseURL": "https://api.seedrouter.ai/v1beta"
},
"models": {
"gemini-4-argon": {
"name": "Gemini 4 Argon",
"reasoning": true,
"tool_call": true,
"limit": { "context": 1048576, "output": 4096 },
"options": {
"thinkingConfig": { "thinkingLevel": "low", "includeThoughts": true }
}
}
}
}
}
}OpenCode supporta la sostituzione delle variabili d’ambiente nei file di configurazione.[2] Imposta SEEDROUTER_API_KEY nella shell senza includere la chiave nei commit del progetto. Il file scaricato seleziona anche google/gemini-4-argon, disattiva la condivisione e gli aggiornamenti automatici e consente solo lo strumento read. Controlla questi permessi prima di usare un repository esistente. I flag reasoning e tool_call descrivono il comportamento del client; non dimostrano che un determinato account o servizio supporti ogni operazione.
Il valore di output 4096 è un budget iniziale scelto appositamente per questa configurazione, non il massimo ufficiale di Argon. Anche il ragionamento consuma quel budget. Consulta la documentazione API per le regole su contesto, output e continuazione.
Iniziare con una richiesta breve
Dopo aver esaminato la configurazione e le tariffe attuali, esegui:
OPENCODE_CONFIG="$PWD/gemini-4-argon-opencode.json" \
OPENCODE_DISABLE_MODELS_FETCH=1 \
OPENCODE_DISABLE_AUTOCOMPACT=1 \
opencode run --model google/gemini-4-argon \
"Explain a mutex in one sentence. Do not use tools."Con la tua chiave, questo comando invia una richiesta reale al modello. OpenCode può ritentare le richieste fallite o inviarne altre durante l’esecuzione di un agente: il comando non garantisce che la spesa sia limitata a una sola chiamata. Interrompi il processo se la risposta è incompleta o le richieste si ripetono. Per un controllo rigorosamente manuale, usa invece l’esempio Python.
Il percorso della richiesta nativa dovrebbe terminare con gemini-4-argon:streamGenerateContent?alt=sse. Nella versione testata, il provider Google ha inviato la credenziale in x-goog-api-key. Questo comportamento è diverso dagli esempi cURL con header Bearer del tutorial API generale; selezionare un provider OpenAI generico non produce la stessa richiesta nativa.
Che cosa hanno dimostrato le verifiche offline
Il test ha usato la CLI pubblicata, un’API simulata in locale e credenziali fittizie. Ha effettuato 17 richieste all’interfaccia di loopback in otto scenari. Nessun modello ha generato le risposte e i valori di token riportati erano artificiali. Queste osservazioni descrivono il client, non la qualità del modello né la fatturazione reale.
| Scenario | Comportamento osservato nella versione v1.19.0 |
|---|---|
| Flusso di testo nativo | Ha unito eventi di testo separati nella risposta attesa |
| Secondo turno di conversazione | Ha conservato nelle parti del modello le firme di ragionamento e di testo usate nel test |
| Chiamata allo strumento di lettura e restituzione del risultato | Ha letto un file temporaneo di test e ne ha restituito il contenuto in functionResponse |
MAX_TOKENS | Ha segnalato un arresto per limite di lunghezza senza un’altra richiesta in quel caso di test |
| HTTP 400 | È terminato con un errore senza ritentare in quel caso di test |
| HTTP 429 | Ha ritentato una volta e ha ricevuto una risposta simulata di successo |
Il test conferma che thinkingConfig è stato inviato. Non dimostra che un servizio reale abbia rispettato l’impostazione. Allo stesso modo, trasmettere una firma sintetica tramite la cronologia non dimostra che una firma reale verrà accettata in una richiesta successiva.
Perché gli output lunghi richiedono ulteriori verifiche
La risposta CONTINUATION di Argon richiede la richiesta originale insieme al valore più recente del campo di primo livello continuationToken. Quando riprendi quella generazione, l’output parziale non va aggiunto alla normale cronologia della conversazione.[3]
Nel nostro caso di test, OpenCode v1.19.0 ha classificato CONTINUATION come sconosciuto. La richiesta successiva ha omesso il token e aggiunto la risposta parziale alla cronologia. Quando un flusso si è concluso dopo un output parziale senza un evento finale, il client ha inviato anche ulteriori richieste ordinarie. Il servizio simulato ha interrotto quello scenario dopo sei chiamate; questo non dimostra che il limite di tentativi del client sia sei.
Di conseguenza, questa configurazione non è una soluzione verificata per la decodifica lunga di Argon. Una risposta breve riuscita non risolve questi casi. Prima di affidarti a sessioni di programmazione lunghe, ripeti le verifiche pertinenti con la versione esatta del client che intendi usare.
Domande sulla configurazione di OpenCode
Sono inclusi test reali degli strumenti e della fatturazione?
No. Lo streaming di testo di base di SeedRouter ha superato una verifica end-to-end locale separata, ma questo test di OpenCode ha usato risposte simulate. La selezione reale degli strumenti, le firme, i contenuti multimediali, i permessi dell’account e la fatturazione richiedono ancora verifiche specifiche.
Posso usare invece una configurazione compatibile con OpenAI?
Si tratta di un protocollo diverso, con un diverso ambito di compatibilità. Questa guida verifica i contenuti nativi e le firme di Gemini. La documentazione di Google sulla decodifica lunga esclude il suo endpoint compatibile con OpenAI da questa capacità.[3]
Disattivare la compattazione automatica disattiva anche i nuovi tentativi?
No. La compattazione e il reinvio delle richieste sono comportamenti distinti. L’opzione d’ambiente nell’esempio non garantisce un limite rigido al numero di richieste né al costo.
Decidere che cosa verificare dopo
Per usare Gemini 4 Argon in OpenCode, parti da un breve scambio di testo, poi verifica il comportamento degli strumenti e della cronologia necessario per il tuo lavoro. Tratta la continuazione e i flussi interrotti come casi di accettazione separati. Tieni la pagina del modello e la documentazione API nativa accanto alla configurazione del client, così potrai controllare facilmente i dettagli del protocollo e i prezzi attuali.
Fonti
[1] Versione OpenCode v1.19.0 e relativa implementazione dei provider.



