Providers

xAI

OpenClaw 隨附一個用於 Grok 模型的 xai provider plugin。

開始使用

  • Create an API key

    xAI 主控台中建立 API key。

  • Set your API key

    設定 XAI_API_KEY,或執行:

    openclaw onboard --auth-choice xai-api-key
    
  • Pick a model

    {
      agents: { defaults: { model: { primary: "xai/grok-4.3" } } },
    }
    
  • 內建型錄

    OpenClaw 內建包含下列 xAI 模型系列:

    系列 Model ids
    Grok 3 grok-3, grok-3-fast, grok-3-mini, grok-3-mini-fast
    Grok 4.3 grok-4.3
    Grok 4 grok-4, grok-4-0709
    Grok 4 Fast grok-4-fast, grok-4-fast-non-reasoning
    Grok 4.1 Fast grok-4-1-fast, grok-4-1-fast-non-reasoning
    Grok 4.20 Beta grok-4.20-beta-latest-reasoning, grok-4.20-beta-latest-non-reasoning
    Grok Code grok-code-fast-1

    當較新的 grok-4*grok-code-fast* id 遵循相同 API 形狀時,此 Plugin 也會向前解析它們。

    OpenClaw 功能涵蓋範圍

    隨附的 Plugin 會將 xAI 目前的公開 API surface 對應到 OpenClaw 的共用 provider 與工具合約。不符合共用合約的能力 (例如串流 TTS 和即時語音)不會公開 - 請參閱 下表。

    xAI 能力 OpenClaw surface 狀態
    聊天 / Responses xai/<model> model provider
    伺服器端網頁搜尋 web_search provider grok
    伺服器端 X 搜尋 x_search tool
    伺服器端程式碼執行 code_execution tool
    圖片 image_generate
    影片 video_generate
    批次文字轉語音 messages.tts.provider: "xai" / tts
    串流 TTS - 未公開;OpenClaw 的 TTS 合約會回傳完整音訊緩衝區
    批次語音轉文字 tools.media.audio / media understanding
    串流語音轉文字 Voice Call streaming.provider: "xai"
    即時語音 - 尚未公開;使用不同的 session/WebSocket 合約
    檔案 / 批次 僅一般模型 API 相容性 不是一級 OpenClaw 工具

    快速模式對應

    /fast onagents.defaults.models["xai/<model>"].params.fastMode: true 會依下列方式重寫原生 xAI 請求:

    來源模型 快速模式目標
    grok-3 grok-3-fast
    grok-3-mini grok-3-mini-fast
    grok-4 grok-4-fast
    grok-4-0709 grok-4-fast

    舊版相容別名

    舊版別名仍會正規化為標準隨附 id:

    舊版別名 標準 id
    grok-4-fast-reasoning grok-4-fast
    grok-4-1-fast-reasoning grok-4-1-fast
    grok-4.20-reasoning grok-4.20-beta-latest-reasoning
    grok-4.20-non-reasoning grok-4.20-beta-latest-non-reasoning

    功能

    Web search

    隨附的 grok web-search provider 也會使用 XAI_API_KEY

    openclaw config set tools.web.search.provider grok
    
    Video generation

    隨附的 xai Plugin 會透過共用 video_generate 工具註冊影片生成。

    • 預設影片模型:xai/grok-imagine-video
    • 模式:文字轉影片、圖片轉影片、參考圖片生成、遠端 影片編輯,以及遠端影片延伸
    • 長寬比:1:116:99:164:33:43:22:3
    • 解析度:480P720P
    • 時長:生成/圖片轉影片為 1-15 秒, 使用 reference_image roles 時為 1-10 秒,延伸為 2-10 秒
    • 參考圖片生成:將每張提供的圖片的 imageRoles 設為 reference_image; xAI 最多接受 7 張此類圖片

    若要使用 xAI 作為預設影片供應器:

    {
      agents: {
        defaults: {
          videoGenerationModel: {
            primary: "xai/grok-imagine-video",
          },
        },
      },
    }
    
    Image generation

    隨附的 xai Plugin 會透過共用 image_generate 工具註冊圖片生成。

    • 預設圖片模型:xai/grok-imagine-image
    • 其他模型:xai/grok-imagine-image-pro
    • 模式:文字轉圖片與參考圖片編輯
    • 參考輸入:一個 image 或最多五個 images
    • 長寬比:1:116:99:164:33:42:33:2
    • 解析度:1K2K
    • 數量:最多 4 張圖片

    OpenClaw 會向 xAI 要求 b64_json 圖片回應,讓生成的媒體可以透過 一般的頻道附件路徑儲存與傳送。本機 參考圖片會轉換為 data URL;遠端 http(s) 參考會 直接傳遞。

    若要使用 xAI 作為預設圖片供應器:

    {
      agents: {
        defaults: {
          imageGenerationModel: {
            primary: "xai/grok-imagine-image",
          },
        },
      },
    }
    
    Text-to-speech

    隨附的 xai Plugin 會透過共用 tts provider surface 註冊文字轉語音。

    • 語音:eveararexsalleouna
    • 預設語音:eve
    • 格式:mp3wavpcmmulawalaw
    • 語言:BCP-47 code 或 auto
    • 速度:供應器原生速度覆寫
    • 不支援原生 Opus 語音備註格式

    若要使用 xAI 作為預設 TTS 供應器:

    {
      messages: {
        tts: {
          provider: "xai",
          providers: {
            xai: {
              voiceId: "eve",
            },
          },
        },
      },
    }
    
    Speech-to-text

    隨附的 xai Plugin 會透過 OpenClaw 的 媒體理解轉錄 surface 註冊批次語音轉文字。

    • 預設模型:grok-stt
    • Endpoint:xAI REST /v1/stt
    • 輸入路徑:multipart audio file upload
    • 只要 OpenClaw 的傳入音訊轉錄使用 tools.media.audio,即可受到支援,包括 Discord voice-channel segments 和 channel audio attachments

    若要強制對傳入音訊轉錄使用 xAI:

    {
      tools: {
        media: {
          audio: {
            models: [
              {
                type: "provider",
                provider: "xai",
                model: "grok-stt",
              },
            ],
          },
        },
      },
    }
    

    語言可以透過共用音訊媒體設定或每次呼叫的 轉錄請求提供。共用 OpenClaw surface 會接受 prompt hints,但 xAI REST STT 整合只會轉送檔案、模型與 語言,因為這些能清楚對應到目前公開的 xAI endpoint。

    Streaming speech-to-text

    隨附的 xai Plugin 也會為即時語音通話音訊 註冊 realtime transcription provider。

    • Endpoint:xAI WebSocket wss://api.x.ai/v1/stt
    • 預設編碼:mulaw
    • 預設取樣率:8000
    • 預設 endpointing:800ms
    • 臨時轉錄稿:預設啟用

    Voice Call 的 Twilio 媒體串流會傳送 G.711 µ-law 音訊影格,因此 xAI 供應器可以直接轉送這些影格,無需轉碼:

    {
      plugins: {
        entries: {
          "voice-call": {
            config: {
              streaming: {
                enabled: true,
                provider: "xai",
                providers: {
                  xai: {
                    apiKey: "${XAI_API_KEY}",
                    endpointingMs: 800,
                    language: "en",
                  },
                },
              },
            },
          },
        },
      },
    }
    

    Provider 擁有的設定位於 plugins.entries.voice-call.config.streaming.providers.xai 下。支援的 鍵為 apiKeybaseUrlsampleRateencodingpcmmulawalaw)、interimResultsendpointingMslanguage

    x_search 設定

    內建的 xAI Plugin 會將 x_search 作為 OpenClaw 工具公開,用於透過 Grok 搜尋 X(前 Twitter)內容。

    設定路徑:plugins.entries.xai.config.xSearch

    類型 預設值 說明
    enabled boolean - 啟用或停用 x_search
    model string grok-4-1-fast 用於 x_search 請求的模型
    baseUrl string - xAI Responses 基礎 URL 覆寫
    inlineCitations boolean - 在結果中包含行內引用
    maxTurns number - 最大對話輪次
    timeoutSeconds number - 請求逾時秒數
    cacheTtlMinutes number - 快取存活時間,以分鐘為單位
    {
      plugins: {
        entries: {
          xai: {
            config: {
              xSearch: {
                enabled: true,
                model: "grok-4-1-fast",
                baseUrl: "https://api.x.ai/v1",
                inlineCitations: true,
              },
            },
          },
        },
      },
    }
    
    程式碼執行設定

    內建的 xAI Plugin 會將 code_execution 作為 OpenClaw 工具公開,用於 在 xAI 沙箱環境中遠端執行程式碼。

    設定路徑:plugins.entries.xai.config.codeExecution

    類型 預設值 說明
    enabled boolean true(如果有可用金鑰) 啟用或停用程式碼執行
    model string grok-4-1-fast 用於程式碼執行請求的模型
    maxTurns number - 最大對話輪次
    timeoutSeconds number - 請求逾時秒數
    {
      plugins: {
        entries: {
          xai: {
            config: {
              codeExecution: {
                enabled: true,
                model: "grok-4-1-fast",
              },
            },
          },
        },
      },
    }
    
    已知限制
    • 目前驗證僅支援 API 金鑰。OpenClaw 尚未提供 xAI OAuth 或裝置碼流程。
    • grok-4.20-multi-agent-experimental-beta-0304 不支援一般 xAI Provider 路徑,因為它需要的上游 API 介面不同於標準 OpenClaw xAI 傳輸層。
    • xAI Realtime 語音尚未註冊為 OpenClaw Provider。它需要不同於批次 STT 或串流轉錄的雙向語音工作階段合約。
    • xAI 圖片 quality、圖片 mask,以及額外僅原生支援的長寬比,在共享 image_generate 工具具備對應的跨 Provider 控制之前不會公開。
    進階注意事項
    • OpenClaw 會在共享執行器路徑上自動套用 xAI 專用的工具結構描述與工具呼叫相容性修正。
    • 原生 xAI 請求預設為 tool_stream: true。將 agents.defaults.models["xai/<model>"].params.tool_stream 設為 false 即可停用。
    • 內建的 xAI 包裝器會在傳送原生 xAI 請求前,移除不支援的嚴格工具結構描述旗標與推理承載鍵。
    • web_searchx_searchcode_execution 會作為 OpenClaw 工具公開。OpenClaw 會在每個工具請求中啟用它需要的特定 xAI 內建功能,而不是將所有原生工具附加到每個聊天輪次。
    • Grok web_search 會讀取 plugins.entries.xai.config.webSearch.baseUrlx_search 會讀取 plugins.entries.xai.config.xSearch.baseUrl,然後 回退到 Grok 網頁搜尋基礎 URL。
    • x_searchcode_execution 由內建的 xAI Plugin 擁有,而不是硬編碼到核心模型執行階段中。
    • code_execution 是遠端 xAI 沙箱執行,不是本機 exec

    Live testing

    xAI 媒體路徑由單元測試和選用的即時測試套件涵蓋。即時 命令會先從你的登入 shell 載入祕密,包括 ~/.profile,再 探測 XAI_API_KEY

    pnpm test extensions/xai
    OPENCLAW_LIVE_TEST=1 OPENCLAW_LIVE_TEST_QUIET=1 pnpm test:live -- extensions/xai/xai.live.test.ts
    OPENCLAW_LIVE_TEST=1 OPENCLAW_LIVE_TEST_QUIET=1 OPENCLAW_LIVE_IMAGE_GENERATION_PROVIDERS=xai pnpm test:live -- test/image-generation.runtime.live.test.ts
    

    Provider 專用的即時檔案會合成一般 TTS、適合電話的 PCM TTS、透過 xAI 批次 STT 轉錄音訊、透過 xAI 即時 STT 串流傳送同一份 PCM、 產生文字轉圖片輸出,並編輯參考圖片。共享圖片即時檔案會透過 OpenClaw 的 執行階段選擇、回退、正規化與媒體附件路徑,驗證同一個 xAI Provider。

    相關內容