当前位置:首页 > AI工作类

办公自动化天天烧 token,成本怎么省?LLM 提示词缓存与成本优化拆解

1周前 (10-05)AI工作类20

token-cache-cover.jpg把大模型接进日报、周报、工单处理这类办公流程后,让团队头大的往往不是"跑不跑得通",而是月底那张 API 账单。自动化任务有个特点:看起来每次都只问一个小问题,背后却一天几百上千次调用,token 像水一样流走。

这篇摊开一张成本账,看钱都花在哪,再顺着"提示词缓存"这条线,拆有哪些实实在在能省回来的招,以及它们的边界。

先摊账:token 的钱,到底怎么算出来的

大模型调用按 token 计费,每笔调用拆成两块:输入 token 和输出 token。输入是发给模型的全部内容——系统提示词、工具定义、示例、本轮用户问题,输出是模型吐出来的回答。

一个常被忽略的现实是:输出 token 的单价,普遍比输入 token 贵,有的模型能差到好几倍。也就是说,同样一个字,模型"写出来"比"读进去"更烧钱。

成本再放大一层,来自重复。办公自动化里,任务虽然每天变化,但每次调用带的底层配置几乎一模一样:一长串系统角色设定、一份固定的工具说明、几个 few-shot 示例、大段业务规则。这些"每一笔都要原样带上的死重",才是账单里占大头、又容易拿来开刀的部分。

提示词缓存:重复的那截,别让模型白读

省钱的钥匙,就在这些重复内容上。多数大模型服务现在都提供"提示词缓存"(prompt caching)机制,逻辑是:服务端在算请求时,会给输入 token 序列算一份中间的 KV 缓存;如果两个请求的前缀 token 完全一样,第二笔就能直接复用前一笔算好的那截,不用从头再算一遍。

落到计费上,就是"命中缓存的那部分输入 token,按便宜得多的单价算",有的平台打到几分之一。换句话说,模型并不是每笔都真去"重新读"一遍你的长系统提示词,只要前缀没变,它就吃老本。

这里有个硬规则得记住:缓存认的是"前缀逐 token 一致"。所以内容怎么摆放,直接决定你能省多少——放在前面的、几乎不变的、每笔都重复的,才有机会命中缓存;天天变的东西如果被夹在中间,前缀一变,后面的缓存全作废。


怎么摆提示词,才能吃到缓存

既然缓存爱吃"稳定且靠前"的前缀,写调用代码时就得按这个顺序来组织:

把万年不变的放前面——系统角色说明、输出格式要求、工具定义、固定的 few-shot 示例,这些放开头。把每次都会变的内容压到末尾——本轮的具体问题、这条工单的正文、今天要处理的那份数据。

反过来是很亏的写法:把变化的用户输入插在中间,后面又接一大段固定规则。这样前缀被迫掺进了变化,缓存命中率直线往下掉。多轮对话同理,把历史对话的完整内容作为新请求的前缀,前面的轮次天然能被缓存。

再补一刀:别在"固定内容"里塞会变的部分。比如示例里如果每次都带上当下的实时数据,示例就不再是稳定前缀了。稳定和不稳定的边界切得越干净,缓存越好命中。

除了缓存,还有几条回头钱的路

提示词缓存是省输入大头,别的口子也能挤一挤。

一是控制输出长度。既然输出更贵,"回答尽量简洁""只给结论和下一行动作"这类约束,对自动化里那些其实只需要一个判断、一个字段的场景,能实实在在砍掉不少输出 token。

二是分级选模型。不是每个环节都需要大模型。先让便宜的小模型做分诊、分类、初筛,只有够格的才送大模型精处理,比一股脑全塞给旗舰模型便宜得多。

三是精简那些"死重"。系统提示词、示例、规则,隔段时间就审一遍,把用不上的、重复啰嗦的部分删掉。few-shot 示例不是越多越好,挑几个有代表性的,往往效果不差、token 省一大截。

四是复用中间结果。批量任务里如果有多份文档共享同一段背景说明,就别让每份文档都重复带一遍全部背景,拆成"公共前缀 + 单条差异"的结构,既好维护,也顺带喂饱了缓存。

缓存不是包治百病,边界要清楚

提示词缓存能省,但有边界,别把它当成无成本的钥匙。

它讲究前缀命中,而真实办公场景里,前缀恰好稳定且超长,收益才明显——像那种每次都带一厚本工具文档、一份长系统指令的 Agent,缓存收益大;反过来,每个请求内容都八竿子打不着、公共部分只有一句"你好",缓存几乎沾不到便宜。

缓存也受平台策略影响:命中部分的折扣比例、缓存保留时长、是否默认开启,各家不同,得对着所用平台的具体规则来调。还有一点,过度追求命中,可能逼着你把不该固化的内容硬固化,反而把活做僵了。省成本的前提,是别为了省钱牺牲掉自动化本来的灵活性。

小结

把成本这条线收一下:钱主要花在输入和输出 token 上,输出更贵,重复输入是办公自动化的隐形大头;提示词缓存靠复用"前缀逐 token 一致"的中间结果来省输入,摆放顺序决定命中率——稳定的放前、变化的放后;再配合控输出、分级选模型、精简死重、复用公共前缀,能把账单切下可观的量;但缓存有边界,前缀不稳定、公共内容太短的场景里收益有限。

说穿了,token 成本不是熬出来的玄学,是一笔能算、能排、能优化清楚的账。把提示词摆对位置这一步看着小,往往是所有省法里投入产出比挺高的一步。

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。