Skip to content

Grok 开发者接入 ​

FreedomZ AI 通过 OpenAI 兼容网关提供 Grok 文本、图片和视频能力。所有示例均使用 本站入口:

text
https://freedomz.cn/v1

文档口径

本文按 xAI 官方开发文档核对请求字段和能力限制,并结合 FreedomZ AI 当前网关实现 编写。文中的“已实测”均来自 2026 年 8 月 17 日使用 Grok 分组真实 Key 完成的接口 请求;未开放、仅完成兼容性验证和仅在模型列表可见的能力会单独标明。模型列表可能由 管理员或上游调整,接入时仍应先调用 GET /v1/models。

接入总览 ​

能力方法FreedomZ AI 路径
模型列表GET/v1/models
文本与推理(推荐)POST/v1/responses
文本兼容接口POST/v1/chat/completions
图片生成POST/v1/images/generations
图片编辑POST/v1/images/edits
视频生成POST/v1/videos/generations
视频编辑POST/v1/videos/edits
视频延长POST/v1/videos/extensions
视频任务状态GET/v1/videos/{request_id}
视频内容下载GET/v1/videos/{request_id}/content

不要把 https://api.x.ai/v1、xAI 上游密钥或 OAuth 凭据写进应用。通过本站调用时, 只使用 FreedomZ AI 的 Base URL 和 API Key。

开始前检查 ​

1. Key 已绑定 Grok 分组 ​

在 API 密钥管理 中确认 Key 已分配到 Grok 分组。 文本、图片和视频能力可能分别受分组权限、可用账号、额度和上游状态限制。

2. 查询当前可用模型 ​

bash
curl --fail-with-body https://freedomz.cn/v1/models \
  -H "Authorization: Bearer $FREEDOMZ_API_KEY"

只调用响应中实际存在的模型。管理员可以调整模型映射、别名和分组范围;网上看到的 模型名不能代替 /v1/models 的实时结果。

3. 当前站点模型快照 ​

2026 年 8 月 17 日更新上游模型后,Grok 分组的 GET /v1/models 返回 128 项: 32 个基础模型,以及相同模型在 grok/、x-ai/、xai/ 三套命名空间下生成的 96 个别名。以下示例统一使用已经实测的无前缀模型名:

类型当前可见示例说明
文本grok-4.6-latest、grok-4.6、grok-latestgrok-4.6-latest 已实测,实际路由到 grok-4.6
轻量文本grok-3-mini、grok-3-mini-fast以实时模型列表为准
多智能体grok-4.20-multi-agent-0309reasoning.effort 的含义与普通推理模型不同
图片grok-imagine-1、grok-imagine-image-quality、grok-imagine-imagegrok-imagine-1 是当前最新可见并已实测的生成模型
视频grok-video-1.5、grok-imagine-video-1.5、grok-imagine-videogrok-video-1.5 已实测;旧 1.5 名称在列表中标记为 Legacy

xAI 官方文档中的 grok-imagine-image-2.0 当前不在本站模型列表中。本站已经直接请求 该模型,返回 503 grok_media_no_eligible_account,因此当前不可用。不要把命名空间 别名当成额外模型计费或重复展示;新项目优先使用本页列出的无前缀名称。

4. 本站实测状态 ​

能力实测模型或接口结果
最新文本grok-4.6-latest + /v1/responses + high200,返回完整文本;日志记录上游模型为 grok-4.6
最新图片grok-imagine-1 + /v1/images/generations200,返回可解码 JPEG Base64
最新视频grok-video-1.5 + /v1/videos/generations提交、轮询、MP4 下载均成功
文本兼容Responses、Chat Completions、JSON Schema、SSE均已实测通过
服务端工具Web Search、X Search、Code Interpreter均实际产生工具调用并完成
图片能力URL/Base64、1K/2K、14 种比例、n=2、单图/多图编辑、Data URI、multipart均已实测通过
视频能力文生、图生、参考图、语音参考、编辑、延长、480p/720p/1080p均已实测通过
Files APIGET/POST /v1/files当前均返回 404,未开放
官方图片 2.0grok-imagine-image-2.0当前返回 503,不可用

