|

Gemini 3.1 Pro 输出 Token 为什么这么大?3 步搞懂推理模型隐藏的 Thinking Tokens

作者注:详解 Gemini 3.1 Pro Preview 输出 Token 远超可见文字的原因:Thinking Tokens 推理链机制、计费规则、thinking_level 调参省钱技巧

「我就发了一句话,模型也只回了十几个字,为什么输出 Token 显示将近 900?钱花到哪里去了?」——这是很多开发者第一次使用 Gemini 3.1 Pro Preview 时的真实困惑。截图中的数据也清楚地展示了这个现象:输入 13 个 Token,输出却高达 898 个 Token。

答案就是 Thinking Tokens(推理 Token)。Gemini 3.1 Pro 是一个推理模型,它在给你回答之前,会先在「脑子里」进行一大段思考推理。这些推理内容默认不会展示给你,但会被计入输出 Token 并正常计费。

核心价值: 读完本文,你将彻底理解推理模型的 Thinking Tokens 机制,学会用 thinking_level 参数控制推理深度,在保证质量的前提下节省 50-80% 的输出 Token 开销。

gemini-3-1-pro-thinking-tokens-output-high-explained 图示


Gemini 3.1 Pro Thinking Tokens 核心要点

推理模型和普通对话模型的最大区别,就在于输出 Token 的构成完全不同。以下是你需要理解的核心概念:

要点 说明 实际影响
输出 Token = 思考 + 回答 Gemini 3.1 Pro 的输出 Token 包含 Thinking Tokens(推理链)和实际回答两部分 看到的文字很少,但总 Token 很高
Thinking Tokens 正常计费 推理过程虽然不可见,但按输出 Token 价格计费($12/百万 Token) 一个简单问题可能花费是普通模型的 5-10 倍
thinking_level 可调 支持 LOW/MEDIUM/HIGH 三档推理深度控制 LOW 档可节省 80%+ 输出 Token
非推理模型无此问题 GPT-4o、Claude Sonnet 4.6(关闭 Extended Thinking)等模型所见即所得 简单任务用非推理模型更划算

Gemini 3.1 Pro Thinking Tokens 的真实消耗案例

回到截图中的例子。用户发了一个简单问题,模型回复了大约十几个字,但输出 Token 显示 891-898 个。这些 Token 的构成大致如下:

  • 可见回答: 约 30-50 个 Token(你看到的那十几个字)
  • Thinking Tokens: 约 840-860 个 Token(模型内部的推理过程)

也就是说,超过 95% 的输出 Token 你是看不到的,它们消耗在了模型的推理链中。这就好比你问一个数学老师「1+1 等于几」,老师嘴上只说了「等于 2」,但脑子里其实想了:「这是一个基础算术问题,需要用到加法运算……」——然后你为老师的整个思考过程付了费。

这个机制不是 Bug,而是推理模型的设计特性。Gemini 3.1 Pro 之所以在复杂问题上表现更好(MATH 基准 95.1%、ARC-AGI-2 达 77.1%),正是因为它在回答前进行了深度推理。

gemini-3-1-pro-thinking-tokens-output-high-explained 图示


Gemini 3.1 Pro 推理模型 Thinking Tokens 的运作机制

推理模型和普通模型的本质区别

普通模型(如 GPT-4o)收到你的问题后,直接生成回答。你看到多少字,就消耗多少输出 Token。这就是「所见即所得」。

推理模型(如 Gemini 3.1 Pro Preview)收到问题后,会先生成一段内部推理链(Chain of Thought),然后基于推理结果生成最终回答。你看到的只是最终回答,但计费的是「推理链 + 回答」的总 Token 数。

模型类型 代表模型 输出 Token 构成 简单问题开销 复杂问题优势
普通模型 GPT-4o、Claude Sonnet 4.6 100% 可见回答 低(所见即所得) 推理能力一般
推理模型 Gemini 3.1 Pro、GPT-5.4 Thinking 推理链 + 可见回答 高(5-10 倍以上) 复杂推理能力强
可切换模型 Claude Sonnet 4.6(Extended Thinking) 可选是否开启推理 灵活切换 按需开启推理

Gemini 3.1 Pro Thinking Tokens 的 3 个关键细节

细节一:Thinking Tokens 的计费方式。 根据 Google 官方文档,Thinking Tokens 按照输出 Token 的标准价格计费。Gemini 3.1 Pro 的输出 Token 价格为 $12/百万 Token。当模型花 4000 个 Token 推理、500 个 Token 回答时,你需要为 4500 个输出 Token 付费——而不是 500 个。

