Providers

Google (Gemini)

Plugin Google надає доступ до моделей Gemini через Google AI Studio, а також генерацію зображень, розуміння медіа (зображення/аудіо/відео), перетворення тексту на мовлення та вебпошук через Gemini Grounding.

  • Провайдер: google
  • Автентифікація: GEMINI_API_KEY або GOOGLE_API_KEY
  • API: Google Gemini API
  • Опція runtime: provider/model agentRuntime.id: "google-gemini-cli" повторно використовує OAuth Gemini CLI, зберігаючи посилання на моделі канонічними як google/*.

Початок роботи

Виберіть бажаний метод автентифікації та виконайте кроки налаштування.

API key

Найкраще для: стандартного доступу до Gemini API через Google AI Studio.

  • Запустіть onboarding

    bash
    openclaw onboard --auth-choice gemini-api-key

    Або передайте ключ напряму:

    bash
    openclaw onboard --non-interactive \  --mode local \  --auth-choice gemini-api-key \  --gemini-api-key "$GEMINI_API_KEY"
  • Установіть модель за замовчуванням

    json5
    {  agents: {    defaults: {      model: { primary: "google/gemini-3.1-pro-preview" },    },  },}
  • Перевірте, що модель доступна

    bash
    openclaw models list --provider google
  • Gemini CLI (OAuth)

    Найкраще для: повторного використання наявного входу Gemini CLI через PKCE OAuth замість окремого API key.

  • Установіть Gemini CLI

    Локальна команда gemini має бути доступна в PATH.

    bash
    # Homebrewbrew install gemini-cli # or npmnpm install -g @google/gemini-cli

    OpenClaw підтримує як встановлення через Homebrew, так і глобальні встановлення npm, зокрема поширені макети Windows/npm.

  • Увійдіть через OAuth

    bash
    openclaw models auth login --provider google-gemini-cli --set-default
  • Перевірте, що модель доступна

    bash
    openclaw models list --provider google
    • Модель за замовчуванням: google/gemini-3.1-pro-preview
    • Runtime: 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
    • OPENCLAW_GEMINI_OAUTH_CLIENT_SECRET

    (Або варіанти GEMINI_CLI_*.)

    Посилання на моделі google-gemini-cli/* є застарілими псевдонімами сумісності. Нові конфігурації мають використовувати посилання на моделі google/* плюс runtime google-gemini-cli, коли потрібне локальне виконання Gemini CLI.

    Можливості

    Можливість Підтримується
    Завершення чату Так
    Генерація зображень Так
    Генерація музики Так
    Text-to-speech Так
    Голос у реальному часі Так (Google Live API)
    Розуміння зображень Так
    Транскрипція аудіо Так
    Розуміння відео Так
    Вебпошук (Grounding) Так
    Мислення/міркування Так (Gemini 2.5+ / Gemini 3+)
    Моделі Gemma 4 Так

    Вебпошук

    Вбудований провайдер вебпошуку gemini використовує grounding Gemini Google Search. Налаштуйте окремий ключ пошуку в plugins.entries.google.config.webSearch, або дозвольте повторно використовувати models.providers.google.apiKey після GEMINI_API_KEY:

    json5
    {  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 є необов’язковим і призначений для операторських проксі або сумісних endpoint 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 як провайдера зображень за замовчуванням:

    json5
    {  agents: {    defaults: {      imageGenerationModel: {        primary: "google/gemini-3.1-flash-image-preview",      },    },  },}

    Генерація відео

    Вбудований Plugin google також реєструє генерацію відео через спільний інструмент video_generate.

    • Модель відео за замовчуванням: google/veo-3.1-fast-generate-preview
    • Режими: text-to-video, image-to-video і flows посилань на одне відео
    • Підтримує aspectRatio (16:9, 9:16) і resolution (720P, 1080P); аудіовихід наразі не підтримується Veo
    • Підтримувані тривалості: 4, 6 або 8 секунд (інші значення прив’язуються до найближчого дозволеного значення)

    Щоб використовувати Google як провайдера відео за замовчуванням:

    json5
    {  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
    • Елементи керування prompt: lyrics і instrumental
    • Формат виводу: mp3 за замовчуванням, а також wav на google/lyria-3-pro-preview
    • Вхідні посилання: до 10 зображень
    • Запуски з підтримкою сеансів від’єднуються через спільний flow завдань/статусу, зокрема action: "status"

    Щоб використовувати Google як провайдера музики за замовчуванням:

    json5
    {  agents: {    defaults: {      musicGenerationModel: {        primary: "google/lyria-3-clip-preview",      },    },  },}

    Text-to-speech

    Вбудований мовленнєвий провайдер 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/телефонії
    • Вивід голосових нотаток: Google PCM обгортається як WAV і транскодується в Opus 48 кГц за допомогою ffmpeg

    Шлях пакетного Gemini TTS від Google повертає згенероване аудіо в завершеній відповіді generateContent. Для розмов із мовленням із найнижчою затримкою використовуйте провайдера голосу Google у реальному часі на базі Gemini Live API замість пакетного TTS.

    Щоб використовувати Google як провайдера TTS за замовчуванням:

    json5
    {  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 використовує prompt природною мовою для керування стилем. Задайте audioProfile, щоб додавати багаторазовий prompt стилю перед озвучуваним текстом. Задайте speakerName, коли текст prompt посилається на іменованого мовця.

    Gemini API TTS також приймає виразні аудіотеги у квадратних дужках у тексті, як-от [whispers] або [laughs]. Щоб не показувати теги у видимій відповіді чату, але надсилати їх до TTS, розмістіть їх усередині блока [[tts:text]]...[[/tts:text]]:

    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-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 у реальному часі:

    json5
    {  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",              },            },          },        },      },    },  },}

    Для live-перевірки супровідником запустіть OPENAI_API_KEY=... GEMINI_API_KEY=... node --import tsx scripts/dev/realtime-talk-live-smoke.ts. Цей smoke також охоплює серверні/WebRTC-шляхи OpenAI; гілка Google створює такий самий обмежений токен Live API, який використовує Control UI Talk, відкриває браузерну кінцеву точку WebSocket, надсилає початкове навантаження налаштування та очікує на setupComplete.

    Розширена конфігурація

    Direct Gemini cache reuse

    Для прямих запусків Gemini API (api: "google-generative-ai") OpenClaw передає налаштований дескриптор cachedContent до запитів Gemini.

    • Налаштовуйте параметри для окремої моделі або глобально за допомогою cachedContent чи застарілого cached_content
    • Якщо наявні обидва, перевагу має cachedContent
    • Приклад значення: cachedContents/prebuilt-context
    • Використання cache-hit Gemini нормалізується в OpenClaw cacheRead з upstream cachedContentTokenCount
    json5
    {  agents: {    defaults: {      models: {        "google/gemini-2.5-pro": {          params: {            cachedContent: "cachedContents/prebuilt-context",          },        },      },    },  },}
    Gemini CLI usage notes

    Під час використання OAuth-постачальника google-gemini-cli OpenClaw типово використовує вивід Gemini CLI stream-json і нормалізує використання з фінального навантаження stats. Застарілі перевизначення --output-format json і далі використовують JSON-парсер.

    • Потоковий текст відповіді надходить із подій assistant message.
    • Для застарілого JSON-виводу текст відповіді надходить із поля CLI JSON response.
    • Використання резервно береться зі stats, коли CLI залишає usage порожнім.
    • stats.cached нормалізується в OpenClaw cacheRead.
    • Якщо stats.input відсутній, OpenClaw виводить вхідні токени з stats.input_tokens - stats.cached.
    Environment and daemon setup

    Якщо Gateway працює як демон (launchd/systemd), переконайтеся, що GEMINI_API_KEY доступний цьому процесу (наприклад, у ~/.openclaw/.env або через env.shellEnv).

    Пов’язане

    Was this useful?
    On this page

    On this page