什么是思考模式

DeepSeek V4 系列(Flash 和 Pro)均支持思考模式(Thinking Mode),这是 DeepSeek 在推理能力上的重大突破。启用思考模式后,模型会在生成最终答案之前进行内部推理链分析,类似于 OpenAI o1/o3 的 Chain-of-Thought 机制,但 DeepSeek 将其作为可选功能——一个模型同时支持非思考和思考两种模式,通过参数灵活切换。

启用思考模式

通过 thinking 参数控制:

from openai import OpenAI
import os

client = OpenAI(
    api_key=os.environ.get('DEEPSEEK_API_KEY'),
    base_url='https://api.deepseek.com'
)

response = client.chat.completions.create(
    model='deepseek-v4-pro',
    messages=[
        {'role': 'system', 'content': 'You are a helpful assistant'},
        {'role': 'user', 'content': '请证明根号2是无理数'}
    ],
    extra_body={'thinking': {'type': 'enabled'}},
    reasoning_effort='high'
)

print('思考过程:', response.choices[0].message.reasoning_content)
print('最终答案:', response.choices[0].message.content)

reasoning_effort 三档详解

档位效果Token消耗适用场景
low快速推理,轻量思考最少简单数学题、常识判断
medium默认档位,平衡速度与深度适中中等复杂度推理、代码调试
high深度推理,最完整思考链最多数学证明、复杂逻辑、竞赛题

思考链提取与展示

思考内容位于 reasoning_content 字段,在前端展示时建议折叠为可展开区域:

// Node.js 示例
import OpenAI from 'openai';

const openai = new OpenAI({
  baseURL: 'https://api.deepseek.com',
  apiKey: process.env.DEEPSEEK_API_KEY,
});

const completion = await openai.chat.completions.create({
  messages: [
    { role: 'system', content: '你是一个数学专家' },
    { role: 'user', content: '解方程 x2 - 5x + 6 = 0' }
  ],
  model: 'deepseek-v4-flash',
  thinking: { type: 'enabled' },
  reasoning_effort: 'medium',
});

console.log('推理链:', completion.choices[0].message.reasoning_content);
console.log('答案:', completion.choices[0].message.content);

双模式切换策略

最佳实践是根据任务类型动态选择模式:

  • 非思考模式:日常对话、翻译、摘要、简单问答——更快更省钱
  • 思考模式:数学、编程、逻辑推理、复杂分析——质量优先
  • 策略:先用非思考模式快速响应,如果答案质量不够,自动升级到思考模式重试

计价规则

思考模式产生的 token 分为两类:推理 token(reasoning_content)按输入价格计费,输出 token(content)按输出价格计费。V4 Flash 思考模式的推理 token 价格为 ¥1/百万 tokens,V4 Pro 为 ¥3/百万 tokens。

注意事项

  • FIM 补全仅支持非思考模式
  • 思考模式下的 reasoning_content 需单独解析
  • 流式输出时思考内容也会分块返回
  • 建议根据任务复杂度设置合适的 reasoning_effort,避免浪费