Gemini 4 Argon 串接 OpenCode:原生設定方式與目前限制
透過 OpenCode 的原生 Google 供應商設定 Gemini 4 Argon,了解測試版本、附簽章歷史紀錄的處理方式,以及尚未解決的長輸出接續生成與串流中斷限制。
以 Markdown 閱讀Gemini 4 Argon 可透過 OpenCode 的原生 Google 供應商設定。需要確認的重點是第一個答案之後的行為:用戶端是否保留附簽章的內容部分、正確回傳工具結果,並辨識接續生成回應?我們對 OpenCode v1.19.0 的離線檢查發現,文字與工具訊息處理可正常運作,但長輸出接續生成與串流中斷仍有處理缺口。
本指南提供入門設定,並明確說明這些證據的適用範圍。這些結果不代表完整的 SeedRouter 程式開發代理串接已通過實際呼叫驗證。如果需要更精簡、每回合由你主動發出一筆請求的用戶端,請使用 Python 對話教學。
在 OpenCode 中設定 Gemini 4 Argon
使用 opencode --version 檢查已安裝的版本。以下結果適用於 2026 年 10 月 14 日測試的已發布版本 v1.19.0。更新的版本需要另外驗證;開發分支中有某項功能,不代表已安裝的正式版本也支援。[1]
第一次檢查時,先建立空白專案目錄,將 OpenCode 設定檔下載至該目錄。連線設定如下:
{
"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 設定檔支援引用環境變數。[2] 在 shell 中設定 SEEDROUTER_API_KEY,不要將金鑰提交至專案儲存庫。下載的設定檔也會選用 google/gemini-4-argon,關閉分享與自動更新,並且只允許使用 read 工具。在既有程式碼儲存庫中使用前,請先檢視這些權限。reasoning 與 tool_call 旗標描述的是用戶端行為,不能證明特定帳戶或服務支援每一種操作。
輸出值 4096 是這份設定刻意採用的起始預算,不是 Argon 的官方上限。思考也會耗用這份預算。上下文、輸出與接續生成規則請見 API 參考文件。
先送出一筆簡短請求
檢視設定與目前費率後,執行:
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."使用你的金鑰執行時,這會送出真實的模型請求。OpenCode 可能在失敗後重試,也可能在代理執行期間繼續發出請求,因此這條指令無法保證將花費限制在單次呼叫的範圍內。若答案不完整或請求反覆出現,請停止執行。若需要嚴格的手動控制,請改用 Python 範例。
原生請求路徑應以 gemini-4-argon:streamGenerateContent?alt=sse 結尾。在受測版本中,Google 供應商透過 x-goog-api-key 傳送憑證。這與通用 API 教學中採用 Bearer 標頭的 cURL 範例不同;選用通用 OpenAI 供應商,不會產生相同的原生請求。
離線檢查確認了哪些行為
測試使用已發布的 CLI、本機模擬 API 與虛擬憑證,向本機回送位址發出 17 次請求,涵蓋 8 個情境。回覆不是由模型生成的,回報的 token 數值也是人為設定。這些觀察結果說明的是用戶端行為,不是模型品質或實際計費。
| 情境 | v1.19.0 中觀察到的行為 |
|---|---|
| 原生文字串流 | 將分開傳送的文字事件合併為預期答案 |
| 第二輪對話 | 保留測試中模型內容部分的思考簽章與文字簽章 |
| 讀取工具呼叫與結果回傳 | 讀取暫存測試檔案,並在 functionResponse 中回傳內容 |
MAX_TOKENS | 回報因長度限制而停止,在該測試案例中未再送出請求 |
| HTTP 400 | 在該測試案例中回報錯誤並結束,未重試 |
| HTTP 429 | 在下一筆模擬回應成功的案例中,重試了 1 次 |
測試確認送出了 thinkingConfig,但不能證明真實服務有採用這項設定。同樣地,讓合成簽章經過歷史紀錄傳遞,也不能證明真實簽章會被後續請求接受。
長輸出為何需要額外留意
Argon 的 CONTINUATION 回應要求使用原始請求與最新的頂層 continuationToken。恢復同一次生成時,不應將部分輸出加入一般對話歷史紀錄。[3]
在我們的模擬測試中,OpenCode v1.19.0 將 CONTINUATION 判定為未知類型。下一筆請求沒有附上 token,卻將部分答案加進歷史紀錄。串流只輸出部分內容就結束,且沒有終止事件時,用戶端也會繼續發出一般請求。模擬服務在 6 次呼叫後停止該案例;6 次不是已確認的用戶端重試上限。
因此,這份設定還不能視為已驗證的 Argon 長輸出接續生成方案。成功取得簡短答案,並不能解決上述情況。在依賴它進行長時間程式開發對話前,請使用預計採用的確切用戶端版本,重新執行相關檢查。
OpenCode 設定常見問題
這些檢查包含實際工具呼叫與計費驗證嗎?
不包含。SeedRouter 基本文字串流生成已另外取得本機端對端驗收結果,但這次 OpenCode 檢查使用的是模擬回應。實際的工具選擇、簽章、媒體、帳戶權限與計費仍需各自驗證。
可以改用與 OpenAI 相容的設定嗎?
那是不同的協定,相容範圍也不同。本指南檢查的是 Gemini 原生內容與簽章。Google 的長輸出文件明確排除其 OpenAI 相容端點,不支援透過該端點使用這項功能。[3]
關閉上下文自動壓縮,也會關閉重試嗎?
不會。上下文壓縮與請求重試是兩種獨立行為。範例中的環境變數選項不代表請求次數或費用有硬性上限。
決定下一步驗證項目
在 OpenCode 中使用 Gemini 4 Argon 時,先完成簡短的文字對話,再驗證工作所需的特定工具與歷史紀錄行為。將接續生成和串流中斷分別列為獨立驗收案例。設定用戶端時,同時參照模型頁與原生 API 參考文件,方便核對協定細節和目前價格。
來源
[1] OpenCode v1.19.0 發布版本及其供應商實作。
[2] OpenCode 設定:環境變數。



