跳转到主要内容
某些模型在回答之前会大声思考。它们一步步推理问题,然后给出最终答案。这使得它们在数学、代码和逻辑密集型任务上表现更强。
完整的模型列表、定价和上下文限制请参阅模型页面。并非所有推理模型都支持 reasoning_effort 参数。详情请参阅模型支持

读取输出

推理模型在单独的 reasoning_content 字段中返回它们的思考,保持 content 干净:
response = client.chat.completions.create(
    model="zai-org-glm-5-1",
    messages=[{"role": "user", "content": "What is 15% of 240?"}]
)

thinking = response.choices[0].message.reasoning_content
answer = response.choices[0].message.content
某些提供商(Anthropic、Google、OpenAI、Qwen)返回加密或摘要的推理 token。发生时,reasoning_content 包含 "[Some reasoning content is encrypted]" 占位符。

流式

流式传输时,reasoning_content 在最终答案之前的 delta 中到达:
stream = client.chat.completions.create(
    model="zai-org-glm-5-1",
    messages=[{"role": "user", "content": "Explain photosynthesis"}],
    stream=True
)

for chunk in stream:
    if chunk.choices:
        delta = chunk.choices[0].delta
        if delta.reasoning_content:
            print(delta.reasoning_content, end="")
        if delta.content:
            print(delta.content, end="")

推理强度

reasoning_effort 参数控制模型在响应之前进行多少思考。更高的强度意味着更深入的推理,但需要更多 token 和更长延迟。

接受的值

说明
none完全禁用推理
minimal最低限度的基本推理
low用于简单问题的轻度推理
medium中等复杂度的平衡推理
high用于复杂问题的深入推理
xhigh超高推理深度
max最大推理能力
并非所有模型都支持所有值。Venice 会自动映射到最接近的支持级别。不支持的值会从上游提供商返回 400 错误。例如,向 Claude 发送 xhigh 或向 GPT-5.2 发送 max 都会失败。不确定时,请使用 lowmediumhigh。这些是最广泛支持的值。

模型支持

OpenAI

模型支持的值
GPT-5.2nonelowmediumhighxhigh
GPT-5.2 Codex、GPT-5.3 Codexlowmediumhighxhigh

Anthropic

模型支持的值
Claude Opus 4.6、Opus 4.6 Fastlowmediumhighmax
Claude Opus 4.5、Sonnet 4.5、Sonnet 4.6lowmediumhigh

Google

模型支持的值
Gemini 3 Pro Previewlowhigh
Gemini 3.1 Pro Previewlowmediumhigh
Gemini 3 Flash Previewminimallowmediumhigh

xAI

Grok 模型(Grok 4.1 Fast、Grok Code Fast)支持 reasoning_effort。指定它将导致错误。

其他模型

模型支持的值
Qwen 3 235B A22B Thinking、Qwen 3.5 35B A3Blowmediumhigh
Kimi K2.5lowmediumhigh
MiniMax M2.5、M2.1lowmediumhigh
GLM 5.1 系列仅内置推理,不可配置
DeepSeek R1仅内置推理,不可配置

使用方式

reasoning_effort 作为顶层参数传递,或使用嵌套的 reasoning.effort 格式:
response = client.chat.completions.create(
    model="minimax-m25",
    messages=[{"role": "user", "content": "Prove that there are infinitely many primes"}],
    extra_body={"reasoning": {"effort": "high"}}
)
也接受扁平格式 "reasoning_effort": "high"

禁用推理

有两种方法可以禁用推理:
方法语法工作方式
reasoning.enabled: false"reasoning": {"enabled": false}Venice 级别的开关,可防止推理参数被发送到提供商。推荐。
reasoning.effort: "none""reasoning": {"effort": "none"}传递给提供商,由其决定如何处理。仅部分模型支持(如 GPT-5.x)。
对于支持的模型,reasoning.enabled: false 是更可靠的选项:
模型可以禁用?
GPT-5.2
GPT-5.2 Codex、GPT-5.3 Codex是(但不支持 none effort)
Qwen 3 235B A22B Thinking、Qwen 3.5 35B A3B
GLM 5.1 系列
Claude Opus 4.5/4.6/4.6 Fast、Sonnet 4.5/4.6否(始终推理)
Gemini 3 Pro、3.1 Pro、3 Flash否(始终推理)
DeepSeek R1否(始终推理)
response = client.chat.completions.create(
    model="openai-gpt-52",
    messages=[{"role": "user", "content": "What's the capital of France?"}],
    extra_body={"reasoning": {"enabled": False}}
)

Token 限制

推理模型生成可见答案 token(在 content 中)和推理 token(在 reasoning_content 中)。两者都计入您的 token 预算。

设置 token 上限

使用 max_completion_tokens 限制模型生成的总 token 数(包括推理):
{
  "model": "deepseek-v4-flash",
  "messages": [...],
  "max_completion_tokens": 500
}
max_tokens 也被接受并行为相同。如果两者都设置,max_completion_tokens 优先。 要获得更多可见输出,请提高上限、降低 reasoning_effort,或禁用推理

读取细分

usage 对象显示您的预算如何分配:
"usage": {
  "completion_tokens": 501,
  "completion_tokens_details": { "reasoning_tokens": 169 },
  "prompt_tokens": 13,
  "total_tokens": 514
}
在此示例中,169 个 token 用于推理,332 个用于可见答案。达到上限时,finish_reasonlength 每个模型的上限可在 /v1/models 端点上以 maxCompletionTokens 字段获取。

非推理模型

在非推理模型上,max_tokensmax_completion_tokens 行为相同,直接限制可见输出。

能力发现

通过 /v1/models 端点检查模型支持什么:
字段含义
supportsReasoning模型具备推理能力(chain-of-thought)
supportsReasoningEffort模型接受 reasoning_effort / reasoning.effort 参数

最佳实践

  • 通用情况默认 medium
  • 复杂任务(数学、代码、分析)使用 highxhigh
  • 延迟敏感的应用使用 low
  • 使用 reasoning.enabled: false 或将 effort 设为 none 来禁用推理
  • 不确定时,使用 lowmediumhigh。这些是最广泛支持的值