5. 设置环境变量 ​

macOS / Linux:

bash
export FREEDOMZ_API_KEY="YOUR_API_KEY"

Windows PowerShell:

powershell
$env:FREEDOMZ_API_KEY = "YOUR_API_KEY"

生产环境应使用密钥管理器或进程环境注入。不要把真实 Key 写入浏览器前端、公开仓库、 日志、截图或客户端安装包。

一、文本与推理 ​

Responses API(推荐) ​

xAI 官方建议新项目优先使用 Responses API。它更适合推理、结构化输出、工具调用和 后续多轮会话。

bash
curl --fail-with-body https://freedomz.cn/v1/responses \
  -H "Authorization: Bearer $FREEDOMZ_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-4.6",
    "reasoning": {"effort": "high"},
    "input": [
      {"role": "system", "content": "你是一个严谨的开发助手。"},
      {"role": "user", "content": "用三句话解释什么是幂等请求。"}
    ]
  }'

Python OpenAI SDK:

python
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["FREEDOMZ_API_KEY"],
    base_url="https://freedomz.cn/v1",
    timeout=3600,
)

response = client.responses.create(
    model="grok-4.6",
    reasoning={"effort": "high"},
    input="分析这个接口为什么需要幂等键,并给出实现建议。",
)
print(response.output_text)

Chat Completions(兼容旧项目) ​

已有 OpenAI Chat Completions 客户端可以继续使用:

bash
curl --fail-with-body https://freedomz.cn/v1/chat/completions \
  -H "Authorization: Bearer $FREEDOMZ_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-4.6",
    "messages": [
      {"role": "system", "content": "你是一个严谨的开发助手。"},
      {"role": "user", "content": "为这个 REST API 设计分页方案。"}
    ],
    "reasoning_effort": "medium",
    "stream": false
  }'

推理等级 ​

等级适用场景
low简单工具调用、低延迟任务
medium常规分析和中等复杂度任务
high复杂推理、数学和多步骤规划;官方默认值
xhigh本站兼容接收,但当前会按 high 记录和执行
  • Responses API 使用 reasoning: {"effort": "..."}。
  • Chat Completions 使用顶层 reasoning_effort。
  • 当前 /v1/models 为 grok-4.6 和 grok-4.6-latest 公布的等级是 low、 medium、high。本站实测发送 xhigh 可以返回 200,但使用记录中的 reasoning_effort 为 high,因此不要把它当成独立档位;需要最高档时直接使用 high。
  • grok-4.6 和 grok-4.5 的推理不能完全关闭。
  • 推理模型不要同时发送 presence_penalty、frequency_penalty 或 stop,上游可能 返回 400。
  • 多智能体模型中,reasoning.effort 可能控制参与协作的智能体规模,而不是单纯的 思考深度。

流式输出 ​

文本模型支持 SSE 流式输出,图片输出模型不支持文本 SSE:

json
{
  "model": "grok-4.6",
  "input": "逐步分析这段代码的性能瓶颈。",
  "stream": true
}

推理请求可能持续较久。客户端应增加读取超时,持续消费 SSE 事件,并在连接中断后 有限重试;不要把流式响应交给会缓存完整响应的反向代理。

结构化 JSON 输出 ​

Responses API 可以通过 JSON Schema 约束返回结构:

bash
curl --fail-with-body https://freedomz.cn/v1/responses \
  -H "Authorization: Bearer $FREEDOMZ_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-4.6",
    "input": "提取:订单 A-102,金额 39.90 美元,状态已支付。",
    "text": {
      "format": {
        "type": "json_schema",
        "name": "order",
        "strict": true,
        "schema": {
          "type": "object",
          "properties": {
            "order_id": {"type": "string"},
            "amount": {"type": "number"},
            "currency": {"type": "string"},
            "status": {"type": "string"}
          },
          "required": ["order_id", "amount", "currency", "status"],
          "additionalProperties": false
        }
      }
    }
  }'

