上下文硬盘缓存

DeepSeek API 上下文硬盘缓存技术对所有用户默认开启,用户无需修改代码即可享用。 用户的每一个请求都会触发硬盘缓存的构建。若后续请求与之前的请求在前缀上存在重复,则重复部分只需要从缓存中拉取,计入“缓存命中”。 注意:两个请求间,只有重复的前缀部分才能触发“缓存命中”,详间下面的例子。 例一:长文本问答​ 第一次请求 第二次请求 在上例中,两次请求都有相同的前缀,即 system 消息 + user 消息中的 <财报内容>。在第二次请求时,这部分前缀会计入“缓存命中”。 例二:多轮对话​ 第一次请求 第二次请求 在上例中,第二次请求可以复用第一次请求开头的 system 消息和 user 消息,这部分会计入“缓存命中”。 例三:使用 Few-shot 学习​ 在实际应用中,用户可以通过 Few-shot 学习的方式,来提升模型的输出效果。所谓 Few-shot 学习,是指在请求中提供一些示例,让模型学习到特定的模式。由于 Few-shot 一般提供相同的上下文前缀,

全文

Function Calling

Function Calling 让模型能够调用外部工具,来增强自身能力。 提示​ 当前版本 deepseek-chat 模型 Function Calling 功能效果不稳定,会出现循环调用、空回复的情况。我们正在积极修复中,预计将在下一个版本中得到修复。 样例代码​ 这里以获取用户当前位置的天气信息为例,展示了使用 Function Calling 的完整 Python 代码。 Function Calling 的具体 API 格式请参考对话补全文档。 这个例子的执行流程如下: 注:上述代码中 get_weather 函数功能需由用户提供,模型本身不执行具体函数。

全文

JSON Output

在很多场景下,用户需要让模型严格按照 JSON 格式来输出,以实现输出的结构化,便于后续逻辑进行解析。 DeepSeek 提供了 JSON Output 功能,来确保模型输出合法的 JSON 字符串。 注意事项​ 样例代码​ 这里展示了使用 JSON Output 功能的完整 Python 代码: 模型将会输出:

全文

FIM 补全(Beta)

在 FIM (Fill In the Middle) 补全中,用户可以提供前缀和后缀(可选),模型来补全中间的内容。FIM 常用于内容续写、代码补全等场景。 注意事项​ 样例代码​ 下面给出了 FIM 补全的完整 Python 代码样例。在这个例子中,我们给出了计算斐波那契数列函数的开头和结尾,来让模型补全中间的内容。 配置 Continue 代码补全插件​ Continue 是一款支持代码补全的 VSCode 插件,您可以参考这篇文档来配置 Continue 以使用代码补全功能。

全文

多轮对话

本指南将介绍如何使用 DeepSeek /chat/completions API 进行多轮对话。 DeepSeek /chat/completions API 是一个“无状态” API,即服务端不记录用户请求的上下文,用户在每次请求时,需将之前所有对话历史拼接好后,传递给对话 API。 下面的代码以 Python 语言,展示了如何进行上下文拼接,以实现多轮对话。 在第一轮请求时,传递给 API 的 messages 为: 在第二轮请求时: 最终传递给 API 的 messages 为:

全文

推理模型 (deepseek-reasoner)

deepseek-reasoner 是 DeepSeek 推出的推理模型。在输出最终回答之前,模型会先输出一段思维链内容,以提升最终答案的准确性。我们的 API 向用户开放 deepseek-reasoner 思维链的内容,以供用户查看、展示、蒸馏使用。 在使用 deepseek-reasoner 时,请先升级 OpenAI SDK 以支持新参数。 API 参数​ 上下文拼接​ 在每一轮对话过程中,模型会输出思维链内容(reasoning_content)和最终回答(content)。在下一轮对话中,之前轮输出的思维链内容不会被拼接到上下文中,如下图所示: 请注意,如果您在输入的 messages 序列中,传入了reasoning_content,API 会返回 400 错误。因此,请删除 API 响应中的 reasoning_content 字段,再发起 API 请求,方法如访问样例所示。 访问样例​ 下面的代码以 Python 语言为例,展示了如何访问思维链和最终回答,以及如何在多轮对话中进行

全文

FIM 补全(Beta)

FIM(Fill-In-the-Middle)补全 API。 用户需要设置 base_url=”https://api.deepseek.com/beta” 来使用此功能。 Request​ BODY REQUIRED Responses​ OK SCHEMA REQUESTCOLLAPSE ALLBase URL https://api.deepseek.com/betaAuthBearer TokenBody REQUIRED { “model”: “deepseek-chat”, “prompt”: “Once upon a time, “, “echo”: false, “frequency_penalty”: 0, “logprobs”: 0, “max_tokens”: 1024, “presence_penalty”: 0, “stop”: null, “stream”: false, “stream_options”: null, “suffix”: null, “temperature”: 1, “top_p”: 1 }

全文

对话补全

POSThttps://api.deepseek.com/chat/completions 根据输入的上下文,来让模型补全对话内容。 Request​ BODY REQUIRED Responses​ OK, 返回一个 chat completion 对象。 SCHEMA REQUESTCOLLAPSE ALLBase URL https://api.deepseek.comAuthBearer TokenBody REQUIRED { “messages”: [ { “content”: “You are a helpful assistant”, “role”: “system” }, { “content”: “Hi”, “role”: “user” } ], “model”: “deepseek-chat”, “frequency_penalty”: 0, “max_tokens”: 2048, “presence_penalty”: 0, “response_format”: { “type”: “text” }, “stop”: null, “

全文

////