Providers
Google (Gemini)
Plugin Google zapewnia dostęp do modeli Gemini przez Google AI Studio, a także generowanie obrazów, rozumienie multimediów (obraz/audio/wideo), zamianę tekstu na mowę oraz wyszukiwanie w sieci przez Gemini Grounding.
- Dostawca:
google - Uwierzytelnianie:
GEMINI_API_KEYlubGOOGLE_API_KEY - API: Google Gemini API
- Opcja środowiska wykonawczego: provider/model
agentRuntime.id: "google-gemini-cli"ponownie używa OAuth Gemini CLI, zachowując kanoniczne odwołania do modeli jakogoogle/*.
Pierwsze kroki
Wybierz preferowaną metodę uwierzytelniania i wykonaj kroki konfiguracji.
API key
Najlepsze dla: standardowego dostępu do Gemini API przez Google AI Studio.
Run onboarding
openclaw onboard --auth-choice gemini-api-keyAlbo przekaż klucz bezpośrednio:
openclaw onboard --non-interactive \ --mode local \ --auth-choice gemini-api-key \ --gemini-api-key "$GEMINI_API_KEY"Set a default model
{ agents: { defaults: { model: { primary: "google/gemini-3.1-pro-preview" }, }, },}Verify the model is available
openclaw models list --provider googleGemini CLI (OAuth)
Najlepsze dla: ponownego użycia istniejącego logowania Gemini CLI przez PKCE OAuth zamiast osobnego klucza API.
Install the Gemini CLI
Lokalne polecenie gemini musi być dostępne w PATH.
# Homebrewbrew install gemini-cli # or npmnpm install -g @google/gemini-cliOpenClaw obsługuje zarówno instalacje Homebrew, jak i globalne instalacje npm, w tym typowe układy Windows/npm.
Log in via OAuth
openclaw models auth login --provider google-gemini-cli --set-defaultVerify the model is available
openclaw models list --provider google- Model domyślny:
google/gemini-3.1-pro-preview - Środowisko wykonawcze:
google-gemini-cli - Alias:
gemini-cli
Identyfikator modelu Gemini API dla Gemini 3.1 Pro to gemini-3.1-pro-preview. OpenClaw akceptuje krótszy google/gemini-3.1-pro jako wygodny alias i normalizuje go przed wywołaniami dostawcy.
Zmienne środowiskowe:
OPENCLAW_GEMINI_OAUTH_CLIENT_IDOPENCLAW_GEMINI_OAUTH_CLIENT_SECRET
(Albo warianty GEMINI_CLI_*.)
Odwołania do modeli google-gemini-cli/* są starszymi aliasami zgodności. Nowe
konfiguracje powinny używać odwołań do modeli google/* oraz środowiska wykonawczego google-gemini-cli,
gdy wymagają lokalnego wykonywania Gemini CLI.
Możliwości
| Możliwość | Obsługiwane |
|---|---|
| Uzupełnienia czatu | Tak |
| Generowanie obrazów | Tak |
| Generowanie muzyki | Tak |
| Zamiana tekstu na mowę | Tak |
| Głos w czasie rzeczywistym | Tak (Google Live API) |
| Rozumienie obrazów | Tak |
| Transkrypcja audio | Tak |
| Rozumienie wideo | Tak |
| Wyszukiwanie w sieci (Grounding) | Tak |
| Myślenie/rozumowanie | Tak (Gemini 2.5+ / Gemini 3+) |
| Modele Gemma 4 | Tak |
Wyszukiwanie w sieci
Dołączony dostawca wyszukiwania w sieci gemini używa ugruntowania Gemini Google Search.
Skonfiguruj dedykowany klucz wyszukiwania w plugins.entries.google.config.webSearch,
albo pozwól mu ponownie użyć models.providers.google.apiKey po GEMINI_API_KEY:
{ plugins: { entries: { google: { config: { webSearch: { apiKey: "AIza...", // optional if GEMINI_API_KEY or models.providers.google.apiKey is set baseUrl: "https://generativelanguage.googleapis.com/v1beta", // falls back to models.providers.google.baseUrl model: "gemini-2.5-flash", }, }, }, }, },}Kolejność pierwszeństwa poświadczeń to dedykowany webSearch.apiKey, następnie GEMINI_API_KEY,
a potem models.providers.google.apiKey. webSearch.baseUrl jest opcjonalny i
istnieje dla proxy operatora lub zgodnych punktów końcowych Gemini API; gdy jest pominięty,
wyszukiwanie w sieci Gemini ponownie używa models.providers.google.baseUrl. Zobacz
Wyszukiwanie Gemini, aby poznać zachowanie narzędzia specyficzne dla dostawcy.
Generowanie obrazów
Dołączony dostawca generowania obrazów google domyślnie używa
google/gemini-3.1-flash-image-preview.
- Obsługuje także
google/gemini-3-pro-image-preview - Generowanie: do 4 obrazów na żądanie
- Tryb edycji: włączony, do 5 obrazów wejściowych
- Kontrolki geometrii:
size,aspectRatioiresolution
Aby używać Google jako domyślnego dostawcy obrazów:
{ agents: { defaults: { imageGenerationModel: { primary: "google/gemini-3.1-flash-image-preview", }, }, },}Generowanie wideo
Dołączony Plugin google rejestruje także generowanie wideo przez współdzielone
narzędzie video_generate.
- Domyślny model wideo:
google/veo-3.1-fast-generate-preview - Tryby: tekst-na-wideo, obraz-na-wideo oraz przepływy z pojedynczym wideo referencyjnym
- Obsługuje
aspectRatio(16:9,9:16) iresolution(720P,1080P); wyjście audio nie jest dziś obsługiwane przez Veo - Obsługiwane czasy trwania: 4, 6 lub 8 sekund (inne wartości są dopasowywane do najbliższej dozwolonej wartości)
Aby używać Google jako domyślnego dostawcy wideo:
{ agents: { defaults: { videoGenerationModel: { primary: "google/veo-3.1-fast-generate-preview", }, }, },}Generowanie muzyki
Dołączony Plugin google rejestruje także generowanie muzyki przez współdzielone
narzędzie music_generate.
- Domyślny model muzyki:
google/lyria-3-clip-preview - Obsługuje także
google/lyria-3-pro-preview - Kontrolki promptu:
lyricsiinstrumental - Format wyjściowy: domyślnie
mp3, a dodatkowowavwgoogle/lyria-3-pro-preview - Wejścia referencyjne: do 10 obrazów
- Uruchomienia oparte na sesji odłączają się przez współdzielony przepływ zadania/statusu, w tym
action: "status"
Aby używać Google jako domyślnego dostawcy muzyki:
{ agents: { defaults: { musicGenerationModel: { primary: "google/lyria-3-clip-preview", }, }, },}Zamiana tekstu na mowę
Dołączony dostawca mowy google używa ścieżki TTS Gemini API z
gemini-3.1-flash-tts-preview.
- Domyślny głos:
Kore - Uwierzytelnianie:
messages.tts.providers.google.apiKey,models.providers.google.apiKey,GEMINI_API_KEYlubGOOGLE_API_KEY - Wyjście: WAV dla zwykłych załączników TTS, Opus dla celów notatek głosowych, PCM dla Talk/telefonii
- Wyjście notatki głosowej: Google PCM jest opakowywany jako WAV i transkodowany do Opus 48 kHz za pomocą
ffmpeg
Ścieżka wsadowa Gemini TTS Google zwraca wygenerowane audio w ukończonej
odpowiedzi generateContent. Dla rozmów mówionych o najniższym opóźnieniu użyj
dostawcy głosu Google w czasie rzeczywistym opartego na Gemini Live API zamiast wsadowego
TTS.
Aby używać Google jako domyślnego dostawcy TTS:
{ messages: { tts: { auto: "always", provider: "google", providers: { google: { model: "gemini-3.1-flash-tts-preview", speakerVoice: "Kore", audioProfile: "Speak professionally with a calm tone.", }, }, }, },}Gemini API TTS używa promptów w języku naturalnym do kontroli stylu. Ustaw
audioProfile, aby poprzedzić tekst mówiony wielokrotnego użytku promptem stylu. Ustaw
speakerName, gdy tekst promptu odnosi się do nazwanego mówcy.
Gemini API TTS akceptuje także ekspresyjne znaczniki audio w nawiasach kwadratowych w tekście,
takie jak [whispers] lub [laughs]. Aby utrzymać znaczniki poza widoczną odpowiedzią czatu,
a jednocześnie wysłać je do TTS, umieść je w bloku [[tts:text]]...[[/tts:text]]:
Here is the clean reply text. [[tts:text]][whispers] Here is the spoken version.[[/tts:text]]Głos w czasie rzeczywistym
Dołączony Plugin google rejestruje dostawcę głosu w czasie rzeczywistym opartego na
Gemini Live API dla mostków audio backendu, takich jak Voice Call i Google Meet.
| Ustawienie | Ścieżka konfiguracji | Domyślna wartość |
|---|---|---|
| Model | plugins.entries.voice-call.config.realtime.providers.google.model |
gemini-2.5-flash-native-audio-preview-12-2025 |
| Głos | ...google.voice |
Kore |
| Temperatura | ...google.temperature |
(nie ustawiono) |
| Czułość startu VAD | ...google.startSensitivity |
(nie ustawiono) |
| Czułość końca VAD | ...google.endSensitivity |
(nie ustawiono) |
| Czas trwania ciszy | ...google.silenceDurationMs |
(nie ustawiono) |
| Obsługa aktywności | ...google.activityHandling |
domyślne ustawienie Google, start-of-activity-interrupts |
| Zakres tury | ...google.turnCoverage |
domyślne ustawienie Google, only-activity |
| Wyłącz automatyczne VAD | ...google.automaticActivityDetectionDisabled |
false |
| Wznawianie sesji | ...google.sessionResumption |
true |
| Kompresja kontekstu | ...google.contextWindowCompression |
true |
| Klucz API | ...google.apiKey |
Rezerwowo używa models.providers.google.apiKey, GEMINI_API_KEY lub GOOGLE_API_KEY |
Przykładowa konfiguracja Voice Call czasu rzeczywistego:
{ plugins: { entries: { "voice-call": { enabled: true, config: { realtime: { enabled: true, provider: "google", providers: { google: { model: "gemini-2.5-flash-native-audio-preview-12-2025", speakerVoice: "Kore", activityHandling: "start-of-activity-interrupts", turnCoverage: "only-activity", }, }, }, }, }, }, },}Do weryfikacji live przez opiekuna uruchom
OPENAI_API_KEY=... GEMINI_API_KEY=... node --import tsx scripts/dev/realtime-talk-live-smoke.ts.
Ten test smoke obejmuje też ścieżki backend/WebRTC OpenAI; część Google tworzy ten sam
kształt ograniczonego tokena Live API używany przez Control UI Talk, otwiera przeglądarkowy
punkt końcowy WebSocket, wysyła początkowy ładunek konfiguracji i czeka na
setupComplete.
Konfiguracja zaawansowana
Bezpośrednie ponowne użycie pamięci podręcznej Gemini
Dla bezpośrednich uruchomień Gemini API (api: "google-generative-ai") OpenClaw
przekazuje skonfigurowany uchwyt cachedContent do żądań Gemini.
- Skonfiguruj parametry dla modelu lub globalne za pomocą
cachedContentalbo starszegocached_content - Jeśli obecne są oba, wygrywa
cachedContent - Przykładowa wartość:
cachedContents/prebuilt-context - Użycie trafień w pamięć podręczną Gemini jest normalizowane do OpenClaw
cacheReadz nadrzędnegocachedContentTokenCount
{ agents: { defaults: { models: { "google/gemini-2.5-pro": { params: { cachedContent: "cachedContents/prebuilt-context", }, }, }, }, },}Uwagi dotyczące użycia Gemini CLI
Podczas używania dostawcy OAuth google-gemini-cli OpenClaw domyślnie używa
wyjścia Gemini CLI stream-json i normalizuje użycie z końcowego
ładunku stats. Starsze nadpisania --output-format json nadal używają
parsera JSON.
- Tekst odpowiedzi strumieniowej pochodzi ze zdarzeń
messageasystenta. - Dla starszego wyjścia JSON tekst odpowiedzi pochodzi z pola
responsew JSON CLI. - Użycie rezerwowo korzysta z
stats, gdy CLI pozostawiausagepuste. stats.cachedjest normalizowane do OpenClawcacheRead.- Jeśli brakuje
stats.input, OpenClaw wyprowadza tokeny wejściowe zstats.input_tokens - stats.cached.
Środowisko i konfiguracja demona
Jeśli Gateway działa jako demon (launchd/systemd), upewnij się, że GEMINI_API_KEY
jest dostępny dla tego procesu (na przykład w ~/.openclaw/.env lub przez
env.shellEnv).
Powiązane
Wybór dostawców, referencji modeli i zachowania przełączania awaryjnego.
Wspólne parametry narzędzia obrazów i wybór dostawcy.
Wspólne parametry narzędzia wideo i wybór dostawcy.
Wspólne parametry narzędzia muzyki i wybór dostawcy.