客户端仍应解析并校验 JSON。复杂 Schema 中的部分高级关键字只属于最佳努力支持, 不要省略业务侧校验。

服务端工具 ​

本站已在 /v1/responses 实际验证以下工具:

工具请求字段本站实测结果
Web Search{"type": "web_search"}产生 web_search_call,可搜索并打开网页
X Search{"type": "x_search"}产生 X 用户和关键词搜索调用
Code Interpreter{"type": "code_interpreter"}产生并完成代码执行调用
File Search{"type": "file_search", "vector_store_ids": [...]}请求结构被接受;使用不存在的集合时调用状态为 failed

组合调用示例:

bash
curl --fail-with-body https://freedomz.cn/v1/responses \
  -H "Authorization: Bearer $FREEDOMZ_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-4.6",
    "input": "搜索公开资料并使用代码解释器核对计算结果。",
    "tools": [
      {"type": "web_search"},
      {"type": "code_interpreter"}
    ]
  }'

当前 GET /v1/files 和 POST /v1/files 均返回 404。因此本站不能通过 Files API 上传文件或创建完整的文件检索流程;已有外部集合标识的兼容请求仍需由调用方自行验证。

二、图片生成 ​

图片生成使用:

text
POST https://freedomz.cn/v1/images/generations

最小请求 ​

bash
curl --fail-with-body https://freedomz.cn/v1/images/generations \
  -H "Authorization: Bearer $FREEDOMZ_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-imagine-1",
    "prompt": "一间有自然光的现代书房,写实摄影风格",
    "aspect_ratio": "16:9",
    "n": 1
  }'

Python OpenAI SDK 对 xAI 扩展字段使用 extra_body:

python
response = client.images.generate(
    model="grok-imagine-1",
    prompt="一张用于产品首页的未来城市插画",
    n=1,
    extra_body={"aspect_ratio": "16:9"},
)
print(response.data[0].url)

常用参数 ​

参数当前建议
prompt必填,明确主体、场景、构图、光线和风格
n已实测 1 和 2;批量生成会按实际图片数计费
aspect_ratio下列 14 种值已在 grok-imagine-image 全部实测通过
response_formaturl 和 b64_json 均已实测通过
resolution1k、2k 已实测,实际产物分别为 1024x1024、2048x2048
qualitylow、medium 已与对应分辨率组合实测通过
size网关接受后会移除该兼容字段;请用 resolution 和 aspect_ratio 控制输出

官方图片比例包括:

text
1:1  16:9  9:16  4:3  3:4  3:2  2:3
2:1  1:2   19.5:9  9:19.5  20:9  9:20  auto

上述 14 种比例均已成功生成。测试过程中 19.5:9 曾遇到一次上游 502 并触发账号 短冷却,冷却后该比例及剩余比例全部成功,因此单次 5xx 不能直接判断为比例不支持。

读取结果 ​

默认响应通常从 data 数组读取:

json
{
  "data": [
    {"url": "https://..."}
  ]
}

图片 URL 可能是临时地址,应及时下载或转存。若请求使用 response_format: "b64_json", 则读取 data[0].b64_json 并进行 Base64 解码。应用应按字段实际存在情况处理,不要 自行拼接上游文件地址。

三、图片编辑 ​

图片编辑使用:

text
POST https://freedomz.cn/v1/images/edits

本站已使用 grok-imagine-image 完成单图、两图、三图、URL、Data URI 和 multipart 编辑实测。刷新后的模型列表也能看到 grok-imagine-edit,但本轮没有单独调用该名称; 生产接入优先使用本节已经验证的 grok-imagine-image。

单图编辑 ​

