Claude深夜上新重磅功能——API长文本缓存。
新版API可以“记住”一整本书或整个代码库,不需要再重复输入了。
这样一来,不仅处理长文本的延时更低,更是能节省最高90%的成本。
来看看这降本的效果~
△假定重复部分为1万Token,模型为3.5 Sonnet,只计算输入
今年5月,谷歌在Gemini更新中提出了这项功能,然后是国内的Kimi和DeepSeek团队,总之现在又轮到了Claude。
值得一提的是,厂商Anthropic的推文当中提到,提示词缓存功能可以让用户用更长、更有指导性的提示词对模型进行“微调”。
有网友看了之后感慨,人们本来就很难分清提示工程(prompting)和微调(fine-tune),这下更不好区分了。
当然在这种场合下,也难免会有人点名或不点名地cue起隔壁的OpenAI。
成本节约高至90%
提示词缓存的作用,就是一次给模型发送大量prompt,然后让它记住这些内容,并在后续请求中直接复用,避免反复输入。
对此,博主Dan Shipper做了这样的一个比喻:
假设你在一家咖啡馆,第一次点单的时候需要告诉店员自己点的内容,但是接下来再去只需要说一句“和平常一样”就可以了。
不过需要注意的是,缓存的有效期为五分钟,但每读取一次计时都会被重置,一直连续提问时无需担心。
在Claude的官方文档中,也介绍了几个典型的应用场景,非常适合代码和长文档处理。
- 对话:降低扩展会话的成本和延迟,尤其是包含长指令或附有文档的会话;
- 代码助理:通过在prompt保存的对代码库的总结,改善代码自动补全和问答功能;
- 大型文档处理:在提示中纳入完整的长格式材料(包括图像),而不会增加响应延迟;
- 详细的指令集:(在多个对话中)共享详细的指令、过程和示例列表以进行微调Claude的回应;
- 搜索和工具调用:增强涉及多轮工具调用和迭代更改的场景的性能;
- 长文本对话:将整个文档(书、论文、播客脚本等)嵌入到提示中并让用户提出问题,从而对知识库进行增强。
由于不需要反复输入重复的脚本,提示词缓存具有速度更快、成本更低这两大优势。
比如在基于一本10万Tokens的图书进行对话时,以往模型需要11.5秒才能生成首个输出Token,但有了提示词缓存就只需要2.4秒,降低了79%,成本更是减少90%。
在其他场景中,延时和成本也有不同程度的降低。
定价上,原有的输入和输出Token价格不变,提示词缓存的价格则分成了写入和读取两个部分。
最小的Haiku每百万Token的写入和读取价格分别是30美分(约合人民币两块一)和3美分。
3.5 Sonnet则是写入3.75美元,读取0.3美元,最大号的Opus是18.75美元和1.5美元。
可以看出,初始写入的价格相对于输入要高一些,但读取的价格只有重复输入的十分之一。
换言之,缓存被反复读取的次数越多,相比于重新输入节约的成本也就越多。
举个例子,假设要发送1万次请求,重复部分包含1万Tokens,如果不用缓存,总输入是1亿Tokens,用Sonnet需要300美元。
但如果开启缓存,就只需要1÷100×3.75+1×10000÷100×0.3=30.03美元,节省了近90%。
还是假设重复部分包含1万Tokens,那么从下图可以看出,随着调用次数的增加,成本优势将越来越明显
对于开发者来说,这无疑是一项重大利好。
AI写作工具HyperWriteAI创始人兼CEO Matt Shumer就表示,这项更新相当重大。
这意味着人们可以用更低的成本把一整个代码库喂给模型,然后要求增加新功能;或者突破一次只能RAG 5个的限制,直接输入大量文档;又或者直接给出数百个示例,以得到“比微调更好的结果”。
目前该功能支持3 Haiku和3.5 Sonnet,Opus则将在稍晚一些更新。
顶级玩家纷纷跟进
这项功能并非是Claude首创,今年5月,谷歌的Gemini就已经支持了上下文缓存。
后来国内月之暗面的Kimi和深度求索团队的DeepSeek也进行了跟进。
值得一提的是,DeepSeek团队把这项技术的存储介质换成了硬盘,还降低了存储成本。
触发方式也有所区别,比如DeepSeek是由系统自动判断哪些内容需要缓存,Claude则是要在调用时手动添加标记。
虽然在细节上各家有各自的做法,但这种新模式,已经受到了国内外顶级玩家的青睐,未来可能会成为大模型厂商的新标配。