Token 消耗降低 90%:OpenClaw 降本增效实战指南

· 编程技术杂谈

现在大语言模型用得越来越多,大家慢慢发现每次调用都会花不少 Token,这直接带来了成本压力。不管是用云上的 API 还是自己搭模型,只要和模型对话,就会产生计算和网络开销。尤其是在用户问得多、上下文很长或者需要多轮聊天的场景里,Token 很快就用掉一大把,账单也跟着涨起来。

我们最近在内部项目里试了 OpenClaw —— 这是一个专门帮人减少大模型调用开销的开源工具,结果真的把 Token 总用量压到了原来的十分之一,也就是减少了 90%。


一、找出 Token 浪费的“隐形源头”

想省 Token,得先知道它到底花在哪儿了。很多人只盯着用户输入的部分,其实真正吃掉大量 Token 的,往往是系统给模型的指令、保存的聊天记录、重复的上下文,还有模型自己啰嗦的回答。

举个例子,在一个客服问答系统里,用户每次提问平均才 30 个字左右(按 Token 算),但因为系统提示写得太详细——比如规定了角色、格式、还加了好几个例子——再加上系统默认保留最近十轮对话,导致每次请求差不多用了 2000 个 Token。可实际上,对当前问题真正有帮助的内容,可能连 200 个都不到。

说白了,就是塞了太多没用的信息进去,白白浪费资源。


二、OpenClaw 的做法:准确、轻量、能动态调整

OpenClaw 不是简单地把提示删短,而是用了一套聪明的办法,在不影响回答质量的前提下,自动挑出有用的信息、去掉多余的,还能记住关键内容。它的核心思路有三点:

1. 按意思挑出相关的历史内容

一般系统会固定保留最近几轮聊天,不管有没有用。但 OpenClaw 会看用户现在问的是什么,然后从过去的对话里找出最相关的几句。比如用户问“上次说的退款进度有更新吗?”,系统就会优先拿出提到“退款”“订单号”或“工单状态”的那几条,而自动忽略之前聊天气、打招呼或者推荐产品的部分。

这个功能靠一个很小的语义模型(比如 Sentence-BERT)实现,算得快、占资源少,却能大幅砍掉无关内容。

2. 根据任务用最简单的提示

我们不再用一套长篇大论的提示应付所有情况。OpenClaw 会先判断当前是什么类型的任务——是回答问题、总结内容、写代码还是翻译——然后只加载最必要的几句话。比如在回答事实类问题时,提示可以简化成:“你是个准确又简洁的助手。只根据你知道的信息回答,不知道就说‘不知道’。”

同时,它还能在运行时自动填入用户 ID、时间这些信息,不用每次都写进提示里,这样也能省下不少 Token。

3. 控制回答别太啰嗦

大模型有时候会讲一大堆,其实很多话都是重复或者没用的。OpenClaw 会先看看用户的问题难不难,再决定让模型回答多长。像“今天北京多少度?”这种简单问题,就限制它最多说 20 个词;如果是“帮我写个爬虫脚本”这种复杂请求,才允许它多说点。

除此之外,我们还在后面加了个小处理步骤,把模型生成的回答再精简一下——比如删掉重复的句子、合并意思差不多的话——这样既保留了重点,又让回答更短。


三、实际效果:千次请求从 15,000 降到 1,500 Token

我们在一个每天要处理 10 万次请求的内部知识库系统里做了测试,结果很直观:

这是因为我们去掉的是废话,留下的是干货。用户反馈说回答更快、更准,体验反而更好了。


四、怎么开始用 OpenClaw

OpenClaw 已经开源了(去 GitHub 搜 “OpenClaw” 就能找到),支持现在主流的大模型接口,像 OpenAI、Anthropic、Ollama、vLLM 都能用。上手也很简单,三步就行:

  1. 安装命令:pip install openclaw
  2. 创建一个上下文管理器,把你的模型客户端传进去;
  3. 把原来直接调 API 的地方,换成 openclaw.invoke(query, history)

这个工具很灵活,你可以自己改规则、换提示模板,甚至用自己的语义模型,轻松适配不同业务。


最后说一句

省钱不是牺牲体验,而是把没用的东西去掉,只留真正重要的。OpenClaw 的实践说明,只要方法对,完全可以在回答质量不变甚至更好的情况下,把 Token 花费压到原来的十分之一。

现在做 AI 应用,光“能跑”已经不够了,还得“跑得省、跑得稳”。这类工程上的小改进,积少成多,就能带来大变化。希望 OpenClaw 能帮你做出更高效、更划算的智能系统。