UniterRouter
Features

推理

AI 推理模型 API - 通过 UniterRouter 使用 OpenAI o1、o3、DeepSeek R1。思维链推理解决复杂数学、编程和分析问题。

推理

UniterRouter 支持能够在提供最终答案之前展示逐步思考过程的推理模型。此功能对于复杂的问题解决任务、数学计算和逻辑推理特别有用。

支持推理的模型

你可以在我们的带推理筛选的模型页面找到所有支持推理的模型。这些模型包括:

  • OpenAI 的 GPT-5 系列(例如 gpt-5、gpt-5-mini)
    • 注意:GPT-5 模型使用推理,但目前不会在响应中返回推理内容。
  • Anthropic 的 Claude 3.7 Sonnet
  • Google 的 Gemini 2.0 Flash Thinking 和 Gemini 2.5 Pro
  • GPT OSS 模型,如 gpt-oss-120b 和 gpt-oss-20b
  • Z.AI 的推理模型

某些模型可能在内部进行推理,即使未指定 reasoning_effort 参数。

使用推理参数

要启用推理输出,请在请求中添加 reasoning_effort 参数。此参数接受以下值:

  • minimal - 最快的推理,思考过程最少(仅适用于 GPT-5 模型)
  • low - 轻度推理,适用于简单任务
  • medium - 平衡的推理,适用于大多数任务
  • high - 深度推理,适用于复杂问题

示例请求

curl -X POST "https://api.uniterouter.ai/v1/chat/completions" \
  -H "Authorization: Bearer $UNITEROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-5-preview",
    "messages": [
      {
        "role": "user",
        "content": "2/3 + 1/4 + 5/6 等于多少?"
      }
    ],
    "reasoning_effort": "medium"
  }'

示例响应

响应将在消息对象中包含一个 reasoning 字段,包含模型的逐步思考过程:

{
	"id": "chatcmpl-abc123",
	"object": "chat.completion",
	"created": 1234567890,
	"model": "gpt-5-preview",
	"choices": [
		{
			"index": 0,
			"message": {
				"role": "assistant",
				"content": "答案是 1.75 或 7/4。",
				"reasoning": "首先,我需要找到 2/3、1/4 和 5/6 的公分母。最小公倍数是 12。转换:2/3 = 8/12,1/4 = 3/12,5/6 = 10/12。相加:8/12 + 3/12 + 10/12 = 21/12 = 1.75 或 7/4。"
			},
			"finish_reason": "completed"
		}
	],
	"usage": {
		"prompt_tokens": 20,
		"completion_tokens": 45,
		"reasoning_tokens": 35,
		"total_tokens": 65
	}
}

流式推理内容

启用流式传输时,推理内容将作为响应块的一部分进行流式传输:

curl -X POST "https://api.uniterouter.ai/v1/chat/completions" \
  -H "Authorization: Bearer $UNITEROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-5-preview",
    "messages": [
      {
        "role": "user",
        "content": "解决这个逻辑谜题:如果所有玫瑰都是花,有些花很快凋谢,我们能得出有些玫瑰很快凋谢的结论吗?"
      }
    ],
    "reasoning_effort": "high",
    "stream": true
  }'

推理内容将在最终答案之前出现在流块中,让你能够实时显示模型的思考过程。

示例:

data: {
	"id": "chatcmpl-fb266880-1016-4797-9a70-f21a538edaf6",
	"object": "chat.completion.chunk",
	"created": 1761048126,
	"model": "openai/gpt-oss-20b",
	"choices": [
		{
			"index": 0,
			"delta": {
				"reasoning": "这是 ",
				"role": "assistant"
			},
			"finish_reason": null
		}
	]
}

使用量跟踪

响应负载

响应中的 usage 对象包含推理特定的 token 计数:

  • reasoning_tokens - 用于推理过程的 token 数量
  • completion_tokens - 最终答案中的 token 数量
  • prompt_tokens - 输入中的 token 数量
  • total_tokens - 所有 token 计数的总和

日志和分析

所有使用 reasoning_effort 参数的请求都会在控制台日志中跟踪,包括:

  • 包含完整推理文本的 reasoningContent 字段
  • 推理与完成的单独 token 计数
  • 启用推理的请求的性能指标

你可以在控制台中查看每个请求的详细日志,分析模型如何推理解决问题。

自动路由与推理

使用自动路由(指定像 gpt-5 这样的模型而不指定特定版本)时,UniterRouter 将:

  1. 自动为 GPT-5 模型设置 reasoning_effort 为 minimal
  2. 为其他自动路由的推理模型设置 reasoning_effort 为 low
  3. 当指定 reasoning_effort 时,仅路由到支持推理的提供商

这确保了使用自动路由和推理模型时的最佳性能和成本。

模型特定行为

并非所有推理模型以相同方式返回推理内容。某些模型(如 OpenAI 模型)可能在内部推理但不在响应中暴露推理内容。UniterRouter 确保不同提供商之间的响应统一,但推理的深度和格式可能有所不同。

最佳实践

  1. 选择适当的推理强度:对简单任务使用 low 或 minimal,对大多数任务使用 medium,仅对需要深度推理的复杂问题使用 high
  2. 监控 token 使用量:推理可以显著增加 token 消耗——监控使用对象中的 reasoning_tokens
  3. 流式传输以获得更好的用户体验:构建面向用户的应用时,启用流式传输以实时显示推理过程
  4. 检查日志:查看控制台日志中的 reasoningContent 以了解模型如何解决问题

错误处理

如果你为不支持推理的模型指定 reasoning_effort,将收到错误:

{
	"error": {
		"message": "模型 gpt-4o 不支持推理。请移除 reasoning_effort 参数或使用支持推理的模型。",
		"type": "invalid_request_error",
		"code": "model_not_supported"
	}
}

为避免此错误,仅对支持推理的模型使用 reasoning_effort 参数。

How is this guide?