Providers
Google (Gemini)
Плагін 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.
Отримайте ключ 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)
Найкраще підходить для: входу за допомогою облікового запису Google через OAuth Gemini CLI замість використання окремого ключа API.
Установіть Gemini CLI
Локальна команда gemini має бути доступна в PATH.
# Homebrewbrew install gemini-cli # або 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
Автоматичне виявлення під час початкового налаштування показує наявний вхід у Gemini CLI, але ніколи не перевіряє його автоматично, оскільки Gemini CLI не має способу перевірки без інструментів. Щоб продовжити, виберіть OAuth Gemini CLI або ключ Gemini API.
Посилання на моделі 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...", // необов’язково, якщо задано GEMINI_API_KEY або models.providers.google.apiKey baseUrl: "https://generativelanguage.googleapis.com/v1beta", // у разі відсутності використовується 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 також реєструє генерування відео через спільний
інструмент 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 також реєструє генерування музики через спільний
інструмент music_generate.
- Модель музики за замовчуванням:
google/lyria-3-clip-preview - Також підтримується
google/lyria-3-pro-preview - Керування запитом:
lyricsіinstrumental - Формат виведення: за замовчуванням
mp3, а такожwavуgoogle/lyria-3-pro-preview - Еталонні вхідні дані: до 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: "Говоріть професійно спокійним тоном.", }, }, }, },}Gemini API TTS використовує запити природною мовою для керування стилем. Установіть
audioProfile, щоб додати багаторазовий запит стилю перед озвучуваним текстом. Установіть
speakerName, якщо текст запиту посилається на названого мовця.
Gemini API TTS також приймає виразні аудіотеги у квадратних дужках у тексті,
як-от [whispers] або [laughs]. Щоб теги не відображалися у видимій відповіді чату,
але надсилалися до TTS, розмістіть їх усередині блока [[tts:text]]...[[/tts:text]]:
Ось чистий текст відповіді. [[tts:text]][whispers] Ось озвучена версія.[[/tts:text]]Голос у реальному часі
Вбудований плагін 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 |
Приклад конфігурації Voice Call для роботи в реальному часі:
{ 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.
Ця димова перевірка також охоплює серверні шляхи/WebRTC OpenAI; частина Google створює токен
Live API тієї самої обмеженої форми, яку використовує Talk у Control UI, відкриває браузерну
кінцеву точку WebSocket, надсилає початкові дані налаштування та очікує на
setupComplete.
Розширена конфігурація
Безпосереднє повторне використання кешу Gemini
Для безпосередніх запусків Gemini API (api: "google-generative-ai") OpenClaw
передає налаштований дескриптор cachedContent до запитів Gemini.
- Налаштуйте параметри для окремої моделі або глобально за допомогою
cachedContentчи застарілогоcached_content - Параметри з конкретнішої області (рівня моделі, а не глобального) завжди мають пріоритет.
У межах однієї області, якщо задано обидва ключі, пріоритет має
cached_content. Використовуйте лише один ключ на область, щоб уникнути несподіванок. - Приклад значення:
cachedContents/prebuilt-context - Використання в разі влучання в кеш Gemini нормалізується в OpenClaw
cacheReadз вхідного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 текст відповіді надходить із поля JSON CLI
response. - Дані про використання беруться з
stats, якщо CLI залишаєusageпорожнім. stats.cachedнормалізується в OpenClawcacheRead.- Якщо
stats.inputвідсутній, OpenClaw обчислює кількість вхідних токенів ізstats.input_tokens - stats.cached.
Налаштування середовища та фонової служби
Якщо Gateway працює як фонова служба (launchd/systemd), переконайтеся, що GEMINI_API_KEY
доступний цьому процесу (наприклад, у ~/.openclaw/.env або через
env.shellEnv).
Пов’язані матеріали
Вибір постачальників, посилань на моделі та поведінки в разі відмови.
Спільні параметри інструмента для роботи із зображеннями та вибір постачальника.
Спільні параметри інструмента для роботи з відео та вибір постачальника.
Спільні параметри інструмента для роботи з музикою та вибір постачальника.