bash
curl --fail-with-body https://freedomz.cn/v1/images/edits \
  -H "Authorization: Bearer $FREEDOMZ_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-imagine-image",
    "prompt": "保留人物姿态,把背景替换成雨后的东京街道",
    "image": {
      "type": "image_url",
      "url": "https://example.com/input.png"
    }
  }'

输入图可以使用可公开访问的 HTTPS URL,或 data:image/...;base64,... Data URI。 不要依赖必须登录、需要 Cookie 或短时间即失效的私有地址。

多图编辑 ​

xAI 官方当前允许一次编辑最多使用 3 张源图。图片顺序会影响提示词中的指代,默认 输出比例跟随第一张图,也可以显式传入 aspect_ratio:

bash
curl --fail-with-body https://freedomz.cn/v1/images/edits \
  -H "Authorization: Bearer $FREEDOMZ_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-imagine-image",
    "prompt": "让第一张图的人物穿上第二张图的外套,保持自然光线",
    "images": [
      {"type": "image_url", "url": "https://example.com/person.jpg"},
      {"type": "image_url", "url": "https://example.com/jacket.jpg"}
    ],
    "aspect_ratio": "3:2"
  }'

multipart 兼容说明 ​

xAI 官方图片编辑接口要求 JSON,OpenAI SDK 的 images.edit() 默认发送 multipart, 因此不能直接用于 xAI 官方入口。FreedomZ 网关额外兼容 multipart 上传,并会转换为 JSON 转发:

bash
curl --fail-with-body https://freedomz.cn/v1/images/edits \
  -H "Authorization: Bearer $FREEDOMZ_API_KEY" \
  -F "model=grok-imagine-image" \
  -F "prompt=把背景替换成海边日落" \
  -F "image=@./input.png"

为了兼容本站与 xAI 官方接口,新项目优先使用 JSON 加 URL 或 Data URI。不要假设 OpenAI 图片遮罩的语义在 Grok 中完全一致。

正常尺寸图片的 multipart 上传已实测成功。测试使用的 1x1 像素占位图被上游返回 400,说明接口可用,但输入仍必须是上游可处理的真实图片。

四、视频生成 ​

视频生成是异步任务:先提交,再用 request_id 轮询。

text
POST https://freedomz.cn/v1/videos/generations

参数范围 ​

参数官方范围与注意事项
duration生成视频为 1 至 15 秒
aspect_ratio1:1、16:9、9:16、4:3、3:4、3:2、2:3
resolution480p、720p、1080p;默认通常为 480p
image图生视频起始帧,使用 URL 或 Data URI
reference_images参考图视频,最多 7 张

当前新名称 grok-video-1.5 已完成文生视频、状态轮询和 MP4 下载实测;兼容名称 grok-imagine-video-1.5 已完成图生视频、参考图、语音参考和 1080p 实测。服务日志 确认它们最终路由到 grok-video-1.5。参考图视频按官方限制最高使用 720p。

本站 1:1 + 1080p 实测产物为 1440x1440,而不是按名称推断的 1080x1080。 客户端应读取实际媒体尺寸,不要把分辨率标签直接当成固定像素值。

文生视频 ​

bash
curl --fail-with-body https://freedomz.cn/v1/videos/generations \
  -H "Authorization: Bearer $FREEDOMZ_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-video-1.5",
    "prompt": "一列电车在雨夜的城市街道缓慢驶过,电影感运镜",
    "duration": 8,
    "resolution": "720p",
    "aspect_ratio": "16:9"
  }'

图生视频 ​

bash
curl --fail-with-body https://freedomz.cn/v1/videos/generations \
  -H "Authorization: Bearer $FREEDOMZ_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-imagine-video-1.5",
    "prompt": "让树叶轻微摆动,镜头缓慢向前推进",
    "image": {"url": "https://example.com/source.png"},
    "duration": 8,
    "resolution": "720p"
  }'

image.image_url 是本站兼容字段,新代码统一使用官方的 image.url。

参考图视频 ​

参考图用于保持人物、物体、服装或产品特征,不会像 image 一样锁定视频第一帧:

