DeepSeek API 的上下文磁盘缓存技术简直是省钱神器!🚀

这个功能专为需要重复使用相同前缀的请求设计,比如长文本问答、多轮对话、小样本学习等场景,可以大幅降低成本!💰

什么是“命中缓存”?举个例子!

例如:多轮对话

第一次请求​​​​​​​

messages: [    {"role": "system", "content": "你是一位乐于助人的助手"},    {"role": "user", "content": "中国的首都是哪里?"}]

第二次请求

messages: [    {"role": "system", "content": "你是一位乐于助人的助手"},    {"role": "user", "content": "中国的首都是哪里?"},    {"role": "assistant", "content": "中国的首都是北京。"},    {"role": "user", "content": "美国的首都是哪里?"}]

在上例中,第二次请求可以复用第一次请求开头的 system 消息和 user 消息,这部分会计入“缓存命中”。

图片

它是如何做到的呢?

  • DeepSeek 将常用的上下文内容存储在分布式硬盘阵列中。

  • 当你的请求中包含之前出现过的相同前缀时,系统会直接从缓存中提取这部分内容,而不是重新计算,从而节省算力。

  • 只有完全相同的前缀才能被缓存命中。

能省多少钱?

  • 缓存命中的 token 价格超低,仅需 0.1 元/百万 tokens。

  • 经过优化,理论上最高可节省 90% 的成本!即使不做任何优化,根据历史数据,也能节省 50% 以上!

  • 而且,缓存本身不收取任何额外费用,存储也是免费的!

图片

哪些场景最适用?

    需要预设较长提示词的问答助手。

    包含较长角色设定、需要多轮对话的角色扮演应用。

    频繁查询固定文本集合的数据分析应用。

    代码仓库级别的代码分析和问题排查工具。

    1. 多轮对话场景,下一轮对话会命中上一轮对话生成的上下文缓存

    图片

    2. 数据分析场景,后续具有相同前缀的请求会命中上下文缓存

    图片

    技术细节和安全性如何?

    • DeepSeek 采用了低秩 KV 缓存联合压缩技术 (MLA) 来优化缓存效率,大幅压缩上下文 KV Cache 的大小。

    • 每个用户的缓存都是独立的,逻辑上对其他用户不可见,保证数据安全和隐私。

    • 长期不使用的缓存会被自动清理,不会用于其他目的。

    为何 DeepSeek API 能率先采用硬盘缓存?

    根据公开的信息,DeepSeek 可能是全球第一家在 API 服务中大范围采用硬盘缓存的大模型厂商。

    这得益于 DeepSeek V2 提出的 MLA 结构,在提高模型效果的同时,大大压缩了上下文 KV Cache 的大小,使得存储所需要的传输带宽和存储容量均大幅减少,因此可以缓存到低成本的硬盘上。

    Logo

    欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

    更多推荐