Providers
Google (Gemini)
Google Plugin 透過 Google AI Studio 提供 Gemini 模型存取,並支援 圖片生成、媒體理解(圖片/音訊/影片)、文字轉語音,以及透過 Gemini Grounding 進行網頁搜尋。
- 供應商:
google - 驗證:
GEMINI_API_KEY或GOOGLE_API_KEY - API:Google Gemini API
- 執行階段選項:provider/model
agentRuntime.id: "google-gemini-cli"會重複使用 Gemini CLI OAuth,同時維持模型參照以google/*作為標準格式。
開始使用
選擇偏好的驗證方式並依照設定步驟操作。
API 金鑰
最適合: 透過 Google AI Studio 使用標準 Gemini API 存取。
執行導覽設定
openclaw onboard --auth-choice gemini-api-key或直接傳入金鑰:
openclaw onboard --non-interactive \ --mode local \ --auth-choice gemini-api-key \ --gemini-api-key "$GEMINI_API_KEY"設定預設模型
{ agents: { defaults: { model: { primary: "google/gemini-3.1-pro-preview" }, }, },}確認模型可用
openclaw models list --provider googleGemini CLI (OAuth)
最適合: 透過 PKCE OAuth 重複使用既有的 Gemini CLI 登入,而不是另外使用 API 金鑰。
安裝 Gemini CLI
本機的 gemini 命令必須可在 PATH 上使用。
# Homebrewbrew install gemini-cli # or npmnpm install -g @google/gemini-cliOpenClaw 支援 Homebrew 安裝與全域 npm 安裝,包含 常見的 Windows/npm 配置。
透過 OAuth 登入
openclaw models auth login --provider google-gemini-cli --set-default確認模型可用
openclaw models list --provider google- 預設模型:
google/gemini-3.1-pro-preview - 執行階段:
google-gemini-cli - 別名:
gemini-cli
Gemini 3.1 Pro 的 Gemini API 模型 ID 是 gemini-3.1-pro-preview。OpenClaw 接受較短的 google/gemini-3.1-pro 作為方便使用的別名,並會在呼叫供應商前將其正規化。
環境變數:
OPENCLAW_GEMINI_OAUTH_CLIENT_IDOPENCLAW_GEMINI_OAUTH_CLIENT_SECRET
(或 GEMINI_CLI_* 變體。)
google-gemini-cli/* 模型參照是舊版相容性別名。新的
設定若要使用本機 Gemini CLI 執行,應使用 google/* 模型參照加上 google-gemini-cli
執行階段。
功能
| 功能 | 支援 |
|---|---|
| 對話補全 | 是 |
| 圖片生成 | 是 |
| 音樂生成 | 是 |
| 文字轉語音 | 是 |
| 即時語音 | 是(Google Live API) |
| 圖片理解 | 是 |
| 音訊轉錄 | 是 |
| 影片理解 | 是 |
| 網頁搜尋(Grounding) | 是 |
| 思考/推理 | 是(Gemini 2.5+ / Gemini 3+) |
| Gemma 4 模型 | 是 |
網頁搜尋
內建的 gemini 網頁搜尋供應商使用 Gemini Google Search grounding。
請在 plugins.entries.google.config.webSearch 下設定專用搜尋金鑰,
或讓它在 GEMINI_API_KEY 之後重複使用 models.providers.google.apiKey:
{ 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", }, }, }, }, },}憑證優先順序為專用的 webSearch.apiKey,接著是 GEMINI_API_KEY,
再來是 models.providers.google.apiKey。webSearch.baseUrl 是選用項,
用於操作員代理或相容的 Gemini API 端點;省略時,
Gemini 網頁搜尋會重複使用 models.providers.google.baseUrl。請參閱
Gemini 搜尋以了解供應商專屬工具行為。
圖片生成
內建的 google 圖片生成供應商預設為
google/gemini-3.1-flash-image-preview。
- 也支援
google/gemini-3-pro-image-preview - 生成:每次請求最多 4 張圖片
- 編輯模式:已啟用,最多 5 張輸入圖片
- 幾何控制:
size、aspectRatio和resolution
若要使用 Google 作為預設圖片供應商:
{ agents: { defaults: { imageGenerationModel: { primary: "google/gemini-3.1-flash-image-preview", }, }, },}影片生成
內建的 google Plugin 也會透過共用的
video_generate 工具註冊影片生成。
- 預設影片模型:
google/veo-3.1-fast-generate-preview - 模式:文字轉影片、圖片轉影片,以及單一影片參考流程
- 支援
aspectRatio(16:9、9:16)和resolution(720P、1080P);Veo 目前不支援音訊輸出 - 支援的時長:4、6 或 8 秒(其他值會貼齊到最接近的允許值)
若要使用 Google 作為預設影片供應商:
{ agents: { defaults: { videoGenerationModel: { primary: "google/veo-3.1-fast-generate-preview", }, }, },}音樂生成
內建的 google Plugin 也會透過共用的
music_generate 工具註冊音樂生成。
- 預設音樂模型:
google/lyria-3-clip-preview - 也支援
google/lyria-3-pro-preview - 提示控制:
lyrics和instrumental - 輸出格式:預設為
mp3,另外google/lyria-3-pro-preview支援wav - 參考輸入:最多 10 張圖片
- 以工作階段支援的執行會透過共用的工作/狀態流程分離,包含
action: "status"
若要使用 Google 作為預設音樂供應商:
{ agents: { defaults: { musicGenerationModel: { primary: "google/lyria-3-clip-preview", }, }, },}文字轉語音
內建的 google 語音供應商使用 Gemini API TTS 路徑搭配
gemini-3.1-flash-tts-preview。
- 預設語音:
Kore - 驗證:
messages.tts.providers.google.apiKey、models.providers.google.apiKey、GEMINI_API_KEY或GOOGLE_API_KEY - 輸出:一般 TTS 附件使用 WAV,語音備註目標使用 Opus,Talk/電話使用 PCM
- 語音備註輸出:Google PCM 會包裝為 WAV,並使用
ffmpeg轉碼為 48 kHz Opus
Google 的批次 Gemini TTS 路徑會在完成的
generateContent 回應中傳回生成的音訊。若要獲得最低延遲的語音對話,請使用
由 Gemini Live API 支援的 Google 即時語音供應商,而不是批次
TTS。
若要使用 Google 作為預設 TTS 供應商:
{ messages: { tts: { auto: "always", provider: "google", providers: { google: { model: "gemini-3.1-flash-tts-preview", voiceName: "Kore", audioProfile: "Speak professionally with a calm tone.", }, }, }, },}Gemini API TTS 使用自然語言提示來控制風格。設定
audioProfile 可在朗讀文字前加上可重複使用的風格提示。當提示文字提到具名說話者時,請設定
speakerName。
Gemini API TTS 也接受文字中的表達性方括號音訊標籤,
例如 [whispers] 或 [laughs]。若要讓標籤不出現在可見的聊天回覆中,
但仍傳送給 TTS,請將它們放在 [[tts:text]]...[[/tts:text]]
區塊內:
Here is the clean reply text. [[tts:text]][whispers] Here is the spoken version.[[/tts:text]]即時語音
內建的 google Plugin 會註冊由
Gemini Live API 支援的即時語音供應商,用於 Voice Call 和 Google Meet 等後端音訊橋接。
| 設定 | 設定路徑 | 預設值 |
|---|---|---|
| 模型 | plugins.entries.voice-call.config.realtime.providers.google.model |
gemini-2.5-flash-native-audio-preview-12-2025 |
| 語音 | ...google.voice |
Kore |
| 溫度 | ...google.temperature |
(未設定) |
| VAD 開始敏感度 | ...google.startSensitivity |
(未設定) |
| VAD 結束敏感度 | ...google.endSensitivity |
(未設定) |
| 靜音持續時間 | ...google.silenceDurationMs |
(未設定) |
| 活動處理 | ...google.activityHandling |
Google 預設值,start-of-activity-interrupts |
| 回合涵蓋範圍 | ...google.turnCoverage |
Google 預設值,only-activity |
| 停用自動 VAD | ...google.automaticActivityDetectionDisabled |
false |
| 工作階段恢復 | ...google.sessionResumption |
true |
| 上下文壓縮 | ...google.contextWindowCompression |
true |
| API 金鑰 | ...google.apiKey |
回退使用 models.providers.google.apiKey、GEMINI_API_KEY 或 GOOGLE_API_KEY |
Voice Call 即時設定範例:
{ plugins: { entries: { "voice-call": { enabled: true, config: { realtime: { enabled: true, provider: "google", providers: { google: { model: "gemini-2.5-flash-native-audio-preview-12-2025", voice: "Kore", activityHandling: "start-of-activity-interrupts", turnCoverage: "only-activity", }, }, }, }, }, }, },}若要進行維護者即時驗證,請執行
OPENAI_API_KEY=... GEMINI_API_KEY=... node --import tsx scripts/dev/realtime-talk-live-smoke.ts。
此煙霧測試也涵蓋 OpenAI 後端/WebRTC 路徑;Google 段落會鑄造 Control UI Talk 使用的相同
受限 Live API 權杖形狀、開啟瀏覽器
WebSocket 端點、傳送初始設定承載,並等待
setupComplete。
進階設定
直接重用 Gemini 快取
對於直接 Gemini API 執行(api: "google-generative-ai"),OpenClaw
會將已設定的 cachedContent 控制代碼傳遞給 Gemini 請求。
- 使用
cachedContent或舊版cached_content設定每個模型或全域參數 - 如果兩者都存在,
cachedContent優先 - 範例值:
cachedContents/prebuilt-context - Gemini 快取命中用量會從上游
cachedContentTokenCount正規化為 OpenClawcacheRead
{ agents: { defaults: { models: { "google/gemini-2.5-pro": { params: { cachedContent: "cachedContents/prebuilt-context", }, }, }, }, },}Gemini CLI JSON 用量注意事項
使用 google-gemini-cli OAuth 提供者時,OpenClaw 會依下列方式正規化
CLI JSON 輸出:
- 回覆文字來自 CLI JSON
response欄位。 - 當 CLI 將
usage留空時,用量會回退使用stats。 stats.cached會正規化為 OpenClawcacheRead。- 如果缺少
stats.input,OpenClaw 會從stats.input_tokens - stats.cached推導輸入權杖。
環境與常駐程式設定
如果 Gateway 以常駐程式(launchd/systemd)執行,請確認 GEMINI_API_KEY
可供該程序使用(例如在 ~/.openclaw/.env 中,或透過
env.shellEnv)。