搜索

搜索 HiAPI 模型、工具和资源。

返回博客
教程7 分钟阅读

Grok 4.7 API 怎么用?5 分钟跑通第一次调用

xAI 面向编码和 agentic 任务的文本模型:OpenAI Chat Completions 协议、四档推理、JSON 输出与工具调用,HiAPI 价 $0.84/$2.52,附可直接运行的 curl 和 Python 示例

HiAPIGrok 4.7API 接入文本模型

TL;DR

  • Grok 4.7 是 xAI 面向编码和 agentic 任务的文本模型,已在 HiAPI 上线,打开模型页可以直接开聊,新用户注册送 200 积分。
  • 平台价 $0.84 输入 / $2.52 输出(每 1M tokens,缓存读 $0.21),约为官方价的 4.2 折。一次 2K 输入 + 1K 输出的请求约 $0.0042;按 3K 总 token 的中等请求(约 $0.0084/次)算,$10 能跑约 1200 次。
  • 最快调用:POST https://api.hiapi.ai/v1/chat/completions,model 写 grok-4.7,现有 OpenAI SDK 代码只改 base_url 和 model 两个值。

Grok 4.7 是什么,新在哪

2026-09-21 发布的 Grok 4.7 是 xAI 当前的默认推荐模型,主打编码、agentic 任务和知识工作。官方自报的 Terminal-Bench 4.0 成绩从 4.6 的 20.3% 提到 38.0%,接近翻倍(自报口径)。对调用方来说,值得关心的变化有四个:

  • 编码和 agentic 是主打场景:官方同步把它接进了 Cursor、GitHub Copilot 这类编码工具,长时程任务规划能力是这个版本的重点。
  • 四档推理:reasoning_effort 支持 low / medium / high / xhigh,默认 high;思考过程走 reasoning_content 字段单独回传,方便你决定是否展示。
  • JSON 对象 + 工具调用:response_format: {"type": "json_object"} 强制合法 JSON 输出,函数调用走标准 OpenAI tools 格式,做结构化抽取和 agent 循环不用额外包装。
  • 500K 上下文:一次请求能塞下整套代码库或大段文档。

真实成品:一段 pandas 数据分析代码

下面这段输出是我们在 HiAPI 上用 Grok 4.7 实跑拿到的(完整提示词见下方链接)。任务是分析一份电商订单数据:月度 GMV、用户累计消费 Top 20、新用户首单趋势,且 created_at 是字符串。模型 18.5 秒完成,代码完整可运行,主动处理了字符串日期转换:

# ---------- 0. 日期处理:字符串转 datetime ----------
df["created_at"] = pd.to_datetime(df["created_at"], errors="coerce")
df = df.dropna(subset=["created_at", "amount", "user_id"])

# 只统计有效订单(按实际业务调整 status 取值)
df_valid = df[df["status"] == "paid"].copy()

# ---------- 1. 每个月的 GMV 和订单数 ----------
df_valid["month"] = df_valid["created_at"].dt.to_period("M")
monthly = (
    df_valid.groupby("month", as_index=False)
    .agg(GMV=("amount", "sum"), order_count=("order_id", "count"))
    .sort_values("month")
)

这次实跑输入 3440 tokens、输出 1427 tokens,按平台价约 $0.007。想要同样的效果,直接点 用这个提示词在模型页跑一遍 →

两条上手路线

路线一:浏览器,3 步,零代码

  1. 打开 Grok 4.7 模型页,登录或注册(新用户送 200 积分)。
  2. 在对话框粘贴你的提示词,比如点 这个链接,提示词已自动填好。
  3. 直接发送,额度按实际 token 用量扣。

路线二:API,3 步,接入你的应用

  1. 在 HiAPI 控制台创建一把 API Key。
  2. 把下面 curl 里的 YOUR_HIAPI_API_KEY 换成你的 Key,跑通。
  3. 把 model 固定为 grok-4.7,messages 换成你的业务输入,收工。

curl:第一次调用

curl https://api.hiapi.ai/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_HIAPI_API_KEY" \
  -d '{
    "model": "grok-4.7",
    "messages": [
      {"role": "system", "content": "You are a senior backend engineer."},
      {"role": "user", "content": "Explain what a database connection pool is in two sentences."}
    ],
    "reasoning_effort": "high",
    "max_tokens": 2000
  }'

返回里 choices[0].message.content 是正文,reasoning_content 是思考过程;usage.completion_tokens_details.reasoning_tokens 单独告诉你这次推理烧了多少 token。要流式就把 "stream": true 加进去,按 SSE 解析。

Python:非流式 + 流式

非流式,用 requests 就够:

import requests

