DeepSeek 登录与鉴权:获取 API Key 并填对位置
DeepSeek 登录后拿到 API Key,就能把它填进命令行或开发工具,调用 DeepSeek 模型。
截至 2026 年抓取时,DeepSeek 官方文档已把默认模型名更新为 deepseek-flash,实际由 DeepSeek-V4.1-Flash-1017 提供服务;旧的 deepseek-v4-flash 和 deepseek-v4-flash-vision-exp 仍可请求,但对应模型已经退役。现在最值得处理的,不只是找到密钥,而是同时确认 API 地址、密钥位置和模型名填对。
登录平台并创建 API Key
这里的“登录”分两层:先登录 DeepSeek 开放平台,再创建用于程序调用的 API Key。网页端能打开模型,不代表客户端已经具备 API 调用权限;反过来,API Key 也不能代替开放平台账号登录。
开始前准备三项:
- 登录 DeepSeek 开放平台,进入 API Keys 管理页,确认页面要求完成登录且能看到密钥列表。
- 准备一个能运行命令行的环境;使用 Python 时运行
python3 --version,使用 Node.js 时运行node -v,确认命令可执行。 - 确认能访问 API 地址;运行
curl https://api.deepseek.com,能看到服务器响应即表示网络已连通。
进入 API Keys 页面后,新建一个密钥,并立即复制到密码管理器或系统密钥存储中。密钥相当于程序访问账户的密码,不要放进公开仓库、截图、前端代码或聊天记录。
API Key 和 API 地址承担不同职责:密钥证明“你是谁”,API 地址决定“请求发到哪里”。只复制密钥,然后仍然使用 OpenAI 默认地址,是最常见的配置偏差之一。
先分清 OpenAI 与 Anthropic 格式
DeepSeek API 兼容 OpenAI 和 Anthropic 格式,但两种格式的 base_url 不同。填错格式时,客户端可能能保存配置,却在第一次请求时失败。
| 调用方式 | API 地址 | 模型名 | 鉴权位置 |
|---|---|---|---|
| OpenAI SDK / OpenAI 兼容客户端 | https://api.deepseek.com |
deepseek-flash |
Authorization: Bearer <API Key> |
| Anthropic SDK / Anthropic 兼容客户端 | https://api.deepseek.com/anthropic |
deepseek-flash |
Anthropic 客户端的 API Key 字段 |
| 网页聊天 | 登录开放平台后使用 | 平台内部处理 | 浏览器登录状态 |
官方集成仓库也把获取密钥的入口指向 DeepSeek Open Platform,并集中收录了客户端、编辑器、Agent 框架等接入方式,可查看 DeepSeek API 集成项目列表。如果准备把密钥接入第三方客户端,先确认该工具支持“自定义 OpenAI 兼容地址”;仅支持 DeepSeek 专用配置的工具,不能只填密钥就完成接入。
以下配置都应以官方 DeepSeek API 快速入门页 为准。不要把浏览器登录 Cookie 当成 API Key,也不要把密钥直接硬编码进脚本。
用一条请求验证鉴权
DeepSeek 官方推荐在运行示例前设置 DEEPSEEK_API_KEY 环境变量,再发送聊天请求。这里先不接入 SDK,用官方提供的 curl 请求检查“地址、密钥、模型名”这三个位置。
将密钥放入终端的 DEEPSEEK_API_KEY 环境变量后,执行:
curl https://api.deepseek.com/chat/completions
-H "Content-Type: application/json"
-H "Authorization: Bearer ${DEEPSEEK_API_KEY}"
-d '{
"model": "deepseek-flash",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello!"}
],
"thinking": {"type": "enabled"},
"reasoning_effort": "high",
"stream": false
}'
这条命令里没有手写密钥:${DEEPSEEK_API_KEY} 会读取当前终端的环境变量。复制命令时保留双引号、请求头和 JSON 字段;如果手动把密钥粘进命令行,后续使用 history 查看命令历史时更容易泄露。
第一次验证先保留 stream 为 false。这样一次响应会完整返回,更容易判断是鉴权失败、模型名错误,还是请求已经进入生成阶段。确认基础调用正常后,再考虑把 stream 改成 true 获取流式输出。
把密钥放进 SDK 或客户端
如果项目使用 Python,按官方示例安装 OpenAI SDK:
pip3 install openai
再让 SDK 从同一个环境变量读取密钥:
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ.get('DEEPSEEK_API_KEY'),
base_url="https://api.deepseek.com",
)
response = client.chat.completions.create(
model="deepseek-flash",
messages=[
{"role": "system", "content": "You are a helpful assistant"},
{"role": "user", "content": "Hello"},
],
stream=False,
reasoning_effort="high",
extra_body={"thinking": {"type": "enabled"}},
)
print(response.choices[0].message.content)
如果项目使用 Node.js,先安装官方示例采用的 SDK:
npm install openai
随后读取环境变量,并保持 baseURL 与 API 格式对应:
import OpenAI from 'openai';
const openai = new OpenAI({
baseURL: 'https://api.deepseek.com',
apiKey: process.env.DEEPSEEK_API_KEY,
});
在图形化客户端里,同样要检查三个输入框或配置项:Provider/API 类型、Base URL、API Key。选择 OpenAI 兼容模式时,Base URL 填 https://api.deepseek.com;选择 Anthropic 兼容模式时,填 https://api.deepseek.com/anthropic。如果客户端还有独立的 Model 输入框,填写 deepseek-flash。
卡住时按这三个位置排查
密钥放错位置
程序应从环境变量、密钥管理器或客户端的安全凭据区域读取密钥。把 Key 填进“用户名”“模型名称”或普通文本配置项,即使保存成功也不代表鉴权成功。重新核对 api_key、apiKey 或 Authorization: Bearer 对应的字段。
地址与 SDK 格式不匹配
OpenAI SDK 示例使用 https://api.deepseek.com,Anthropic SDK 使用 https://api.deepseek.com/anthropic。不要把 Anthropic 地址填进 OpenAI 客户端,也不要在地址末尾重复拼接 /chat/completions;客户端通常会自行追加接口路径。
模型名仍指向退役版本
当前调用名应使用 deepseek-flash。官方说明它由 DeepSeek-V4.1-Flash-1017 提供,调用方式没有变化;deepseek-v4-flash 与 deepseek-v4-flash-vision-exp 虽然仍被接受,但对应模型已经退役,请求会转给 Flash 模型并按 Flash 价格计费。直接改用 deepseek-flash,可以避免名称含义与实际模型不一致。
密钥的三条使用纪律
密钥只出现在请求头或环境变量里:不写进会提交到 Git 的文件、不贴进公开聊天或 issue、不在多台机器间用聊天工具明文传来传去。一旦怀疑泄露,直接到 API Keys 管理页删除重建——旧 key 失效是即时的,比排查”谁看过它”更可靠。
怎么确认已经配置成功
不要只看客户端里“API Key 已保存”的提示。运行前面的 curl 请求后,成功标志是响应正文包含模型生成的 assistant 消息内容,而不是只返回一个 HTTP 状态。
使用 SDK 时,成功标志是:
response.choices[0].message.content能打印出回答;- 客户端的请求日志指向
https://api.deepseek.com; - 模型字段显示或实际传入的是
deepseek-flash; - DeepSeek 开放平台的用量记录出现本次请求。
如果只想复测最基础的一步,可以再次执行官方 curl,并把用户消息改成容易识别的文字,例如“只回复:连接成功”。看到对应回复后,再把相同的环境变量和地址迁移到自己的客户端。
后续可继续查看 DeepSeek 官方 API 文档、DeepSeek 开放平台,以及官方的 GitHub 组织页面。遇到不同客户端的字段问题时,优先对照官方集成仓库,而不是修改 Base URL 或重复创建密钥。
参考来源
- DeepSeek 官方 API 文档:密钥用法与接口规范的一手出处。
- DeepSeek 开放平台:账号登录与 API Keys 管理页入口。
- DeepSeek 官方 GitHub 组织:官方仓库与集成项目列表。
- DeepSeek 官网:产品与公告。
(原参考为第三方云厂商 PDF、图文教程与个人仓库,按来源纪律移除并替换为官方域。)
评论区
登录后可评论。