快速入门
平台提供 OpenAI 兼容的对话补全接口,可使用任意支持 OpenAI 协议的客户端库,或直接发送 HTTP 请求。
三步开始
- 1. 在 会员中心 → API 密钥 创建 API Key(仅显示一次)
- 2. 在会员中心充值余额(先充后扣,无最低消费)
- 3. 使用 OpenAI SDK 或 HTTP 请求调用接口
认证方式
除模型列表外,所有请求需在 Header 中携带 API Key:
Authorization: Bearer sk-your-api-key
API Key 以 sk- 开头,创建时仅显示一次;如怀疑泄露,请停用后重新创建。
Base URL
所有接口均以以下地址为前缀:
https://api.deepseek.com/v1
使用 OpenAI SDK 时,将 base_url 设置为该地址即可。
获取模型列表
GET
https://api.deepseek.com/v1/models返回当前已上架的模型(OpenAI 兼容格式),可用于校验模型编码。
curl https://api.deepseek.com/v1/models
{
"object": "list",
"data": [
{ "id": "deepseek-chat", "object": "model", "created": 0, "owned_by": "deepseek" }
]
}
对话补全
POST
https://api.deepseek.com/v1/chat/completions创建一次对话补全。当前版本返回完整响应(非流式),stream 传 true 也按非流式处理。
curl https://api.deepseek.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-your-api-key" \
-d '{
"model": "deepseek-chat",
"messages": [
{"role": "user", "content": "你好"}
]
}'
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
model | string | 是 | 模型编码,如 deepseek-chat |
messages | array | 是 | 对话消息列表,含 role 与 content |
temperature | float | 否 | 采样温度,默认 0.7 |
max_tokens | int | 否 | 最大生成 token 数 |
top_p | float | 否 | 核采样概率 |
stop | string / array | 否 | 停止词 |
presence_penalty | float | 否 | 话题新鲜度惩罚 |
frequency_penalty | float | 否 | 频率惩罚 |
响应格式
响应结构与 OpenAI Chat Completions 一致:
{
"id": "chatcmpl-xxx",
"choices": [{
"message": { "role": "assistant", "content": "你好!有什么可以帮你的?" },
"finish_reason": "stop"
}],
"usage": {
"prompt_tokens": 5,
"completion_tokens": 10,
"total_tokens": 15
}
}
usage 用于计费;如果上游未返回 usage,平台会按内容长度估算。
计费规则
按输入 / 输出 token 分别计价,从账户余额扣除:
费用 = prompt_tokens / 1000 × 输入单价
+ completion_tokens / 1000 × 输出单价
- 调用前会校验余额,余额不足返回
402 - 上游调用失败不扣费
- 各模型的输入 / 输出单价见 模型与价格
用量查询
每次调用的 token 消耗、费用与状态都会记录,可在会员中心查看调用明细、密钥累计用量与按日统计。
错误码
| HTTP 状态码 | 含义 | 说明 |
|---|---|---|
400 | 参数错误 | 缺少 model 或 messages 格式不正确 |
401 | 认证失败 | 未携带 Authorization 或 API Key 无效 / 已停用 |
402 | 余额不足 | 充值后重试 |
404 | 模型不存在 | model 参数错误或模型未上架 |
502 | 上游错误 | 上游模型服务异常或返回错误 |
503 | 服务未配置 | 平台未配置上游转发地址 |
代码示例
Python(OpenAI SDK)
from openai import OpenAI
client = OpenAI(
api_key="sk-your-api-key",
base_url="https://api.deepseek.com/v1",
)
resp = client.chat.completions.create(
model="deepseek-chat",
messages=[{"role": "user", "content": "Hello"}],
)
print(resp.choices[0].message.content)
Node.js
import OpenAI from "openai";
const client = new OpenAI({
apiKey: "sk-your-api-key",
baseURL: "https://api.deepseek.com/v1",
});
const resp = await client.chat.completions.create({
model: "deepseek-chat",
messages: [{ role: "user", content: "Hello" }],
});
console.log(resp.choices[0].message.content);
curl
curl https://api.deepseek.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-your-api-key" \
-d '{"model":"deepseek-chat","messages":[{"role":"user","content":"Hello"}]}'