TonyHZK (@xiatang)终于搞定claude code最近更新的缓存失效方案,固定cch值 中发帖

突然发现claude code新版会让整个缓存失效,十几万的连续问答只能缓存一万多token,账单猛增,研究了一通发现了好家伙,这玩意会在第一条系统消息里面增加一个一直在变的值,这会让其他模型厂商完全不能cache对话正文,不得不说真狠啊。 
研究发现:
这是claude code客户端直出的内容,然后经过newapi的请求转换,统一输出为openai格式,送到其他厂商
[image]
这是Newapi转换后的样子,好家伙,第一条消息就在这给我变来变去,缓存前缀全失效了,难怪缓存不上,始终只有系统提示词和工具描述是稳定的。
[image]
解决方案:在newapi里面对渠道添加一个正则替换,让这个值完全固定,即可解决
messages.0.content
cch=[^;]*;
cch=dda51;
[image]