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 字,月账单反而降了。

相关阅读

相关阅读

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