Grok API 的接入本身不复杂,真正让人卡住的是三件事:Key 从哪里来、Base URL 怎么写、Key 和地址是否配对。最常见的 401 不是 Key 失效,而是把一家平台的 Key 填到了另一家平台的地址上。

本文按“获取路径、创建 Key、配置地址、最小调用、安全与排错”的顺序走一遍。模型名称与可用性以站内模型价格为准,控制台菜单名称可能调整,以实际页面为准。

说明:xAI、Grok 是其权利人的商标,本文仅作技术介绍。接口、模型与价格可能调整,请以 xAI 官方文档和站内模型价格为准。

一、先确认你要哪种 Key

Grok API Key 有两个常见来源:xAI 官方控制台,以及提供 OpenAI 兼容入口的国内 AI 网关。两者都能调用 Grok,但账号、付款和账单主体不同。

对比项 xAI 官方控制台 中商起航 AI 网关
适合人群 有海外支付方式、能稳定访问 国内支付、需要人民币发票
账号体系 xAI 账号 网关账号
付款方式 按官方支持的支付方式 人民币充值
Base URL https://api.x.ai/v1 https://ai.zhongshangqihang.com/v1
账单 美元账单,自行处理汇率 人民币账单,统一多模型用量
模型范围 xAI 自家模型 网关已开通的多个模型

两条路径的 Key 不通用。官方 Key 只能配官方地址,网关 Key 只能配网关地址。先选路径,再创建 Key,不要中途混用。

二、官方 xAI:获取 Key 的步骤

  1. 准备可用的 xAI 账号,并确认账号状态、服务条款和所在地区的使用要求。
  2. 登录 xAI 控制台,找到 API Key 管理入口。菜单名称可能随版本调整,以页面实际显示为准。
  3. 按控制台要求完成账单设置或预付费充值。没有可用额度时,Key 即使创建成功也无法正常调用。
  4. 新建 Key,名称带上项目和环境,例如 prod-customer-service,方便后续轮换和审计。
  5. 创建后立即复制保存。多数平台只在创建时完整显示一次,关闭页面后无法再次查看。
  6. 如果控制台提供额度、权限或 IP 限制选项,按最小权限原则设置,不要默认放开全部权限。
  7. 用一条最小请求验证,确认 Key、地址和模型名三项都能通过。

官方路径适合只需要 Grok、且有稳定海外支付与访问条件的团队。若付款或网络不稳定,问题会从“模型好不好用”变成“今天能不能调通”,运维成本容易被低估。

三、网关:获取 Key 的步骤

  1. 打开中商起航 AI 网关注册账号,完成必要的身份或企业信息填写。
  2. 先小额充值,验证支付、到账和调用链路,再按实际用量补足余额。
  3. 在控制台创建 API Key,按项目命名,并设置消费上限或告警。
  4. 记录网关的 Base URL:https://ai.zhongshangqihang.com/v1。
  5. 用下面的 curl 命令发一条最小请求,确认返回 200 且有内容。
  6. 跑通后再接入业务代码,并把 Key 放进服务端环境变量。

网关路径的价值不只是“能访问”,还包括人民币付款、统一账单、多模型切换和一把 Key 管理多个模型。是否适合,取决于你的付款方式、发票要求和运维边界。

四、Base URL 和端点怎么写

Base URL 是最容易写错的地方。它通常只写到 /v1,SDK 会自动拼接后续路径;如果你手动写完整地址,要注意不要重复拼接。

项目 官方 xAI 中商起航 AI 网关
Base URL https://api.x.ai/v1 https://ai.zhongshangqihang.com/v1
Chat 端点 /chat/completions /chat/completions
鉴权头 Authorization: Bearer <Key> Authorization: Bearer <Key>
模型名 以官方模型列表为准 以站内模型价格为准

