Providers
Google (Gemini)
Plugin Google надає доступ до моделей Gemini через Google AI Studio, а також до генерування зображень, розуміння медіа (зображень/аудіо/відео), перетворення тексту на мовлення та вебпошуку через Gemini Grounding.
- Постачальник:
google - Автентифікація:
GEMINI_API_KEYабоGOOGLE_API_KEY - API: Google Gemini API
- Параметр середовища виконання:
agentRuntime.id: "google-gemini-cli"повторно використовує OAuth Gemini CLI, зберігаючи канонічні посилання на моделі у форматіgoogle/*.
Початок роботи
Виберіть бажаний метод автентифікації та виконайте кроки налаштування.
Ключ API
Найкраще підходить для: стандартного доступу до Gemini API через Google AI Studio.
Запустіть початкове налаштування
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)
Найкраще підходить для: повторного використання наявного входу в Gemini CLI через PKCE OAuth замість окремого ключа 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 API для Gemini 3.1 Pro — gemini-3.1-pro-preview. Для зручності OpenClaw приймає коротший псевдонім google/gemini-3.1-pro і нормалізує його перед викликами постачальника.
Змінні середовища:
OPENCLAW_GEMINI_OAUTH_CLIENT_ID/GEMINI_CLI_OAUTH_CLIENT_IDOPENCLAW_GEMINI_OAUTH_CLIENT_SECRET/GEMINI_CLI_OAUTH_CLIENT_SECRET
Посилання на моделі google-gemini-cli/* є застарілими псевдонімами сумісності. Нові
конфігурації мають використовувати посилання на моделі google/* разом із середовищем виконання google-gemini-cli,
якщо потрібне локальне виконання Gemini CLI.
Можливості
| Можливість | Підтримка |
|---|---|
| Доповнення чату | Так |
| Генерування зображень | Так |
| Генерування музики | Так |
| Перетворення тексту на мовлення | Так |
| Голос у реальному часі | Так (Google Live API) |
| Розуміння зображень | Так |
| Транскрибування аудіо | Так |
| Розуміння відео | Так |
| Вебпошук (Grounding) | Так |
| Мислення/міркування | Так (Gemini 2.5+ / Gemini 3+) |
| Моделі Gemma 4 | Так |
Вебпошук
Вбудований постачальник вебпошуку gemini використовує прив’язку до Google Search через Gemini.
Налаштуйте окремий ключ пошуку в plugins.entries.google.config.webSearch
або дозвольте повторно використовувати models.providers.google.apiKey після 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", }, }, }, }, },}Порядок пріоритету облікових даних: окремий 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", }, }, },}Генерування відео
Вбудований Plugin google також реєструє генерування відео через спільний
інструмент 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", }, }, },}Генерування музики
Вбудований Plugin google також реєструє генерування музики через спільний
інструмент 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 використовує шлях TTS Gemini API з моделлю
gemini-3.1-flash-tts-preview.
- Голос за замовчуванням:
Kore - Автентифікація:
messages.tts.providers.google.apiKey,models.providers.google.apiKey,GEMINI_API_KEYабоGOOGLE_API_KEY - Виведення: WAV для звичайних вкладень TTS, Opus для цільових голосових повідомлень, PCM для Talk/телефонії
- Виведення голосових повідомлень: PCM від Google загортається у WAV і перекодовується у формат Opus із частотою 48 кГц за допомогою
ffmpeg
Пакетний шлях Gemini TTS від Google повертає згенероване аудіо в завершеній
відповіді generateContent. Для голосових розмов із найнижчою затримкою використовуйте
постачальника голосу Google у реальному часі на основі Gemini Live API замість пакетного
TTS.
Щоб використовувати Google як постачальника 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 використовує запити природною мовою для керування стилем. Установіть
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]]Голос у реальному часі
Вбудований Plugin google реєструє постачальника голосу в реальному часі на основі
Gemini Live API для серверних аудіомостів, як-от Voice Call і Google Meet.
| Налаштування | Шлях конфігурації | Типове значення |
|---|---|---|
| Модель | plugins.entries.voice-call.config.realtime.providers.google.model |
gemini-3.1-flash-live-preview |
| Голос | ...google.voice |
Kore |
| Температура | ...google.temperature |
(не задано) |
| Чутливість початку VAD | ...google.startSensitivity |
(не задано) |
| Чутливість завершення VAD | ...google.endSensitivity |
(не задано) |
| Тривалість тиші | ...google.silenceDurationMs |
(не задано) |
| Обробка активності | ...google.activityHandling |
Типове значення Google, start-of-activity-interrupts |
| Охоплення репліки | ...google.turnCoverage |
Типове значення Google, audio-activity-and-all-video |
| Вимкнення автоматичного VAD | ...google.automaticActivityDetectionDisabled |
false |
| Відновлення сеансу | ...google.sessionResumption |
true |
| Стиснення контексту | ...google.contextWindowCompression |
true |
| Ключ API | ...google.apiKey |
Використовує резервно models.providers.google.apiKey, GEMINI_API_KEY або GOOGLE_API_KEY |
Приклад конфігурації голосових викликів у реальному часі:
{ plugins: { entries: { "voice-call": { enabled: true, config: { realtime: { enabled: true, provider: "google", providers: { google: { model: "gemini-3.1-flash-live-preview", speakerVoice: "Kore", activityHandling: "start-of-activity-interrupts", turnCoverage: "audio-activity-and-all-video", }, }, }, }, }, }, },}Для оперативної перевірки супроводжувачем виконайте
OPENAI_API_KEY=... GEMINI_API_KEY=... node --import tsx scripts/dev/realtime-talk-live-smoke.ts.
Ця димова перевірка також охоплює серверні шляхи OpenAI/WebRTC; етап Google створює токен
Live API з тими самими обмеженнями, що використовує розмовний режим Control UI, відкриває браузерну
кінцеву точку WebSocket, надсилає початкове корисне навантаження налаштування та очікує на
setupComplete.
Розширена конфігурація
Безпосереднє повторне використання кешу Gemini
Для безпосередніх запусків Gemini API (api: "google-generative-ai") OpenClaw
передає налаштований дескриптор cachedContent у запити Gemini.
- Налаштуйте параметри для окремої моделі або глобально за допомогою
cachedContentчи застарілогоcached_content - Параметри з конкретнішої області видимості (рівень моделі замість глобального) завжди мають пріоритет.
У межах однієї області видимості, якщо задано обидва ключі, пріоритет має
cached_content. Використовуйте лише один ключ в області видимості, щоб уникнути неочікуваної поведінки. - Приклад значення:
cachedContents/prebuilt-context - Дані про використання в разі влучання в кеш Gemini нормалізуються в
cacheReadOpenClaw із висхідногоcachedContentTokenCount
{ agents: { defaults: { models: { "google/gemini-2.5-pro": { params: { cachedContent: "cachedContents/prebuilt-context", }, }, }, }, },}Примітки щодо використання Gemini CLI
Під час використання OAuth-провайдера google-gemini-cli OpenClaw типово використовує
виведення Gemini CLI stream-json і нормалізує дані про використання з кінцевого
корисного навантаження stats. Застарілі перевизначення --output-format json і надалі використовують
аналізатор JSON.
- Потоковий текст відповіді надходить із подій
messageасистента. - Для застарілого виведення JSON текст відповіді надходить із поля
responseу JSON від CLI. - Якщо CLI залишає
usageпорожнім, дані про використання беруться резервно зіstats. stats.cachedнормалізується вcacheReadOpenClaw.- Якщо
stats.inputвідсутнє, OpenClaw обчислює кількість вхідних токенів якstats.input_tokens - stats.cached.
Налаштування середовища та фонової служби
Якщо Gateway працює як фонова служба (launchd/systemd), переконайтеся, що GEMINI_API_KEY
доступний цьому процесу (наприклад, у ~/.openclaw/.env або через
env.shellEnv).
Пов’язані матеріали
Вибір провайдерів, посилань на моделі та поведінки перемикання в разі відмови.
Спільні параметри інструмента генерування зображень і вибір провайдера.
Спільні параметри інструмента генерування відео та вибір провайдера.
Спільні параметри інструмента генерування музики та вибір провайдера.