进阶 api-docs.deepseek.com 2026-10-13 22:45:35 · 23 阅读

第41章 DeepSeek API 速率限制与 user_id 隔离机制详解

速率限制与隔离 并发限制 各 DeepSeek API 模型的账户级并发上限见下表。 deepseek-flash | 2500 deepseek-v4-pro | 500 如需更高的并发额度,可提交扩容申请。我们会根据实际业务需求匹配合适的并发级别,扩容不收取额外费用。 - 一个请求从发送开始到模型响应完成为止,占用一个并发连接。 - 并发限制在账户层级统计,与使用的 API Key 无关。 - 对于同一账户,在并发限制内的请求会正常获得响应;超出并发限制时会收到 HTTP 429 错误码。 user_id 隔离 通过向 API 传递 user_id 参数,可以对同一账户下业务侧的不同用户进行精细化管理。user_id 的具体作用如下: - 内容安全隔离:利用 user_id 区分业务侧的用户身份,以处理内容安全相关事宜。 - KVCache 隔离:利用 user_id 隔离业务侧用户的 KVCache,以便进行隐私管理。 - 调度隔离:利用 user_id 对业务侧用户进行调度隔离。 对于普通 API 用户,所有 user_id 的并发量会合并计算。 对于并发额度已提升的 API 用户,我们将限制账户的总并发量,并对传入的每个 user_id 单独设置并发上限(空的 id 会被视为一个特殊的 user_id)。每个 user_id 对应的并发上限为:deepseek-flash 2500,deepseek-v4-pro 500。如果某个 user_id 超出其限额,该 user_id 下的请求将收到 HTTP 429 错误码。 设置 user_id user_id 参数必须是符合正则表达式 [a-zA-Z0-9\-_]+ 的字符串,长度上限为 512。请勿在 user_id 中包含用户隐私信息。 你可以通过以下方式设置 user_id 参数: OpenAI Chat Completions API HTTP 请求体: { "model": "deepseek-flash", "messages": {"role": "user", "content": "Hello!"}, "user_id": "your_user_id" } 如果使用 OpenAI SDK,需要将 user_id 参数放在 extra_body 下: response = client.chat.completions.create( model="deepseek-flash", messages=[{"role": "user", "content": "Hello!"}],
extra_body={"user_id": "your_user_id"}
)
Anthropic API​ HTTP 请求体: {
"model": "deepseek-flash",
"messages": {"role": "user", "content": "Hello!"},
"metadata": {"user_id": "your_user_id"},
"max_tokens": 1024
}
如果使用 Anthropic SDK,调用方式如下: message = client.messages.create(
model="deepseek-flash",
messages=[{"role": "user", "type": "text", "content": "Hello!"}],
metadata={"user_id": "your_user_id"},
max_tokens=1024
)
请求 Keep-Alive 机制​ 请求发出后,有时可能需要较长时间才能收到服务器的响应。在此期间,HTTP 请求会保持连接,你会持续收到如下格式的内容: 非流式请求:持续返回空行 流式请求:持续返回 SSE keep-alive 注释(: keep-alive) 这些内容不影响响应 JSON 体的解析。如果你自行解析 HTTP 响应,请确保正确处理这些空行或注释。 如果请求在 10 分钟后仍未开始推理,服务器会关闭连接。

评论 (0)