常见错误是写成 https://api.x.ai/v1/v1/chat/completions,或者在 Base URL 末尾多写一个斜杠后再拼路径。还有一类错误是把 Anthropic 风格的 x-api-key 头用在 Grok 上。Grok 的 OpenAI 兼容入口使用 Bearer 鉴权。

五、最小调用验证

先用 curl 排除代码层问题。下面这条命令只发一条短消息,返回 200 且有 choices 字段,说明 Key、Base URL 和模型名都匹配:

export GROK_API_KEY="sk-你的密钥"

curl "https://ai.zhongshangqihang.com/v1/chat/completions" \
  -H "Authorization: Bearer $GROK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-4",
    "messages": [{"role": "user", "content": "只回复 OK"}],
    "max_tokens": 16
  }'

Python 项目可以直接复用 OpenAI SDK,只改 Key 和 Base URL:

import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["GROK_API_KEY"],
    base_url="https://ai.zhongshangqihang.com/v1",
)

resp = client.chat.completions.create(
    model="grok-4",
    messages=[{"role": "user", "content": "用三句话解释什么是 API 网关。"}],
    max_tokens=256,
)
print(resp.choices[0].message.content)

模型名不要凭记忆写。不同账号、不同网关开通的模型可能不同,以模型价格或控制台的模型列表为准。写错模型名通常返回 404 或 model not found,不是 Key 的问题。

六、Key 的安全配置

  1. Key 只放在服务端环境变量或密钥管理服务里,不写进代码仓库。
  2. 不要把 Key 打进前端包、浏览器请求或移动端安装包,前端只调用你自己的后端。
  3. 一个项目一把 Key,测试和生产分开,便于限额、轮换和追查用量。
  4. 日志只记录 Key 的前几位或哈希,不记录完整值。
  5. 人员离职、项目结束或 Key 疑似泄露时,立即吊销并重新创建。
  6. 定期检查用量曲线,发现异常调用先停 Key 再排查,不要先改业务代码。

Key 泄露的典型后果不是“别人帮你花钱”这么简单,而是数据、配额和账单同时失控。把 Key 当成数据库密码对待,很多问题可以提前避免。

七、常见配置错误

现象 常见原因 处理
401 Key 与 Base URL 不配对;Key 有空格或换行 确认来源一致,重新复制 Key
404 路径重复拼接;端点写错 Base URL 只写到 /v1,端点用 /chat/completions
model not found 模型名拼错或账号未开通 从价格页或控制台复制模型名
429 请求频率、并发或 Token 超限 降并发,按退避策略重试
insufficient quota 余额不足或 Key 达到限额 充值并检查 Key 的额度设置
超时 网络链路、代理或长输出 检查出口,设置合理的连接与读取超时

排查时先保留响应里的请求 ID 和状态码,再改请求。没有状态码和请求 ID,只能靠猜。

常见问题

Key 和 Base URL 必须来自同一家吗?

是。官方 Key 配官方地址,网关 Key 配网关地址。混用通常表现为 401,部分情况下会表现为 404 或权限错误。

可以把 Key 放在浏览器里吗?

不建议。浏览器代码对用户可见,Key 很容易被提取。正确做法是前端调用自己的后端,由后端持有 Key 并转发请求。

一个 Key 能调用多个模型吗?

在网关模式下通常可以,请求里指定模型名即可,前提是账号已开通对应模型。官方账号的可用模型以官方控制台为准。

Key 泄露了怎么办?

立即在控制台吊销或禁用该 Key,创建新 Key 替换,并检查近期用量和账单。不要只改代码里的字符串而保留旧 Key 有效。

为什么刚复制的 Key 一直 401?

先检查是否复制了多余空格、换行或引号,再确认 Base URL 是否匹配。若仍失败,用 curl 直接测试,排除 SDK 配置和代理环境的干扰。

下一步

如果需要一个入口同时调用 Grok 和其他模型,可以先在中商起航 AI 网关创建测试 Key,用最小请求跑通后再接入业务。模型可用性与价格以模型价格为准。

相关阅读: