On this page

On this page

Providers

Groq

Groq provides ultra-fast inference on open-weight models (Llama, Gemma, Kimi, Qwen, GPT OSS, and more) using custom LPU hardware. The Groq plugin registers both an OpenAI-compatible chat provider and an audio media-understanding provider.

Property Value
Provider id groq
Plugin official external package
Auth env var GROQ_API_KEY
API OpenAI-compatible (openai-completions)
Base URL https://api.groq.com/openai/v1
Audio transcription whisper-large-v3-turbo (default)
Suggested chat default groq/openai/gpt-oss-120b

Install plugin

Install the official plugin:

bash
openclaw plugins install @openclaw/groq-provider

Installation applies to a running Gateway automatically; otherwise it takes effect on the next startup. See Apply changes and inspect.

Getting started

  • Get an API key

    Create an API key at console.groq.com/keys.

  • Set the API key

    bash
    export GROQ_API_KEY=gsk_...
  • Set a default model

    json5
    {  agents: {    defaults: {      model: { primary: "groq/openai/gpt-oss-120b" },    },  },}
  • Verify the catalog is reachable

    bash
    openclaw models list --provider groq
  • Config file example

    json5
    {  env: { vars: { GROQ_API_KEY: "gsk_..." } },  agents: {    defaults: {      model: { primary: "groq/openai/gpt-oss-120b" },    },  },}

    Built-in catalog

    OpenClaw ships a manifest-backed Groq catalog of reasoning models. Run openclaw models list --provider groq to see the static rows for your installed version, or check console.groq.com/docs/models for Groq's authoritative list.

    Model ref Name Reasoning Input Context
    groq/openai/gpt-oss-120b GPT OSS 120B yes text 131,072
    groq/openai/gpt-oss-20b GPT OSS 20B yes text 131,072
    groq/openai/gpt-oss-safeguard-20b Safety GPT OSS 20B yes text 131,072
    groq/qwen/qwen3.6-27b Qwen 3.6 27B yes text 131,072

    Reasoning models

    Groq's GPT OSS reasoning models map OpenClaw's shared /think levels onto reasoning_effort values of low, medium, or high. /think off or /think none omits reasoning_effort from those requests rather than sending a disabled value.

    Qwen 3.6 27B is text-only on Groq and supports two wire reasoning modes. /think off or /think none sends reasoning_effort: "none"; every enabled level sends "default". When reasoning is enabled on Groq Qwen models, OpenClaw requests reasoning_format: "parsed" so reasoning stays in thinking blocks instead of visible answer text. Disabled reasoning and GPT OSS requests are left unchanged by this format hook.

    See Thinking modes for the shared /think levels and how OpenClaw translates them per provider.

    Audio transcription

    Groq's plugin also registers an audio media-understanding provider so voice messages can be transcribed through the shared tools.media.audio surface.

    Property Value
    Shared model path tools.media.models
    Default base URL https://api.groq.com/openai/v1
    Default model whisper-large-v3-turbo
    Auto priority 20
    API endpoint OpenAI-compatible /audio/transcriptions

    To make Groq the default audio backend:

    json5
    {  tools: {    media: {      models: [{ provider: "groq", capabilities: ["audio"] }],    },  },}
    Environment availability for the daemon

    If the Gateway runs as a managed service (launchd, systemd, Docker), GROQ_API_KEY must be visible to that process — not just to your interactive shell.

    Custom Groq model ids

    OpenClaw accepts any Groq model id at runtime. Use the exact id shown by Groq and prefix it with groq/. The static catalog covers the common cases; uncatalogued ids fall through to the default OpenAI-compatible template.

    json5
    {  agents: {    defaults: {      model: { primary: "groq/<your-model-id>" },    },  },}
    Was this useful?