Gemini 4 Argon w OpenCode: konfiguracja i ograniczenia
Skonfiguruj Gemini 4 Argon w OpenCode przez natywną integrację z Google. Poznaj testowaną wersję, obsługę podpisanej historii i ograniczenia kontynuacji.
Czytaj jako MarkdownGemini 4 Argon można skonfigurować w OpenCode przez natywną integrację z Google. Warto sprawdzić, co dzieje się po pierwszej odpowiedzi: czy klient zachowuje podpisane części, poprawnie zwraca wyniki narzędzi i rozpoznaje odpowiedź wymagającą kontynuacji? Nasz test offline OpenCode v1.19.0 wykazał poprawną obsługę tekstu i wiadomości narzędzi, ale także braki w kontynuacji długiego wyjścia i obsłudze przerwanych strumieni.
Ten poradnik przedstawia konfigurację początkową i dokładnie określa, co potwierdzają zebrane wyniki. Nie dowodzi, że istnieje kompletna integracja agenta programistycznego z SeedRouter sprawdzona w rzeczywistych wywołaniach. Jeśli potrzebujesz prostszego klienta z jednym świadomie wysyłanym żądaniem na turę, skorzystaj z poradnika rozmowy w Pythonie.
Skonfiguruj Gemini 4 Argon w OpenCode
Sprawdź zainstalowaną wersję poleceniem opencode --version. Poniższe wyniki dotyczą opublikowanej wersji v1.19.0, przetestowanej 14 października 2026 r. Nowsza wersja wymaga osobnej weryfikacji; obecność funkcji w gałęzi rozwojowej nie dowodzi, że zainstalowane wydanie ją obsługuje.[1]
Utwórz pusty katalog projektu do pierwszego testu. Pobierz do niego konfigurację OpenCode. Sekcja połączenia wygląda tak:
{
"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 obsługuje podstawianie wartości zmiennych środowiskowych w plikach konfiguracyjnych.[2] Ustaw SEEDROUTER_API_KEY w powłoce, nie dodając klucza do commitów projektu. Pobrany plik wybiera też google/gemini-4-argon, wyłącza udostępnianie i automatyczne aktualizacje oraz zezwala wyłącznie na narzędzie read. Przejrzyj te uprawnienia przed użyciem istniejącego repozytorium. Flagi reasoning i tool_call opisują zachowanie klienta; nie dowodzą, że konkretne konto lub usługa obsługuje wszystkie operacje.
Wartość wyjścia 4096 to celowo wybrany początkowy limit w tej konfiguracji, a nie oficjalne maksimum Argon. Rozumowanie również go zużywa. Zasady dotyczące kontekstu, wyjścia i kontynuacji znajdziesz w dokumentacji API.
Zacznij od jednego krótkiego żądania
Po sprawdzeniu konfiguracji i aktualnych stawek uruchom:
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."Wywołane z twoim kluczem polecenie wysyła rzeczywiste żądanie do modelu. OpenCode może ponawiać nieudane żądania lub wysyłać kolejne podczas działania agenta: polecenie nie gwarantuje ograniczenia wydatków do jednego wywołania. Zatrzymaj proces, jeśli odpowiedź jest niepełna lub żądania się powtarzają. Aby zachować ścisłą kontrolę ręczną, użyj przykładu w Pythonie.
Ścieżka natywnego żądania powinna kończyć się na gemini-4-argon:streamGenerateContent?alt=sse. W testowanej wersji integracja Google wysyłała dane uwierzytelniające w x-goog-api-key. Różni się to od przykładów cURL z nagłówkiem Bearer w ogólnym poradniku API; wybór ogólnej integracji z OpenAI nie tworzy takiego samego natywnego żądania.
Co potwierdziły testy offline
Test korzystał z opublikowanej wersji CLI, lokalnej symulacji API i fikcyjnych danych uwierzytelniających. Wykonano 17 żądań przez interfejs pętli zwrotnej w ośmiu scenariuszach. Żadnej odpowiedzi nie wygenerował model, a zgłaszane wartości tokenów były sztuczne. Te obserwacje opisują klienta, a nie jakość modelu czy rzeczywiste naliczanie opłat.
| Scenariusz | Zachowanie zaobserwowane w v1.19.0 |
|---|---|
| Natywny strumień tekstu | Połączył osobne zdarzenia tekstowe w oczekiwaną odpowiedź |
| Druga tura rozmowy | Zachował testowane podpisy rozumowania i tekstu w częściach modelu |
| Wywołanie narzędzia odczytu i zwrot wyniku | Odczytał tymczasowy plik testowy i zwrócił jego zawartość w functionResponse |
MAX_TOKENS | Zgłosił zatrzymanie po osiągnięciu limitu długości bez kolejnego żądania w tym przypadku testowym |
| HTTP 400 | Zakończył działanie z błędem bez ponowienia w tym przypadku testowym |
| HTTP 429 | Ponowił żądanie jeden raz, po czym symulowana usługa odpowiedziała poprawnie |
Test potwierdza, że thinkingConfig został wysłany. Nie dowodzi, że rzeczywista usługa zastosowała to ustawienie. Podobnie przekazanie syntetycznego podpisu przez historię nie potwierdza, że prawdziwy podpis zostanie zaakceptowany w późniejszym żądaniu.
Dlaczego długie wyjście wymaga dodatkowych sprawdzeń
Odpowiedź CONTINUATION modelu Argon wymaga pierwotnego żądania wraz z najnowszą wartością pola najwyższego poziomu continuationToken. Przy wznawianiu tej generacji nie należy dopisywać częściowego wyjścia do zwykłej historii rozmowy.[3]
W naszym przypadku testowym OpenCode v1.19.0 sklasyfikował CONTINUATION jako nieznaną wartość. Następne żądanie pomijało token i dopisywało częściową odpowiedź do historii. Gdy strumień kończył się po częściowym wyjściu bez zdarzenia końcowego, klient również wysyłał dodatkowe zwykłe żądania. Symulowana usługa zatrzymała ten scenariusz po sześciu wywołaniach; sześć nie jest potwierdzonym limitem ponowień klienta.
Ta konfiguracja nie jest więc zweryfikowanym rozwiązaniem dla long decode w Argon. Poprawna krótka odpowiedź nie rozwiązuje tych przypadków. Zanim zaczniesz polegać na długich sesjach programowania, powtórz odpowiednie testy z dokładnie tą wersją klienta, której zamierzasz używać.
Pytania o konfigurację OpenCode
Czy obejmuje to rzeczywiste testy narzędzi i naliczania opłat?
Nie. Podstawowe strumieniowanie tekstu w SeedRouter przeszło osobny lokalny test całego przepływu, ale ten test OpenCode korzystał z symulowanych odpowiedzi. Rzeczywisty wybór narzędzi, podpisy, multimedia, uprawnienia konta i naliczanie opłat nadal wymagają oddzielnych testów.
Czy mogę zamiast tego użyć konfiguracji zgodnej z OpenAI?
To inny protokół i inny zakres zgodności. Ten poradnik sprawdza natywną treść i podpisy Gemini. Dokumentacja Google dotycząca long decode wyłącza jego endpoint zgodny z OpenAI z obsługi tej funkcji.[3]
Czy wyłączenie automatycznego kompaktowania wyłączy ponowienia?
Nie. Kompaktowanie kontekstu i ponawianie żądań to odrębne mechanizmy. Opcja środowiskowa z przykładu nie gwarantuje ścisłego limitu liczby żądań ani kosztu.
Zdecyduj, co sprawdzić dalej
W przypadku Gemini 4 Argon w OpenCode zacznij od krótkiej wymiany tekstu, a potem sprawdź konkretne zachowanie narzędzi i historii potrzebne do twojej pracy. Traktuj kontynuację i przerwane strumienie jako osobne przypadki testów akceptacyjnych. Miej pod ręką stronę modelu i dokumentację natywnego API wraz z konfiguracją klienta, aby łatwo sprawdzać szczegóły protokołu i aktualne ceny.
Źródła
[1] Wydanie OpenCode v1.19.0 i jego kod integracji.



