十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Open Agents提示词缓存:如何降低50%以上的AI API成本

Open Agents提示词缓存:如何降低50%以上的AI API成本 Open Agents提示词缓存如何降低50%以上的AI API成本【免费下载链接】open-agentsAn open source template for building cloud agents.项目地址: https://gitcode.com/GitHub_Trending/op/open-agentsOpen Agents 是一个用于构建云端编程 Agent 的开源模板它的核心功能是通过提示词缓存Prompt Caching 工具结果压缩把多轮 Agent 对话中重复发送的大段上下文变成缓存读取从而在长任务场景下降低 50% 以上的 AI API 成本。对于正在用 AI SDK 构建编程助手的开发者来说这套开箱即用的上下文管理方案非常值得学习。为什么 Agent 的 API 账单会爆炸先理解成本从哪来 一个编程 Agent 的工作方式是循环读文件 → 搜索代码 → 改代码 → 再读 → 再改……每一步模型都要把完整的历史对话重新发一遍。会话越长每次请求的输入 token 就越多账单自然水涨船高。 关键洞察这些重复发送的内容里系统提示、工具定义、历史消息每一步几乎完全一样——它们天生适合缓存。提示词缓存是怎么省钱的以 Anthropic 模型为例首次把一段内容写入缓存写入略贵之后每次命中缓存读取只需正常输入价格的约1/10。一个跑了几十轮的编程任务命中比例越高省得越多——超过 50% 的降幅就是这么来的。Open Agents 的缓存实现两步打标整个机制集中在 packages/agent/context-management/cache-control.ts 的addCacheControl函数中思路非常清晰第一步给工具定义打缓存标记Agent 注册了 read、write、edit、grep、bash 等十几个工具工具定义每次请求都要重发。addCacheControl检测到是 Anthropic 模型时会只给最后一个工具打上cacheControl: { type: ephemeral }标记——因为 Anthropic 最多支持 4 个缓存断点多打反而会浪费额度。第二步给最后一条消息打标记每轮对话的新增内容都在末尾。给最后一条消息打标后缓存就能增量式地向前延伸上一轮写入的缓存这一轮直接命中读取只需为新增部分付费。这两步在 Agent 的每一步都被自动触发代码位于 packages/agent/open-agent.tsprepareStep: ({ messages, model }) ({ messages: addCacheControl({ messages, model }), }),对非 Anthropic 模型函数会原样返回消息完全无副作用跨模型切换也安全。第二招压缩工具结果让缓存更值钱缓存解决重复发送压缩解决内容太长。Agent 读文件、跑 shell 命令产生的工具结果动辄上千行但模型真正需要的往往只是结论。packages/agent/context-management/aggressive-compaction-helpers.ts 提供了一套激进压缩工具indexToolCalls给每个工具调用建立索引findPendingCompactionCandidates找出可以压缩的历史工具调用estimateCompactionSavings按约 4 个字符 1 个 token估算能省下多少 tokencompactToolData把过期的工具结果替换为一条简短的压缩提示。输入更小 → 每次缓存写入更便宜、上下文窗口更耐用这是缓存之外的第二重省钱。如何验证省了多少钱不用猜Open Agents 自带用量面板 用量统计在 packages/agent/usage.ts 中区分累加cacheReadTokens缓存命中和cacheWriteTokens新写入并在 Web 端的用量洞察中计算核心指标——缓存读取比例cacheReadRatio见 apps/web/lib/usage/compute-insights.ts 与 apps/web/lib/usage/types.tscacheReadRatio 缓存命中的输入 token ÷ 总输入 token在 Settings → Usage 页面就能看到这个数字。经验值该比例超过 50% 时你的长任务输入成本通常已省下一半以上。快速上手跑起来看看效果克隆仓库并安装依赖模板设计为 fork 后二次开发git clone https://gitcode.com/GitHub_Trending/op/open-agents bun install配置环境变量后本地启动cp apps/web/.env.example apps/web/.env bun run web发起一个多步骤的编码任务例如重构这个模块并修好测试结束后打开用量页面观察cacheReadRatio。更多部署细节见 README.md整体三层架构Web → Agent → Sandbox介绍在 docs/agents/architecture.md。小结把这三点抄进你的 Agent省钱手段位置效果工具定义末尾打缓存标记cache-control.ts工具定义零重复计费每条消息增量缓存open-agent.ts历史消息按 1/10 价格读取过期工具结果压缩aggressive-compaction-helpers.ts缩短上下文、降低写入成本提示词缓存不是黑科技而是只让新增内容付全价的简单工程。Open Agents 用不到 200 行核心代码把这件事做成了可复用的模板这正是它作为云端 Agent 模板最有价值的部分之一。【免费下载链接】open-agentsAn open source template for building cloud agents.项目地址: https://gitcode.com/GitHub_Trending/op/open-agents创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表