成本优化与 Prompt 缓存 - Entity Enricher 文档

成本优化

使用 LLM 数据增强时,成本就是 token。Entity Enricher 的设计目标是在不牺牲准确性的前提下,尽可能减少计费 token——以提示词缓存为核心,并辅以 schema 范围限定、智能门控以及更少的无效重试。其中大部分都会自动完成;这里没有任何内容需要额外配置。

成本花在了哪里

每次扩充调用都需要为输入令牌(你的提示、schema 以及任何附件文档)、输出令牌(结构化结果)以及——如果启用的话——网络搜索查询付费。其中体量最大、最重复的部分通常是输入:相同的系统指令、schema 描述和源文档会在每次调用时被重复发送。缓存这部分共享输入是最有效的手段,因此我们把它放在首位。

输入令牌

提示词 + schema + 附件。体积大且在多次调用间高度重复 — 是缓存与作用域限定的首要目标。

输出 token

结构化结果。通过仅向每个 model 请求它实际负责的字段,保持精简。

浪费的开销

失败重试、速率限制抖动以及对错误实体进行富集。这些问题被预先消除,而非事后付出代价。

提示词缓存

当运行多专长领域扩充时,它会对同一实体发起多次 LLM 调用 —— 每个专长领域一次。这些调用都共享相同的开头上下文:通用系统指令以及你附加的所有内联文本文档。Entity Enricher 让该共享前缀在各次调用之间逐字节完全一致,并将其标记为可缓存,因此提供方只存储一次,并在后续每次调用时以大约正常输入价格十分之一的费用重新读取它。

缓存命中如何改变账单
不使用缓存

这 N 次调用中的每一次都会按完整输入价格重新发送完整的共享上下文。五个专业领域就意味着为那一大块共享内容付费五次。

启用缓存

共享块只写入缓存一次,随后在其余四次调用中以约 10% 的输入价格读回。每增加一项 expertise、一种语言和一份附加文档,节省的费用都会随之增长。

缓存预热

提供商缓存只有在首次写入缓存的请求完成 之后 才可读取。如果所有专业领域调用同时触发,则没有一个能找到已预热的缓存,每个都会冗余地写入自己的副本。因此,当应用缓存时,第一个调用会单独运行,留出短暂时间让缓存传播,然后其余调用才并行启动——这样每个调用都能读取已预热的缓存,而无需付出重写的代价。

适用于各类 provider 和 attachment

Anthropic 模型会显式缓存共享指令;附带的 PDF 和图像会就地缓存;而具备自动前缀缓存的提供商(OpenAI、xAI、DeepSeek 等)也能从相同的逐字节一致前缀中受益。缓存正是在输入量大时收益最高——多个专业领域、多种语言或附带文档时。

您只需为未缓存的部分付费

成本核算支持缓存感知:缓存的输入 token 按模型的缓存读取费率计费(仅为输入费率的一小部分),只有真正的新 token 才按全价计费。节省的费用会直接体现在你的成本分析中,而不仅仅是理论上的。

每次调用的负载更小

除了缓存共享前缀外,Entity Enricher 还会缩减每次调用中不共享的部分。

按专业领域划分 schema 子集

每次专业领域调用只会接收其负责的那部分 schema,而非完整的 schema。

金融专家永远看不到监管字段。字段更少意味着输入和输出的 token 更少——并且响应在合并前会被裁剪回其对应的部分。

无 schema 文本通道

当附加了文档且你未选择启用严格的结构化输出模式时,字段列表只存在于可读的 prompt 中 —— 不会在传输中重复任何 schema。

这会完全丢弃 schema 令牌,并保持共享前缀完全相同(因此缓存效果更好)。回复仍会在客户端进行校验,并在出现漂移时自动自我纠正。

不要为富集错误的对象付费

可选的预检分类会运行单个廉价、快速的模型,在启动任何昂贵的多模型增强之前,先检查实体是否真的与你的 schema 匹配。诸如将一颗卫星送入“行星” schema 之类的不匹配,只需花费不到一美分即可发现,而不必在多个高级模型上白白耗费一次完整的增强。

它是非阻塞的(即使检查失败,增强也会照常进行)且可取消,因此你绝不会为已决定跳过的模型开始付费。

减少无效重试

一轮校验失败就是一次全价的 LLM 调用却毫无所获。两种机制让重试变得罕见且高效。

输出规范化

常见的 LLM 输出问题——本应是数组的以索引为键的对象、字符串 'null'、多余的转义引号——都会在验证运行前被修正。

许多本会导致验证失败的问题会被静默修复,因此完全不会触发付费重试。

针对性自我纠正

当确实需要重试时,会将确切的验证错误反馈给模型,以便它能修复该具体问题。

清晰、具体的反馈能提高下一次尝试成功的几率,而不是把尝试机会浪费在含糊的指引上。

正确的策略,受控的并发

选择适合该模式的策略

对于小型 schema,单次通过成本最低;多专业则专为大型 schema 打造,其中缓存加上按专业范围划分带来的收益远超额外调用的成本。有关何时使用各策略,请参阅策略

速率限制可避免代价高昂的抖动

每提供商并发限制可防止作业猛烈冲击某个提供商而触发速率限制错误,否则会引发退避和重试——浪费 token 和实际耗时。受限而稳定的并发比对抗 429 错误更划算。

全面成本可见性

每次扩充都会记录其真实的令牌数(包括缓存读取)及由此产生的成本。成本仪表盘会将这些数据转化为时间序列图表和按模型细分的明细,让你清楚看到花费去向,并确认缓存和范围限定确实发挥了作用。你看到的价格就是账单价格;原始的 provider 成本以及任何平台加价都保持透明。