bash
curl --fail-with-body https://freedomz.cn/v1/videos/generations \
  -H "Authorization: Bearer $FREEDOMZ_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-imagine-video-1.5",
    "prompt": "让第一张图的人物穿着第二张图的服装走上发布会舞台",
    "reference_images": [
      {"url": "https://example.com/person.jpg"},
      {"url": "https://example.com/outfit.jpg"}
    ],
    "duration": 8,
    "resolution": "720p",
    "aspect_ratio": "16:9"
  }'

同一个请求不能同时发送 image 和 reference_images,否则上游会返回 400。 本站已实测 1、2、3 张 reference_images,均完成并可下载;官方允许的 4 至 7 张边界 本轮未重复消耗媒体额度验证。

语音参考 ​

本站已实测预设声音 eve:任务完成后下载的 MP4 同时包含视频轨和音频轨。

json
{
  "model": "grok-imagine-video-1.5",
  "prompt": "画面中的演示者清晰说出产品介绍。",
  "reference_images": [{"url": "https://example.com/presenter.jpg"}],
  "reference_audios": [{"voice_id": "eve"}],
  "duration": 8,
  "resolution": "720p",
  "aspect_ratio": "16:9"
}

当前 Files API 路由未开放,所以不要使用本站 /v1/files 文件 ID 构造语音参考;使用 当前已验证的预设 voice_id 流程。

五、轮询和下载视频 ​

提取任务 ID ​

标准响应为:

json
{"request_id": "video-task-id"}

为了兼容不同上游,应用也可以依次读取 request_id、id、data.request_id 和 data.id。

官方状态值 ​

状态含义
pending仍在生成
done已完成,可以读取视频
failed生成失败
expired任务或结果已过期

旧客户端可以兼容识别 processing 和 completed,但新代码应以 xAI 官方状态 pending、done、failed、expired 为主。

Python 轮询示例 ​

python
import os
import time
import requests

base_url = "https://freedomz.cn/v1"
headers = {"Authorization": f"Bearer {os.environ['FREEDOMZ_API_KEY']}"}
request_id = "video-task-id"

for _ in range(120):
    response = requests.get(
        f"{base_url}/videos/{request_id}",
        headers=headers,
        timeout=30,
    )
    response.raise_for_status()
    payload = response.json()
    status = payload.get("status")

    if status in {"done", "completed"}:
        print(payload)
        break
    if status in {"failed", "expired"}:
        raise RuntimeError(payload)

    time.sleep(5)
else:
    raise TimeoutError("video generation timed out")

每 5 秒查询一次即可,不要高频轮询。视频生成通常需要数分钟,客户端应设置总超时。

下载视频 ​

完成后使用本站受保护的内容入口下载:

bash
curl --fail --location \
  https://freedomz.cn/v1/videos/video-task-id/content \
  -H "Authorization: Bearer $FREEDOMZ_API_KEY" \
  -o output.mp4

下载时必须继续携带同一把 API Key,任务必须属于当前用户和 Key。状态响应中的上游 临时 URL 可能很快过期,不要长期保存并反复访问。

六、视频编辑与延长 ​

视频编辑 ​

bash
curl --fail-with-body https://freedomz.cn/v1/videos/edits \
  -H "Authorization: Bearer $FREEDOMZ_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-imagine-video",
    "prompt": "给画面中的人物增加一顶黑色礼帽,其他内容保持不变",
    "video": {"url": "https://example.com/input.mp4"}
  }'

官方限制:输入必须是兼容编码的 .mp4,最长 8.7 秒;编辑请求不支持自定义 duration、aspect_ratio 或 resolution。输出继承输入视频的时长和比例,分辨率 最高为 720p。

视频延长 ​

bash
curl --fail-with-body https://freedomz.cn/v1/videos/extensions \
  -H "Authorization: Bearer $FREEDOMZ_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-imagine-video",
    "prompt": "镜头继续向右平移,城市灯光逐渐亮起",
    "duration": 6,
    "video": {"url": "https://example.com/input.mp4"}
  }'

