豆包模型思考功能(thinking)使用文档
概念介绍
思考功能(thinking)是豆包模型的一个特性参数,用于控制模型在响应前是否显示思考过程。该功能适用于需要观察模型推理过程的场景,可提升模型响应的可解释性,帮助开发者或使用者理解模型的决策逻辑。
参数说明
thinking 参数是一个结构体,用于配置模型的思考过程,核心字段为 type,具体说明如下:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
thinking\.type |
String | 是 | 用于控制是否显示思考过程,可选值如下:- enabled:强制开启思考过程,模型会输出推理步骤;- disabled:强制关闭思考过程,模型直接输出最终响应;- auto:由模型自动决定是否显示思考过程。 |
JSON示例
在API请求中配置thinking参数的完整示例如下:
{
"model": "ByteDance/doubao-seed-1.6",
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "9.9和9.11哪个大"
}
]
}
],
"thinking": {
"type": "enabled"
}
}
模型支持情况
目前仅以下豆包模型支持思考功能,其他模型配置该参数无效:
| 支持模型 |
|---|
| ByteDance/doubao-seed-1.6 |
| ByteDance/doubao-1.5-thinking-vision-pro |
API 接口示例
以下为Python语言调用示例,包含完整的请求逻辑和异常处理:
import json
import requests
# 配置API密钥
api_key = "******" # 替换为你的 APIKEY
url = "https://api.modelverse.cn/v1/chat/completions"
headers = {
"Authorization": f"Bearer {api_key}",
"Content-Type": "application/json"
}
data = {
"model": "ByteDance/doubao-seed-1.6", # 指定支持的豆包模型
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "9.9和9.11哪个大", # 用户提问
}
],
}
],
"thinking": {"type": "enabled"}, # 开启思考功能,可选 enabled/disabled/auto
}
try:
response = requests.post(url, headers=headers, json=data)
response.raise_for_status() # 抛出请求异常(如401、404等)
print("请求成功!")
print(json.dumps(response.json(), indent=2, ensure_ascii=False))
except requests.exceptions.RequestException as e:
print(f"请求失败: {e}")
注意事项
-
思考功能会增加少量响应时间,因为模型需要额外输出推理过程,建议根据场景合理选择开启与否。
-
对于简单问题(如基础计算、简单问答),建议使用
disabled或auto模式,避免不必要的响应延迟。 -
对于复杂推理问题(如逻辑分析、多步骤计算),使用
enabled模式可获得更好的可解释性,便于排查推理偏差。 -
该参数仅适用于豆包系列模型,配置在其他模型(如OpenAI、Gemini)请求中无效。