resp = requests.post(
    "https://api.hiapi.ai/v1/chat/completions",
    headers={"Authorization": "Bearer YOUR_HIAPI_API_KEY"},
    json={
        "model": "grok-4.7",
        "messages": [
            {"role": "user", "content": "Write a Python function that merges two sorted lists into one sorted list."}
        ],
        "reasoning_effort": "medium",
        "max_tokens": 4000,
    },
    timeout=120,
)
resp.raise_for_status()
data = resp.json()
print(data["choices"][0]["message"]["content"])

流式注意两点:先来的 delta.reasoning_content 是思考过程,后面 delta.content 才是正文;usage 只在最后一个 chunk 里(choices 为空),以 data: [DONE] 结束:

import json
import requests

with requests.post(
    "https://api.hiapi.ai/v1/chat/completions",
    headers={"Authorization": "Bearer YOUR_HIAPI_API_KEY"},
    json={
        "model": "grok-4.7",
        "messages": [{"role": "user", "content": "Plan a Redis-based online presence system."}],
        "reasoning_effort": "high",
        "stream": True,
    },
    stream=True,
    timeout=300,
) as resp:
    resp.raise_for_status()
    for line in resp.iter_lines(decode_unicode=True):
        if not line or not line.startswith("data:"):
            continue
        payload = line[len("data:"):].strip()
        if payload == "[DONE]":
            break
        chunk = json.loads(payload)
        if not chunk["choices"]:
            print("\nusage:", chunk["usage"])  # 最后一个 chunk 才有 usage
            continue
        delta = chunk["choices"][0]["delta"]
        if delta.get("reasoning_content"):
            print(delta["reasoning_content"], end="", flush=True)
        elif delta.get("content"):
            print(delta["content"], end="", flush=True)

参数表

字段必填取值说明
model是grok-4.7固定写这个 ID
messages是OpenAI 格式消息数组system / user / assistant / tool 角色都支持
reasoning_effort否low / medium / high / xhigh,默认 high推理强度;思考过程在 reasoning_content 回传
max_tokens否正整数输出上限,包含 reasoning tokens,设小了会先截断思考
response_format否{"type": "json_object"}强制输出合法 JSON,适合结构化抽取
tools否OpenAI function calling 数组工具调用,支持多轮 tool 结果回传
stream否true / false,默认 falseSSE 流式;usage 在最后一个 chunk

你会遇到的报错

从其他模型迁代码时最容易踩的坑:grok-4.7 不支持 frequency_penalty、presence_penalty、stop 三个参数,带了会直接 400。reasoning_effort 只认 low / medium / high / xhigh 四档,写错值接口会原样返回 reasoning_effort: is outside allowed values;协议之外的字段也传不进去,我们探测时加了一个未注册字段,接口返回 request.zz: unregistered public parameter。

处理办法很简单:删掉这三个参数、把档位写对,重发。其他 4xx 先看 error.code 再动代码,别猜。

上线前注意

  • reasoning tokens 按输出计费。high 档一次回答可能包含上万 token 的思考过程,它们按 $2.52/M 计入账单。简单任务把 reasoning_effort 降到 low 或 medium,是最直接的省钱开关;usage.completion_tokens_details.reasoning_tokens 可以单独核对这个数。
  • 200K 整请求跳档。prompt 达到 200K tokens(合同阈值 199,999)后,整笔请求按长文价计:输入 $1.68 / 输出 $5.04 / 缓存读 $0.42,是常规档的两倍。常规流量保持在 200K 以下,别把整库代码无脑塞进去。
  • 缓存读只要正价的四分之一。重复的长 system prompt 和多轮会话前缀会自动命中缓存,缓存读 $0.21/M(正价 $0.84/M 的四分之一)。做 agent 循环时保持前缀稳定,账单会明显好看。

常见问题

Grok 4.7 和 Grok 4.6 怎么选? 平台价完全一样($0.84/$2.52)。复杂编码和 agentic 任务选 4.7(官方默认推荐),简单任务想省 token 可以留 4.6。详细对照见 Grok 4.7 vs Grok 4.6。

支持流式输出吗? 支持,标准 SSE。注意 usage 只在最后一个 chunk 里返回,前面 chunk 的 usage 都是空的。

reasoning_content 要额外付费吗? 不用单独开开关,但它产生的 reasoning tokens 计入输出用量、按输出价计费,所以档位越高账单越厚。

上下文 500K 是输入上限吗? 500K 是输入加输出合计的窗口。输入接近 200K 时会触发长文价,详见上面「上线前注意」。


想继续深入:价格算账看 Grok 4.7 API 多少钱,5 个可直接复制的场景提示词看 Grok 4.7 提示词大全,上一代的用法见 Grok 4.6 模型页。复制上面的 pandas 提示词,去 模型页 跑你的第一次调用。

现在就用 HiAPI 生成

选一个模型,输入你的提示词,直接查看生成结果。

HiAPI Blog

相关文章

HiAPI

现在就用 HiAPI 生成

开始生成