官方限制:输入视频为 2 至 15 秒,延长部分为 2 至 10 秒,默认 6 秒;duration 只表示新增片段时长。延长请求不支持 aspect_ratio 或 resolution,输出跟随原视频, 分辨率最高为 720p。

编辑和延长也会返回 request_id,继续使用相同的状态查询与内容下载流程。

七、Node.js 基础配置 ​

js
import OpenAI from 'openai'

const client = new OpenAI({
  apiKey: process.env.FREEDOMZ_API_KEY,
  baseURL: 'https://freedomz.cn/v1',
  timeout: 3600_000
})

const response = await client.responses.create({
  model: 'grok-4.6',
  reasoning: { effort: 'medium' },
  input: '给出一个可靠的任务重试状态机。'
})

console.log(response.output_text)

图片和视频扩展参数在部分 OpenAI SDK 版本中没有类型定义,可以使用 extra_body、 直接 HTTP 请求或 SDK 提供的扩展参数入口。不要因为类型报错就把参数拼进 URL。

八、错误处理与重试 ​

状态常见含义是否自动重试
400字段、模型、比例或媒体格式不正确修改请求后再试
401Key 无效、过期或认证失败不重试,不轮换 Key
403分组未授权、内容策略拒绝或能力未开启不重试相同请求
404模型、任务或内容不存在先检查模型和任务归属
429本站、分组、账号或 xAI 上游限流指数退避后有限重试
5xx网关或上游临时异常指数退避后有限重试

xAI 上游按模型同时实施请求速率和 Token 速率限制,本站还可能叠加分组、并发和账号 池限制。收到 429 时采用指数退避并加入随机抖动;不要瞬间并发重放。

建议记录:

  • 北京时间和时区;
  • HTTP 状态码和错误类型;
  • 接口路径、模型和是否流式;
  • request_id 或响应头中的请求标识;
  • 客户端重试次数和每次等待时间。

不要记录完整 Key、账号密码、原始媒体文件或包含敏感信息的完整提示词。

九、生产接入建议 ​

  1. 文本普通请求设置合理的连接和读取超时;high、xhigh 推理可放宽到数十分钟。
  2. 图片和视频提交接口与任务轮询分开持久化,保存业务任务 ID 和 request_id。
  3. 对 429 和部分 5xx 最多做少量指数退避;400、401、403 不自动重放。
  4. 图片和视频 URL 均按临时资源处理,成功后及时下载到自己的受控存储。
  5. 同一业务任务设置幂等标识或去重记录,避免超时后重复生成和重复计费。
  6. 发布前用目标用户的真实 Key 执行 /v1/models、最小请求和错误分支测试。

十、调试清单 ​

  1. GET /v1/models 能否看到目标模型。
  2. Key 是否绑定 Grok 分组,图片和视频能力是否已开启。
  3. Base URL 是否为 https://freedomz.cn/v1,路径是否重复成 /v1/v1/...。
  4. 先发送只包含必填字段的最小请求,再逐项增加扩展参数。
  5. 图片编辑优先使用 JSON;视频任务按 done、failed、expired 判断终态。
  6. 记录请求标识并限制重试,尤其不要在 401、403 后自动切换多个 Key。

官方参考资料 ​

当前验证边界

截至 2026 年 8 月 17 日,文本、结构化输出、SSE、Web/X 搜索、代码执行、图片生成与 编辑、视频生成与处理、预设语音参考均已完成真实请求验证。/v1/files 当前为 404, grok-imagine-image-2.0 当前为 503;模型列表中的 grok-imagine-edit、命名空间别名 和未在“本站实测状态”中列出的其他新名称只代表可见,本轮没有逐一产生付费请求。 遇到差异时,请保留最小请求、错误响应和请求 ID 后联系支持。

请在遵守当地法律、上游服务规则及本站政策的前提下使用。