DeepSeek API 接入教程:从注册到 Python 调用实战
作为 AI 开发者,DeepSeek 是当前性价比最高的国产大模型之一。它的 API 完全兼容 OpenAI 接口规范,迁移成本极低,特别适合需要高并发、低成本推理的场景。这篇教程将带你完成从账号注册到 Python 代码调用的全过程,并附上常见问题的解决方案。
## 注册与获取 API Key
打开 [DeepSeek 开放平台](https://platform.deepseek.com/),使用手机号或邮箱注册账号。登录后进入「API Keys」页面,点击「创建新的 API Key」,按提示完成身份验证(通常要求绑定手机号),即可生成一个以 `sk-` 开头的密钥。**请立刻复制并妥善保存**,该密钥仅显示一次。
新注册用户默认赠送一定额度的免费 tokens,足够测试和原型开发。正式使用时需要充值,目前支持支付宝/微信支付,按量计费,价格约每百万 tokens 仅需 1 元人民币左右(具体价格以官网为准),在同类模型中优势明显。
## Python 环境准备
确保你的 Python 版本 ≥ 3.7,安装官方推荐的 OpenAI Python 库(DeepSeek 完全兼容):
```bash pip install openai ```
你也可以使用 `requests` 直接调用 HTTP 接口,但用 SDK 能节省不少精力。接下来,将 API Key 配置为环境变量,避免硬编码在脚本中:
```bash export DEEPSEEK_API_KEY="你的sk-xxx" ```
在 Python 代码中通过 `os.getenv` 读取即可。
## 第一个调用:发送对话请求
DeepSeek 目前主推的模型是 `deepseek-chat`(对应最新版 DeepSeek-V3)和 `deepseek-reasoner`(用于复杂推理)。下面的示例演示如何发起一次简单的对话补全:
```python import os from openai import OpenAI
client = OpenAI( api_key=os.getenv("DEEPSEEK_API_KEY"), base_url="https://api.deepseek.com", )
response = client.chat.completions.create( model="deepseek-chat", messages=[ {"role": "system", "content": "你是一个严谨的编程助手。"}, {"role": "user", "content": "用 Python 实现快速排序"}, ], temperature=0.8, max_tokens=1024, )
print(response.choices[0].message.content) ```
要点解读:
- `base_url` 必须设置为 `https://api.deepseek.com`,这是与 OpenAI 默认地址的唯一区别。 - `model` 参数可选 `deepseek-chat` 或 `deepseek-reasoner`。前者适合日常对话和文本生成,后者在数学、代码推理任务中表现更优,但响应速度略慢。 - `temperature` 控制输出随机性,0~2 之间,代码任务建议设为 0.1 以下以保证稳定性。 - `max_tokens` 限制输出长度,避免费用失控。
运行脚本,你应该能在终端看到格式化的 Python 快速排序代码。
## 流式输出与异常处理
实际应用中,流式输出能大幅提升用户体验。只需添加 `stream=True` 参数,即可逐词返回内容:
```python stream = client.chat.completions.create( model="deepseek-chat", messages=[{"role": "user", "content": "介绍一下 DeepSeek 模型"}], stream=True, )
for chunk in stream: if chunk.choices[0].delta.content: print(chunk.choices[0].delta.content, end="") ```
做好异常处理是工程化的基本要求。常见的错误包括网络超时、无效 API Key、上下文长度超限等。简单包裹 try-except:
```python try: response = client.chat.completions.create(...) except Exception as e: print(f"请求失败:{e}") ```
若遇到 401 错误,检查 Key 是否正确;若 503 或 504,可能是服务繁忙,增加重试机制即可。
## 计费与监控
你可以在平台「用量统计」页面查看实时消耗。DeepSeek 按输入和输出 tokens 分别计费,输入价格远低于输出。为了控制成本,建议合理设置 `max_tokens`,并在系统消息中要求模型回答简洁。
## 扩展选择:TokenPocket API 中转站
如果你需要同时调用多个模型(如 Qwen、Claude、Gemini),或者希望使用 USDT 等加密支付方式统一结算,可以试试 TokenPocket API 中转站([https://tokenpocket.site](https://tokenpocket.site))。它聚合了 DeepSeek、千问、Claude、Gemini 等主流模型的 API,均按量计费,无需每个平台单独充值。接入方式同样兼容 OpenAI 格式,只需替换 `base_url` 和 Key 即可。新用户注册即送免费额度,很方便做多模型对比测试,推荐有此类需求的开发者尝试。