最近大模型更新的隐式缓存为什么可以把缓存价格降低,命中率大大提高。
传统推理里,你每调一次API,GPU都得把整个输入prompt重新算一遍。固定System Prompt、历史对话、RAG知识库,这些重复内容每次都重新预填充,按全价收费。
隐式缓存做了什么?
它自动检测本次输入和之前请求的公共前缀。命中了,就把之前算好的KV Cache从SSD硬盘直接加载出来,只对新增部分重新计算。重复劳动,直接砍掉。
效果立竿见影。多轮对话、Agent、代码补全这类场景,重复前缀往往占输入Token的70%-90%。命中后,input价格直接打到一折。对长文本多次对话的推理的成本和内存的压力都大大降低。
但这里有个关键问题:之前为什么不行?
KV Cache太大了。传统Multi-Head Attention架构下,百万Token的KV可能要上百GB显存。存盘?I/O延迟完全没法接受。GPU必须全程Hold住所有KV,成本根本降不下来。
DeepSeek的MLA架构把KV Cache压缩了10-28倍。百万Token从80-200GB变成4-10GB。这才让硬盘级缓存成为可能,压缩后的KV可以经济地落盘到分布式SSD,需要时再快速加载。
本质上,是把最贵的GPU显存从按最大上下文全量占用变成了按实际新增Token动态使用,类似动态更新的模式。
这里有个反直觉的点:虽然对高速内存需求大幅下降,但并不是完全转向硬盘。更像是分层存储,GPU只保留热数据,冷前缀卸载到SSD。类似CPU的分页机制,只是这次发生在大模型推理层。
DeepSeek率先把这套机制默认开启,给出极致低价。其他厂商不得不跟进,竞争驱动技术扩散,技术扩散又进一步压低价格。
要想最大化缓存命中需要做什么?
想最大化省钱,把重复内容尽量放在prompt开头,保持前缀一致性,命中率会更高。API响应里有prompt_cache_hit_tokens字段,直接看命中率。
这轮降价潮是真实的架构创新,算法效率优化带来的成本下降。MLA压缩KV、分布式SSD存储、Radix-Tree前缀索引,这些工程突破把原来需要重复劳动浪费的算力,优化到极致
尤其是 DeepSeek,降价这么多还能赚钱,还是永久降价,这是真本事,那之前的原价是耍我们玩得吗,第一天用原价 API 的人是有点冤大头了。
顯示更多