如果你也把OpenClaw这类自主代理框架接进了自己的日常工作流,估计迟早会面对这样一个灵魂拷问:明明号称自动化帮我省时间,可每执行一个任务链条,云端模型计费就一路火花带闪电,这到底是在帮人省钱,还是在帮模型厂商赚钱?我第一次在账单里看到一天几十次任务执行的token汇总时,也确实愣了几秒。把这个问题拆开看,比单纯骂"厂商很赚"更有价值:自动化的链条到底是怎么消耗模型的,每一步都调云端模型是否真的是唯一选择,以及怎么算才算出真实的"划算"。
这篇文章就围绕这个话题展开,目标读者不是只想看结论的人,而是真正在跑OpenClaw这类代理、会看账单、也想把成本压下来的开发者或重度用户。文章会先拆解任务链条中的模型调用逻辑,再用一个具体模拟任务从头到尾把账算清楚,之后讨论省时间与花token之间的真实冲突,最后给一套可以直接抄走的降本配置和排障方法。
1. OpenClaw 的自动化链条,为什么每一步都在调云端模型
1.1 一个看起来普通的任务,在代理框架里是什么样子
先说个痛点:很多人第一次用OpenClaw时,以为它是"一个任务,一次调用"的傻瓜接口,结果跑起来才发现,它内部是这样循环的:先接收一个自然语言指令,把大目标拆解成若干子步骤,接着决定下一个动作是读文件、调API还是执行命令,执行之后把结果交还给模型,让模型判断是否完成、是否需要修正,然后才进入下一步。这个循环在业内叫Agent Loop,本质上是一个"拆解—执行—观察—再决策"的闭环。
比如你让它"整理10封邮件,提取待办并排优先级",它大概率不会一次性吐出一份完美清单,而是先读取邮件列表,再逐封读取内容,随后总结、比对、去重、排序,最后生成清单。每一个环节里,模型都在参与:读目录需要模型决定点哪封,读正文需要模型提取重点,写清单需要模型组织语言。结果是,任务链条一旦铺开,云端模型被调用的次数不是1次,而是5次、10次甚至更多。
这解释了为什么"每步都计费"不是OpenClaw设计者的恶意,而是当前这类自主代理框架的天然形态:要完成一个多阶段任务,模型必须介入每个判断点。问题是这一设计在方便开发者的同时,也为成本埋下了伏笔——步骤越多,token总量就越大,两者几乎成正比。
1.2 计费跟着Token走,步骤多成本自然线性涨
云端模型计费的基本单位是token,不是"调用次数"。而一次调用内部又包含两部分:输入token(提示词、历史对话、工具返回结果)和输出token(模型生成的内容)。输入token通常比输出token便宜很多,但在这个架构下,真正会放大的恰恰是输入token。
为什么?因为Agent Loop每一轮都会把之前的执行结果、工具输出、系统提示重新发给模型。上下文窗口只增不减,到了第三步,模型看到的可能是第一步的全部内容加上第二步的新结果。这本身就意味着,每多走一步,下一步的输入token就比上一步更重。再加上工具返回的内容往往很啰嗦,比如一个目录列表可能包含几百个文件名,而这些文件名的绝大部分对当前判断没有直接意义,但依然被完整送进了模型。
所以"每一步都要调云端模型计费"这句话,准确说是"每一步都在用当前完整上下文重新问模型一遍"。这种机制下,成本不是简单的步骤数乘单次价格,而是步骤数乘逐级膨胀的输入量。理解了这一点,才能理解后面所有优化策略为什么都围绕"减少步骤、压缩上下文、避免重复读取"展开。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 算一笔教科书级的成本账:从10封邮件到一份待办清单
2.1 模拟任务的链条拆解与Token消耗估算
为了避免空谈"烧钱",我们用一个完全虚构但非常典型的任务来做成本拆解:任务目标是"读取本地邮箱的10封邮件,提取其中的待办事项,按优先级排序后输出一份清单"。我特意选这种看起来很小的任务,因为它最能反映日常自动化的真实开销。
以我在本地模拟环境里的实测流程为参考,OpenClaw处理这个任务大致会经历这么几个阶段:
- 系统提示 + 用户目标描述:固定开销,输入约1200 token,输出约80 token。
- 读取邮件目录,决定先看哪封:输入含目录列表,约2200 token,输出约120 token。
- 逐封读取邮件正文并提取要点:每封邮件输入约2500到3500 token(正文+上一轮结果),输出约200 token,10封合计约30000 token输入,2000 token输出。
- 汇总所有待办,去重合并:输入约12000 token,输出约600 token。
- 按优先级排序,生成最终清单:输入约8000 token,输出约800 token。
这个流程一共14次模型调用,累计输入token约5.5万,输出token约0.4万。你看,一个听起来"快得很"的任务,实际已经有接近6万token的体量。如果任务中途模型判断某封邮件需要再读一次,或者排序逻辑反复调整,这个数字还会继续上涨。
2.2 把价格代入:单次执行真的不贵,但别只看单次
价格我从当前主流公有云模型服务的常见报价里取一组有代表性的数字:旗舰级模型输入约3美元/百万token,输出约15美元/百万token;轻量级模型输入约0.15美元/百万token,输出约0.6美元/百万token。这里不绑定任何特定厂商,只是用贴近市场平均水平的价位来做测算。
按旗舰级模型算,刚才那个6万token的任务成本是:
- 输入:55000 / 1000000 × 3 = 0.165美元
- 输出:4000 / 1000000 × 15 = 0.06美元
- 合计:约0.225美元
单次听上去确实很便宜,连一瓶水都买不到。但问题在于"高频自动化"的真实场景不是一次两次。假设你设置了每天早上自动整理邮件,一个月22个工作日,那就是22次,成本约5美元。听起来依然不多。但如果这个任务从日更变成每小时一次,或者你同时跑了5条类似的自动化流水线,月成本就变成:0.225 × 24 × 30 × 5 ≈ 810美元。
只看单次成本是典型的计费幻觉,真正需要看的是一个任务在单位时间内的调用频率。这也是标题里"自动化到底帮谁赚钱"的关键:低频率高价值任务,OpenClaw的确在帮你省钱;高频率琐碎任务,如果不做成本优化,厂商的账单很快会赶上甚至超过你节省的人力成本。
2.3 别忘了失败重试和上下文膨胀这两个隐形炸弹
刚才的测算是"顺利执行一次"的乐观数字,真实环境里必须把失败重试和上下文膨胀算进去。先说失败重试:模型在某个环节判断失误,比如把一封无关邮件当成了待办来源,或者工具返回格式不符合预期,OpenClaw会重新执行相关步骤,而不是从零开始。大多数框架还会保留错误上下文,这意味着第二次尝试的输入token比第一次还大。以我的经验,一次平均需要1.5次重试的任务,总token往往不是1.5倍,而是2倍上下。
再看上下文膨胀:即便不失败,每轮对话都会把历史记录重新塞进输入,如果任务链条有20步,第20步的输入token可能已经超过10万。此时单步的成本就已经超过任务前期好几步的总和。所以我通常建议所有用OpenClaw的人先别纠结模型单价,先盯着两个数字:单任务总token量,以及最大上下文taken比例。后者才是成本失控的根源。
3. 到底在帮谁赚钱:省时间与花Token的拔河
3.1 用ROI模型替代"省钱"这个模糊说法
"省钱"这个词太笼统,真实情况是"你的时间值多少钱""这个任务如果不自动化,需要外包多少钱"。我自己更习惯用一个朴素的投资回报公式来判断:
净收益 = 自动化节省的时间价值(或外包成本) − 云端模型调用成本 − 配置与维护成本
只有这个数字为正,自动化的存在才合理。比如我每天手动整理邮件需要15分钟,按我自己的时间单价(哪怕是主观折算)约等于6美元,自动化每次只花0.225美元,那么一次执行就净赚约5.8美元,尽管模型厂商确实赚走了0.225美元。这不是"帮厂商赚钱",而是你用小额服务费换取了更大的人力收益。
反过来,如果一个任务每次只省2分钟,却要花0.5美元的模型费用,那这个自动化流程本身就是负收益。更别提配置它可能还花掉你两小时。所谓"省钱还是赚钱"的争论,本质上是在问:你有没有认真量化过任务频率、单次耗时和模型成本这三者的关系?
3.2 哪些任务值得放给OpenClaw,哪些任务纯属浪费
根据我观察到的使用习惯和大量账单记录,可以给出一个比较粗糙但实用的分类。
值得放给OpenClaw的任务通常具备这几个特征:一是链条长,人工操作可能需要二三十次点击,而模型调用只需几个步骤判断;二是输入内容是文本为主,比如整理文档、抓取网页摘要、生成周报初稿,这些场景大模型的优势明显;三是任务失败影响可控,即使模型判断错,也只是多花几次调用,不会造成业务事故。
纯属浪费的任务则相反:一类是极短且规则明确的动作,比如把某文件改个名字再复制到另一个目录,这种需求直接用脚本做,一次成本几乎为零,塞给OpenClaw纯属杀鸡用牛刀;另一类是涉及大量结构化API调用和精确计算的场景,模型每一步都可能出错,重试成本极高;还有一类是任务本身只需要一次性完成,用一次人的操作3分钟搞定,而配置自动化却要两小时,怎么算都不划算。
3.3 模型厂商赚钱,不代表自动化对你不划算
很多人在算这笔账时容易陷入二元对立:要么认为OpenClaw是割韭菜,要么认为云端模型计费是万恶。实际上,模型厂商按token收费,和在商店买工具按件付费本质一样。你用昂贵的电钻拧一颗螺丝很浪费,但用这台电钻装了一整屋柜子就很值。OpenClaw这种架构也一样,它的设计目标是在复杂长任务上替代人工判断,而不是取代所有廉价脚本。
所以我的看法是:模型厂商肯定从你的每一次调用中获利,这是它的商业模式,没有问题。真正需要警惕的是,你让OpenClaw以自动化的名义,制造了大量低价值的token消耗。厂商赚的是这种低价值消耗里的钱,而这段钱本来可以省下来。换句话说,不是自动化不该用,而是自动化必须被设计得"能用最少模型判断覆盖最多的确定性操作"。这样厂商虽然还是赚,但你花出去的每一分都在换取真实生产力。
4. 成本打下来的实操方法:把预算写进执行规则
4.1 任务编排剪枝:先想清楚哪些环节不需要模型参与
降本第一原则不是换更便宜的模型,而是减少模型参与的环节。你可以在OpenClaw里给每个任务画一张"步骤清单",然后逐个问:这一步真的需要大语言模型判断吗?可不可以直接用正则、Shell命令、文件读写、模板渲染这类确定性工具完成?
一个很常见的例子:需要从本地JSON文件里读取某个字段,传统做法是让模型"看"文件并提取,这会产生几百个输入token。正确做法是写一个jq命令直接取出字段,再决定是否需要模型分析。如果模型只负责分析最终字段,调用次数就能从3次降到1次,输入token大概能减少一半以上。
任务编排剪枝的核心,是把OpenClaw当作"指挥者"而不是"执行者"。它不应该亲自去读每一个文件、算每一道计算,而是应该把确定性操作交给代码和命令行工具,只保留真正需要语义理解的判断点。我实测过不少任务,剪枝之后token总量能降到原来的30%到50%,而且任务稳定性更高,因为确定性工具不会产生幻觉。
4.2 模型路由与上下文治理:别让旗舰模型干所有活
剪完之后,剩下的模型调用也要分级。不是每一步都要旗舰级模型的能力。OpenClaw里我建议配置一条简单的路由规则:涉及意图理解、复杂规划、最终文案生成的环节用旗舰级模型;而日志解析、字段抽取、格式转换、摘要雏形这种重复性强、语义要求低的环节,全部甩给轻量级模型。
拿刚才的邮件整理任务举例,逐封邮件提取待办完全可以交给轻量级模型,因为它只需要做"从正文里找到包含截止日期或行动动词的句子",不需要很强的推理能力。只有最后汇总排序、去重合并那一步才值得用旗舰级模型。这两级的成本差距有多大?前文报价里旗舰与轻量级相差约20倍,一个6万token的任务,如果其中70%的输入token走了轻量级模型,总成本能从0.225美元降到0.05美元左右,几乎是一个数量级的差距。
上下文治理同样重要。一个我很推崇的规则是:每轮工具返回结果后,先做一次摘要或截断,再塞给模型。比如命令行返回了3000行日志,直接当作文本给模型看,下一步的输入token立刻爆炸;正确做法是在工具层用grep过滤出错误行,或者让模型自己只提取关键状态,把原始返回落盘保存,只把摘要放回上下文。这样既保住上下文信息,又控制token增长。
4.3 一个带成本控制的最小配置示例
如果你想知道上面这些策略怎么落到OpenClaw里,我可以给一个最小可用的配置模板。它不绑定某个具体版本,主要展示思路。你可以根据自己的任务微调。
yaml复制task:
name: email_todo_digest
max_steps: 15 # 硬性限制:整个任务最多执行15步
max_input_tokens_per_step: 6000 # 单步输入上限,超过则要求工具先做摘要
max_total_cost_usd: 0.1 # 单次任务成本熔断,防止失控
currency_estimate: usd
model_router:
planner: flagship_model # 负责任务拆解、最终输出
extractor: light_model # 负责重复性文本提取、摘要
fallback: light_model # 默认兜底,防止误用旗舰
context_rules:
auto_summarize: true # 每3轮历史对话自动压缩成摘要
drop_tool_log_over: 1024 # 工具日志超过1024字符则先过滤,不直接入上下文
cache_same_input: true # 相同输入直接复用上一次输出,不重复调用
guardrails:
allow_human_check: true # 关键步骤要求人工确认后再继续
abort_on_repeat: 3 # 同一子步骤连续失败3次,终止任务
这段配置里,max_steps是防止Agent Loop走到天荒地老的关键护栏;max_total_cost_usd是预算熔断,让任务在成本超标时直接停止,而不是沉默地继续烧token。model_router把不同步骤分配到不同等级模型,能省下大部分费用。context_rules中的auto_summarize与drop_tool_log_over,对应的是此前反复提到的上下文膨胀问题。
4.4 预算熔断、人工审批与执行日志的配合
配置文件只是第一步,真正让它发挥作用的是在执行过程里加上可观测性。我见过不少同学设置了max_total_cost_usd,却从不看执行日志,等到月底账单出来才发现熔断阈值设得太高,等于没设。正确做法是让OpenClaw在每次任务结束时输出一份token明细,至少要包含每步的输入token、输出token、使用的模型等级和对应成本。你不需要做到很复杂,只需把汇总数据打在一个日志文件里:
bash复制task_id=20250610-001 steps=14 total_input_tokens=52100 total_output_tokens=4100 cost=0.062USD status=completed
这个输出能让你快速定位成本异常点。如果发现某一步输入token异常高,就去查那一步是不是把完整日志塞进了模型;如果发现重试次数多,就去查是模型判断错了还是工具返回格式不稳定。人工审批点也很有价值,尤其是在任务链条较长的情况下,把"执行关键动作"和"生成最终输出"这两类步骤设置为需要人工确认,可以避免模型在错误方向上连续烧掉后面几十步的token。
5. 高频翻车现场与排查技巧实录
5.1 常见问题速查表
这里我把最常见的成本事故和对应排查方向整理成一张速查表,长期跑OpenClaw的人基本都会遇到其中几个。
| 现象 | 直接原因 | 排查与解决 |
|---|---|---|
| 单任务token比预期高5倍以上 | 工具返回日志被完整塞入上下文 | 设置drop_tool_log_over,执行前先过滤 |
| 任务明明完成还在继续调用 | 模型没识别到"任务已结束" | 在系统提示里显式声明结束条件,增加stop信号 |
| 突然多出大量重试 | 工具输出格式不稳定 | 改用结构化输出解析,或者让轻量模型先做格式标准化 |
| 上下文越滚越大,越来越慢 | 历史对话从不压缩 | 开启auto_summarize,每轮更新摘要 |
| 同一子步骤反复执行 | 模型误判"上一步未完成" | 给每个步骤写入完成标记,允许人工强制跳过 |
| 月底账单远超预算 | 熔断阈值设置过高或没设 | 用max_total_cost_usd和max_steps双下限,定期看日志 |
除了表里这些,还有一个很容易被忽略的问题:模型输入token的计数方式。很多计费面板按字符估计,但token与字符不是一一对应,特别是中文内容,一个汉字通常对应1到2个token,标点和空格也会占额度。如果你只看字符数,实际token可能比想象中多30%。所以所有成本估算都要以真实计费日志为准,不要按文字量拍脑袋。
5.2 我踩过的几个坑和最终的兜底策略
我自己在跑模拟项目时,踩得最深的一个坑是"重复读取同一份资料"。任务要求分析一份80页的文档,按理说应该把文档一次性读完,提取要点后放入上下文,后续步骤直接基于要点工作。但我一开始没做摘要,导致每走一步都把整份文档又塞给模型一次。80页文档的token体量非常大,一个只有8个环节的任务,硬生生烧掉了接近百万token。后来我把文档读取和要点提取单独作为一个步骤,把提取结果写入缓存,后续步骤只引用缓存ID,成本立刻降了下来。
另一个坑是"失败即重来"。模型在某一步解析错了数据,OpenClaw默认会把这个错误信息也塞进上下文,然后重新执行整个子流程。结果错误信息占了大量token,还干扰后续判断,越错越离谱。我的兜底策略是:一旦某个子步骤重试次数达到设定阈值,立刻终止任务,转人工处理,而不是让模型在错误路上越走越远。宁可人工接手一次,也不要让费上百次调用来试错。
最后一个经验是关于预算意识的"脑内植入"。我会把任务成本上限直接写进系统提示,比如"本次任务总预算不超过0.1美元,超过后必须精简步骤或改用轻量模型"。模型看到这个约束后,会倾向于更早总结、更少重试,甚至主动压缩输出长度。这听起来有点玄,但实际效果很稳定:成本约束本身就是一种prompt,它能让模型在决策时自动权衡。与其事后心疼账单,不如把成本观念前置到任务设计里。
跑到这里,标题那个问题的答案其实已经可以落地了:OpenClaw的自动化并不天然帮你省钱,也不天然给模型厂商送钱,它只是一根杠杆。杠杆用得准,0.2美元换回15分钟,是你赚了;杠杆用得稀里糊涂,每天造出几十万token只处理了几条重复信息,那厂商当然笑纳你贡献的利润。把预算写进配置、把模型分流到不同级别、把确定性操作从模型手里抢回来,这三件事做扎实,自动化才真正站在你这边。
