Providers

Google (Gemini)

Das Google-Plugin bietet Zugriff auf Gemini-Modelle über Google AI Studio sowie Bilderzeugung, Medienverständnis (Bild/Audio/Video), Text-to-Speech und Websuche über Gemini Grounding.

  • Provider: google
  • Authentifizierung: GEMINI_API_KEY oder GOOGLE_API_KEY
  • API: Google Gemini API
  • Runtime-Option: agents.defaults.agentRuntime.id: "google-gemini-cli" verwendet Gemini CLI OAuth wieder, während Modellreferenzen kanonisch als google/* beibehalten werden.

Erste Schritte

Wählen Sie Ihre bevorzugte Authentifizierungsmethode aus und folgen Sie den Einrichtungsschritten.

API-Schlüssel

Am besten geeignet für: Standardzugriff auf die Gemini API über Google AI Studio.

  • Onboarding ausführen

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

    Oder übergeben Sie den Schlüssel direkt:

    openclaw onboard --non-interactive \
      --mode local \
      --auth-choice gemini-api-key \
      --gemini-api-key "$GEMINI_API_KEY"
    
  • Standardmodell festlegen

    {
      agents: {
        defaults: {
          model: { primary: "google/gemini-3.1-pro-preview" },
        },
      },
    }
    
  • Prüfen, ob das Modell verfügbar ist

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

    Am besten geeignet für: Wiederverwendung einer vorhandenen Gemini CLI-Anmeldung über PKCE OAuth statt eines separaten API-Schlüssels.

  • Gemini CLI installieren

    Der lokale gemini-Befehl muss auf PATH verfügbar sein.

    # Homebrew
    brew install gemini-cli
    
    # or npm
    npm install -g @google/gemini-cli
    

    OpenClaw unterstützt sowohl Homebrew-Installationen als auch globale npm-Installationen, einschließlich gängiger Windows-/npm-Layouts.

  • Über OAuth anmelden

    openclaw models auth login --provider google-gemini-cli --set-default
    
  • Prüfen, ob das Modell verfügbar ist

    openclaw models list --provider google
    
    • Standardmodell: google/gemini-3.1-pro-preview
    • Runtime: google-gemini-cli
    • Alias: gemini-cli

    Die Gemini API-Modell-ID von Gemini 3.1 Pro ist gemini-3.1-pro-preview. OpenClaw akzeptiert die kürzere Form google/gemini-3.1-pro als praktischen Alias und normalisiert sie vor Provider-Aufrufen.

    Umgebungsvariablen:

    • OPENCLAW_GEMINI_OAUTH_CLIENT_ID
    • OPENCLAW_GEMINI_OAUTH_CLIENT_SECRET

    (Oder die GEMINI_CLI_*-Varianten.)

    google-gemini-cli/*-Modellreferenzen sind Legacy-Kompatibilitätsaliasse. Neue Konfigurationen sollten google/*-Modellreferenzen plus die Runtime google-gemini-cli verwenden, wenn sie lokale Gemini CLI-Ausführung wünschen.

    Fähigkeiten

    Fähigkeit Unterstützt
    Chat-Vervollständigungen Ja
    Bilderzeugung Ja
    Musikgenerierung Ja
    Text-to-Speech Ja
    Echtzeit-Sprache Ja (Google Live API)
    Bildverständnis Ja
    Audiotranskription Ja
    Videoverständnis Ja
    Websuche (Grounding) Ja
    Denken/Reasoning Ja (Gemini 2.5+ / Gemini 3+)
    Gemma 4-Modelle Ja

    Websuche

    Der gebündelte gemini-Websuche-Provider verwendet Gemini Google Search Grounding. Konfigurieren Sie einen dedizierten Suchschlüssel unter plugins.entries.google.config.webSearch, oder lassen Sie ihn nach GEMINI_API_KEY models.providers.google.apiKey wiederverwenden:

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

    Die Reihenfolge der Anmeldedaten ist zuerst der dedizierte webSearch.apiKey, dann GEMINI_API_KEY, dann models.providers.google.apiKey. webSearch.baseUrl ist optional und für Operator-Proxys oder kompatible Gemini API-Endpunkte vorgesehen; wenn ausgelassen, verwendet die Gemini-Websuche models.providers.google.baseUrl wieder. Siehe Gemini-Suche für das providerspezifische Tool-Verhalten.

    Bilderzeugung

    Der gebündelte google-Provider für Bilderzeugung verwendet standardmäßig google/gemini-3.1-flash-image-preview.

    • Unterstützt außerdem google/gemini-3-pro-image-preview
    • Erzeugen: bis zu 4 Bilder pro Anfrage
    • Bearbeitungsmodus: aktiviert, bis zu 5 Eingabebilder
    • Geometriesteuerungen: size, aspectRatio und resolution

    So verwenden Sie Google als Standard-Provider für Bilder:

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

    Videogenerierung

    Das gebündelte google-Plugin registriert außerdem Videogenerierung über das gemeinsame Tool video_generate.

    • Standard-Videomodell: google/veo-3.1-fast-generate-preview
    • Modi: Text-zu-Video, Bild-zu-Video und Referenzabläufe mit einem einzelnen Video
    • Unterstützt aspectRatio, resolution und audio
    • Aktuelle Begrenzung der Dauer: 4 bis 8 Sekunden

    So verwenden Sie Google als Standard-Provider für Videos:

    {
      agents: {
        defaults: {
          videoGenerationModel: {
            primary: "google/veo-3.1-fast-generate-preview",
          },
        },
      },
    }
    

    Musikgenerierung

    Das gebündelte google-Plugin registriert außerdem Musikgenerierung über das gemeinsame Tool music_generate.

    • Standard-Musikmodell: google/lyria-3-clip-preview
    • Unterstützt außerdem google/lyria-3-pro-preview
    • Prompt-Steuerungen: lyrics und instrumental
    • Ausgabeformat: standardmäßig mp3, plus wav auf google/lyria-3-pro-preview
    • Referenzeingaben: bis zu 10 Bilder
    • Sitzungsbasierte Läufe werden über den gemeinsamen Task-/Statusablauf entkoppelt, einschließlich action: "status"

    So verwenden Sie Google als Standard-Provider für Musik:

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

    Text-to-Speech

    Der gebündelte google-Sprach-Provider verwendet den Gemini API TTS-Pfad mit gemini-3.1-flash-tts-preview.

    • Standardstimme: Kore
    • Authentifizierung: messages.tts.providers.google.apiKey, models.providers.google.apiKey, GEMINI_API_KEY oder GOOGLE_API_KEY
    • Ausgabe: WAV für reguläre TTS-Anhänge, Opus für Sprachnotiz-Ziele, PCM für Talk/Telefonie
    • Sprachnotiz-Ausgabe: Google PCM wird als WAV verpackt und mit ffmpeg in 48 kHz Opus transkodiert

    Googles Batch-Gemini-TTS-Pfad gibt generiertes Audio in der abgeschlossenen generateContent-Antwort zurück. Für gesprochene Unterhaltungen mit niedrigster Latenz verwenden Sie den Google-Echtzeit-Sprach-Provider auf Basis der Gemini Live API statt Batch- TTS.

    So verwenden Sie Google als Standard-TTS-Provider:

    {
      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 verwendet natürlichsprachliches Prompting zur Stilsteuerung. Setzen Sie audioProfile, um dem gesprochenen Text einen wiederverwendbaren Stil-Prompt voranzustellen. Setzen Sie speakerName, wenn Ihr Prompt-Text auf einen benannten Sprecher verweist.

    Gemini API TTS akzeptiert außerdem ausdrucksstarke Audio-Tags in eckigen Klammern im Text, wie [whispers] oder [laughs]. Um Tags aus der sichtbaren Chat-Antwort herauszuhalten, sie aber an TTS zu senden, setzen Sie sie in einen [[tts:text]]...[[/tts:text]]- Block:

    Here is the clean reply text.
    
    [[tts:text]][whispers] Here is the spoken version.[[/tts:text]]
    

    Echtzeit-Sprache

    Das gebündelte google-Plugin registriert einen Echtzeit-Sprach-Provider auf Basis der Gemini Live API für Backend-Audio-Bridges wie Voice Call und Google Meet.

    Einstellung Konfigurationspfad Standardwert
    Modell plugins.entries.voice-call.config.realtime.providers.google.model gemini-2.5-flash-native-audio-preview-12-2025
    Stimme ...google.voice Kore
    Temperatur ...google.temperature (nicht gesetzt)
    VAD-Startempfindlichkeit ...google.startSensitivity (nicht gesetzt)
    VAD-Endempfindlichkeit ...google.endSensitivity (nicht gesetzt)
    Stilledauer ...google.silenceDurationMs (nicht gesetzt)
    Aktivitätsbehandlung ...google.activityHandling Google-Standardwert, start-of-activity-interrupts
    Turn-Abdeckung ...google.turnCoverage Google-Standardwert, only-activity
    Automatische VAD deaktivieren ...google.automaticActivityDetectionDisabled false
    Sitzungsfortsetzung ...google.sessionResumption true
    Kontextkomprimierung ...google.contextWindowCompression true
    API-Schlüssel ...google.apiKey Fällt auf models.providers.google.apiKey, GEMINI_API_KEY oder GOOGLE_API_KEY zurück

    Beispiel für die Voice Call-Echtzeitkonfiguration:

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

    Führen Sie für die Live-Verifizierung durch Maintainer OPENAI_API_KEY=... GEMINI_API_KEY=... node --import tsx scripts/dev/realtime-talk-live-smoke.ts aus. Der Google-Abschnitt prägt dieselbe eingeschränkte Live-API-Token-Form, die von Control UI Talk verwendet wird, öffnet den Browser-WebSocket-Endpunkt, sendet die anfängliche Setup-Nutzlast und wartet auf setupComplete.

    Erweiterte Konfiguration

    Direkte Wiederverwendung des Gemini-Caches

    Bei direkten Gemini-API-Ausführungen (api: "google-generative-ai") übergibt OpenClaw ein konfiguriertes cachedContent-Handle an Gemini-Anfragen.

    • Konfigurieren Sie Parameter pro Modell oder global entweder mit cachedContent oder dem Legacy-Parameter cached_content
    • Wenn beide vorhanden sind, hat cachedContent Vorrang
    • Beispielwert: cachedContents/prebuilt-context
    • Die Cache-Treffer-Nutzung von Gemini wird aus dem Upstream-Wert cachedContentTokenCount in OpenClaw cacheRead normalisiert
    {
      agents: {
        defaults: {
          models: {
            "google/gemini-2.5-pro": {
              params: {
                cachedContent: "cachedContents/prebuilt-context",
              },
            },
          },
        },
      },
    }
    
    Hinweise zur JSON-Nutzung der Gemini CLI

    Bei Verwendung des OAuth-Providers google-gemini-cli normalisiert OpenClaw die JSON-Ausgabe der CLI wie folgt:

    • Antworttext stammt aus dem CLI-JSON-Feld response.
    • Die Nutzung fällt auf stats zurück, wenn die CLI usage leer lässt.
    • stats.cached wird in OpenClaw cacheRead normalisiert.
    • Wenn stats.input fehlt, leitet OpenClaw Eingabe-Tokens aus stats.input_tokens - stats.cached ab.
    Umgebungs- und Daemon-Einrichtung

    Wenn der Gateway als Daemon ausgeführt wird (launchd/systemd), stellen Sie sicher, dass GEMINI_API_KEY für diesen Prozess verfügbar ist (zum Beispiel in ~/.openclaw/.env oder über env.shellEnv).

    Verwandte Themen