细节二:API 返回中如何区分。 在 Gemini API 的响应中,usage_metadata 字段会分别返回 thoughts_token_count(推理 Token 数)和 candidates_token_count(总输出 Token 数)。但需要注意:Gemini API 的 candidatesTokenCount 已包含 Thinking Tokens,而 Vertex AI 的 candidatesTokenCount 则不包含。

细节三:推理链内容默认不可见。 你可以通过设置 includeThoughts: true 来获取推理过程的摘要(不是完整推理链),也可以在 Cherry Studio 等工具中开启推理链展示功能查看模型的思考过程。

🎯 省钱建议: 如果你只是简单对话或翻译任务,不需要深度推理,建议切换到普通模型(如 GPT-4o-mini 或 Claude Sonnet 4.6)。API易 apiyi.com 支持通过修改一个 model 参数即可切换模型,无需改动其他代码。


Gemini 3.1 Pro Thinking Tokens 优化:3 种省钱策略

策略一:使用 thinking_level 参数控制推理深度

Gemini 3.1 Pro 提供了 thinking_level 参数,支持 LOW、MEDIUM、HIGH 三档。不同档位的 Token 消耗差异巨大:

thinking_level 推理深度 Token 消耗 适用场景 与 HIGH 对比
LOW 浅层推理 最低 翻译、分类、简单问答 节省约 80%+
MEDIUM 平衡推理 中等 日常编程、文档生成、一般分析 节省约 50%
HIGH 深度推理 最高 数学推导、科学问题、复杂逻辑 基准线

以下是设置 thinking_level 的代码示例:

import openai

client = openai.OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://vip.apiyi.com/v1"
)

# 简单任务用 LOW,大幅减少 Thinking Tokens
response = client.chat.completions.create(
    model="gemini-3.1-pro-preview",
    messages=[{"role": "user", "content": "把这句话翻译成英文:今天天气真好"}],
    extra_body={"thinking_level": "LOW"}  # LOW / MEDIUM / HIGH
)
print(response.choices[0].message.content)
print(f"总输出 Token: {response.usage.completion_tokens}")

查看完整的智能路由代码(根据问题复杂度自动选择推理深度)
import openai
import json

def smart_gemini_call(
    prompt: str,
    complexity: str = "auto",
    api_key: str = "YOUR_API_KEY"
) -> dict:
    """
    智能调用 Gemini 3.1 Pro,根据任务复杂度自动选择推理深度

    Args:
        prompt: 用户输入
        complexity: "low" / "medium" / "high" / "auto"
        api_key: API密钥
    Returns:
        包含回答和 Token 使用统计的字典
    """
    client = openai.OpenAI(
        api_key=api_key,
        base_url="https://vip.apiyi.com/v1"
    )

    # 自动判断复杂度
    if complexity == "auto":
        simple_keywords = ["翻译", "translate", "分类", "classify", "总结", "summarize"]
        complex_keywords = ["推导", "证明", "计算", "分析", "比较", "为什么"]
        prompt_lower = prompt.lower()

        if any(kw in prompt_lower for kw in simple_keywords):
            thinking_level = "LOW"
        elif any(kw in prompt_lower for kw in complex_keywords):
            thinking_level = "HIGH"
        else:
            thinking_level = "MEDIUM"
    else:
        thinking_level = complexity.upper()

    response = client.chat.completions.create(
        model="gemini-3.1-pro-preview",
        messages=[{"role": "user", "content": prompt}],
        extra_body={"thinking_level": thinking_level}
    )

    return {
        "answer": response.choices[0].message.content,
        "thinking_level": thinking_level,
        "input_tokens": response.usage.prompt_tokens,
        "output_tokens": response.usage.completion_tokens,
        "total_tokens": response.usage.total_tokens
    }

# 使用示例
# 简单任务 → 自动选择 LOW
result = smart_gemini_call("翻译:今天天气真好")
print(f"推理深度: {result['thinking_level']}, 输出Token: {result['output_tokens']}")

# 复杂任务 → 自动选择 HIGH
result = smart_gemini_call("证明勾股定理的至少两种方法")
print(f"推理深度: {result['thinking_level']}, 输出Token: {result['output_tokens']}")

建议: 通过 API易 apiyi.com 调用 Gemini 3.1 Pro 时支持传递 thinking_level 参数。建议日常使用设为 MEDIUM,仅在数学/科学等复杂推理场景使用 HIGH。

策略二:简单任务直接用非推理模型

