半夜跑批处理,两千条用户评论做情感分类,稀里糊涂写了个 deepseek-reasoner。第二天早上看账单,成本是预期用的聊天模型的五六倍,跑完还多花了两小时——每条都在吐思维链。分类这种任务根本用不上推理模型。选错模型的代价不是 API 难用,是钱和时间。
去 platform.deepseek.com 注册,控制台里创建 API Key。密钥只在创建时完整显示一次,复制走存好。
充值在「充值」页,按 token 计费,预付费。个人开发先充几十块试水足够。
环境变量里放 key,别写进代码:
接口是 OpenAI 兼容的,base_url 指向 https://api.deepseek.com,已有的 openai SDK 直接能复用。
公开文档里长期稳定的是两个:
- deepseek-chat——通用对话,快、便宜,支持 JSON 输出和函数调用。日常任务主力。
- deepseek-reasoner——先输出思维链再给答案,返回里有 reasoning_content 字段。慢,token 消耗高,不支持函数调用,采样参数(temperature 等)传了也基本无效。
至于 v4-flash / v4-pro 这类命名,不同渠道叫法不统一,有的属于新上线产品线还在灰度。唯一可靠的做法是打开控制台或 /models 接口看当前账号能调哪些,别照着教程里的字符串硬写。命名会变,能力边界(快/便宜 vs 慢/强推理)不会变。
client = OpenAI( api_key=os.environ["DEEPSEEK_API_KEY"], base_url="https://api.deepseek.com", )
resp = client.chat.completions.create(
model="deepseek-chat",
messages=[{"role": "user", "content": "把这条评论归类:物流太慢了"}],
stream=True,
)
for chunk in resp:
print(chunk.choices[0].delta.content or "", end="")
`
换成 deepseek-reasoner 只改模型名。注意多段对话时要丢掉上一次的 reasoning_content,别回传,否则报错。
经验判断:分类、抽取、改写、客服问答、模板生成——chat 全包。数学证明、多步逻辑、代码 debug 里那种"想清楚再答"的场景才上 reasoner。
生产上一个实用做法是路由:默认走 chat,命中特定关键词或前置判断为复杂任务时再切 reasoner。另外 system prompt 写固定、放最前面,上下文缓存命中后单价能低一大截,长 prompt 场景别每次都拼时间戳进去。
如果你也想试试一个Key调多个模型的方便,可以看看充站——¥50起步,额度永久有效,用支付宝/微信就能付款。