VibeCafé
· Claude Code· 通用

一句更短的 Prompt 真的能省钱吗?我做了一个实验

网上充斥着"prompt 越短越省钱"的省钱攻略——但实测下来,短 prompt 的真实省钱效果远不如你想的。这篇用一个对照实验告诉你哪些 prompt 优化是真省钱,哪些是 placebo。

经常看到推文说「学会写更短的 prompt,每月省几百块」。我自己也被这种说法影响过——花了一周精简 prompt,结果账单只降 3%。

后来我设计了一个对照实验,搞清楚到底是哪些 prompt 优化真省钱、哪些是 placebo。这篇是结论。

实验设计

我选了 5 个真实开发任务(写一个组件、修一个 bug、加一段单元测试、重构一个函数、写一份 README)。每个任务用两种 prompt 各跑 5 次,对比 Token 消耗:

  • Verbose 版:60-100 字的详细 prompt,包含背景、目标、约束、示例
  • Terse 版:10-20 字的精简 prompt,只说核心要求

跑的环境是 Claude Code(Sonnet 4.6),打开同样的项目,使用相同的 CLAUDE.md。

实测结果

任务 Verbose 平均 Token Terse 平均 Token 差异
写一个 React 组件 142,500 138,200 -3%
修一个 bug 487,300 471,800 -3%
加单元测试 89,400 86,100 -4%
重构一个函数 251,900 248,000 -2%
写 README 78,200 76,500 -2%

平均省 3%。听上去几乎没省。

为什么?因为整个 input Token 里你打的字只占很小一部分。一次 Claude Code 调用的 input 包含:

  • 系统提示(约 5K Token)
  • CLAUDE.md(你项目里多大就多大,可能 1-10K)
  • 当前文件树(5-50K Token,看项目大小)
  • 你之前的对话历史(5K-500K Token)
  • 你刚发的这条消息(30-300 Token)——这就是你优化的部分

你字数从 80 字缩到 15 字,省了 130 Token。但当前 input 总量是 50 万 Token——130 / 500000 = 0.026%。

但如果是高频、循环调用呢

短 prompt 的省钱效果在一种特殊场景下显著:循环调用

比如你跑一个 Agent 任务,模型 100 次工具调用,每次调用都包含同样的初始 prompt——这时候 prompt 短一点,每次循环都受益,累计能省一些。

但即使在这种场景下,缓存机制让重复部分基本走 cached input 价格(10% 原价)。100 次循环里,prompt 那部分省的钱可能还不够买一杯咖啡。

Verbose vs Terse 的真正区别

实验里一个意外发现:Verbose 版的成功率更高

5 次试验里:

  • Terse 版:3 次一次到位,2 次需要补充澄清
  • Verbose 版:5 次都一次到位

补充澄清意味着你要再发一条消息——这条消息的成本(按当前 input 总量)比"你最初省下的字"高 1000 倍。

所以更长的 prompt 一次说清楚 vs 更短的 prompt 来回澄清,前者总账更便宜

真正能省钱的 prompt 优化

我做完这个实验之后整理出"真省钱"的 prompt 行为:

1. 把约束写明确(增加字数但减少返工)

不是「写一个登录页」,而是「写一个登录页面,使用 Tailwind,邮箱+密码字段,错误时下面显示红色提示,提交后调用 /api/auth/login,不要写 HTML form 用 React 组件」。

字数翻倍,但减少了 60% 的来回澄清。总 Token 实际下降。

2. 限定文件范围(减少 Agent 探索)

「只改 src/auth/login.tsx 这个文件,不要碰其他文件」——明确边界让 Agent 不去 grep 全仓库,减少探索性的工具调用。

这是真的能省 30-50% Token,因为 Agent 探索阶段是大头。

3. 要求简洁输出(output token 是大头)

「只给我代码,不要解释」——把 output Token 直接砍 40%。Output 的单价是 input 的 5 倍,省的钱比省 input 多得多。

这是省钱效果最明显的一项——单条规则月省 20-40%。

不要走火入魔

省 prompt 字数是一种"看起来在优化"的伪优化。真省钱的不是"prompt 写得短",而是:

  • 缓存命中率高(占节省的 35%)
  • Output 控制(占 20%)
  • 模型档位选对(占 15%)
  • 上下文范围限定(占 12%)

这四项加起来 80% 的省钱效果,prompt 字数顶多 5%。

怎么验证你自己的优化效果

实验需要数据。我做这个实验也是因为有数据基础——Vibe Usage 把每次会话的 Token 数都记下来,能让我精确对比"两种 prompt 跑同一个任务的差异"。

如果你想做自己的省钱优化实验,把 Vibe Usage 装上——它每条会话都有完整 Token 数据,做对照实验非常方便。

不要只看"我感觉这样省钱"——做一周对照实验,数据告诉你真实效果。

一个反话

如果你的 prompt 都短到「写个登录页」「修这个 bug」——你应该让它们更长一点,而不是更短。

更长的 prompt 提供更多约束,减少澄清次数,结果反而省钱。我自己 prompt 字数中位数从最初的 15 字涨到现在的 80 字,月账单反而降了。

相关阅读