并不是所有场景都需要推理模型。对于翻译、格式转换、简单问答等任务,使用非推理模型可以节省 5-10 倍的 Token 开销:

  • GPT-4o-mini: 性价比极高,日常对话首选
  • Claude Sonnet 4.6(关闭 Extended Thinking): 输出质量高,Token 所见即所得
  • Gemini 3.1 Flash: Google 的轻量级模型,速度快、成本低

策略三:设置 max_tokens 限制输出上限

给 API 调用加上 max_tokens 参数可以防止推理模型「过度思考」。但需要注意:max_tokens 限制的是总输出(推理 + 回答),如果设置过低可能导致回答被截断。建议根据预期回答长度设置为 2-3 倍。

🎯 综合建议: 在 API易 apiyi.com 平台上,你可以用统一接口同时接入推理模型和非推理模型,根据任务类型动态切换。一个 API Key 即可调用 Gemini、Claude、GPT 全系列模型。

gemini-3-1-pro-thinking-tokens-output-high-explained 图示


常见问题

Q1: Gemini 3.1 Pro Thinking Tokens 为什么默认不展示推理过程?

这是 Google 的产品设计选择。完整的推理链可能包含数千个 Token 的中间推导,直接展示会严重影响用户体验。你可以通过设置 includeThoughts: true 获取推理摘要,或在 Cherry Studio 等客户端中开启推理链展示功能查看思考过程。

Q2: 怎么在 API 响应中看到 Thinking Tokens 具体消耗了多少?

在 Gemini API 返回的 usage_metadata 中查看 thoughts_token_count 字段。如果你通过 API易 apiyi.com 调用,可以在平台的用量统计页面查看每次调用的详细 Token 分解(输入/输出/推理),方便监控和优化成本。

Q3: 除了 Gemini 3.1 Pro,还有哪些模型有类似的 Thinking Tokens 机制?

主流推理模型都有类似机制:

  • GPT-5.4 Thinking: OpenAI 的推理模型,推理 Token 同样计入输出 Token 计费
  • Claude Sonnet 4.6 Extended Thinking: Anthropic 的推理模式,可以选择性开启
  • DeepSeek-R1: 开源推理模型,推理链完全可见

关键区别在于:有些模型(如 Claude)可以灵活开关推理模式,有些模型(如 Gemini 3.1 Pro)默认开启推理。通过 API易 apiyi.com 可以用统一接口测试对比这些模型的实际 Token 消耗。


总结

Gemini 3.1 Pro Thinking Tokens 的核心要点:

  1. 输出 Token 包含隐藏的推理链: 你看到的只是回答部分,95% 以上的输出 Token 消耗在不可见的 Thinking Tokens 中
  2. Thinking Tokens 正常计费: 按输出 Token 标准价格收费,简单问题的成本可能是非推理模型的 5-10 倍
  3. 用 thinking_level 参数省钱: LOW 档可节省 80%+ Token,MEDIUM 适合日常使用,仅复杂任务用 HIGH
  4. 简单任务选非推理模型: 翻译、分类、简单问答等场景直接用 GPT-4o-mini 或 Claude Sonnet 4.6 更划算

理解了 Thinking Tokens 机制,你就能合理分配推理预算。推荐通过 API易 apiyi.com 统一接口管理多模型调用,根据任务复杂度动态选择推理模型或非推理模型,实现最优的质量/成本平衡。


📚 参考资料

  1. Google Cloud 文档 – Thinking 推理模式: Gemini 推理模型的官方技术文档

    • 链接: docs.cloud.google.com/vertex-ai/generative-ai/docs/thinking
    • 说明: Thinking Tokens 计费规则和 thinking_level 参数配置的权威来源
  2. Google AI 开发者文档 – Token 计数: 官方 Token 计数和 usage_metadata 字段说明

    • 链接: ai.google.dev/gemini-api/docs/tokens
    • 说明: 如何在 API 响应中区分 thoughts_token_count 和 candidates_token_count
  3. Google DeepMind – Gemini 3.1 Pro 模型卡片: 模型能力和推理基准测试详情

    • 链接: deepmind.google/models/model-cards/gemini-3-1-pro/
    • 说明: MATH 95.1%、ARC-AGI-2 77.1% 等性能数据的官方来源
  4. OpenRouter – 推理 Token 最佳实践: 推理模型 Token 管理的社区最佳实践

    • 链接: openrouter.ai/docs/guides/best-practices/reasoning-tokens
    • 说明: 跨模型的推理 Token 计费规则对比和优化建议

作者: APIYI 技术团队
技术交流: 欢迎在评论区讨论推理模型的 Token 优化经验,更多模型调用教程可访问 API易 docs.apiyi.com 文档中心

类似文章