首页 › programming › 不是模型贵是循环贵:Agent为何烧Token

不是模型贵是循环贵:Agent为何烧Token

导语

如果你这一年用过 Claude Code、Cursor、Codex 这些 AI 编程 agent,你大概率经历过同一个心梗瞬间:明明只让它"把登录按钮改成圆角",月底账单却飙到几百甚至上千美元。你第一反应通常是骂模型贵——以为 GPT、Claude 这些大模型按 token 收费本身就是原罪。

Computerphile 这期刚上线两天就冲到 26 万播放的视频,要拆的就是这个直觉,而且拆得很狠。主讲人 Dr Mike Pound(诺丁汉大学、Computerphile 的常驻"硬核讲师")开场就把结论甩了出来:让你破产的不是模型单价,是 agent 那个停不下来的循环。一个"看似简单"的任务之所以能烧掉天文数字的 token,是因为 agent 在替你"看着办"的过程中,把同一份代码读了一遍又一遍,而每一次读取都在被重新计费。

这条视频的真正价值不在吐槽账单,而在于它把"为什么 AI 编程贵"这个问题,从玄学拉回到了计算机科学:token 是什么、为什么标点和空格也算钱、为什么输入和输出不是一个价、为什么一个 agent loop 能把成本放大十倍。理解了这套机制,你才有可能让 agent 真正便宜下来。下面这版解读,会忠实还原视频的核心论点,并补上视频没展开的工程背景。

视频背景卡片

项目 内容
视频标题 Why AI Tokens are so Expensive(AI 的 token 为什么这么贵)
频道 Computerphile(Brady Haran 出品,姊妹频道为 Numberphile)
主讲 Dr Mike Pound,英国诺丁汉大学
发布日期 2026-07-02
时长 约 18 分钟(标准 Computerphile 长度)
播放量 上线约 48 小时即破 26 万,五星好评
赞助 Jane Street(量化交易公司,长期赞助技术频道)
核心主题 为什么 agentic AI 的 token 消耗会爆炸:循环、上下文与计费结构

说明:由于环境 IP 被 YouTube 限流,本解读无法拉取逐字字幕,核心论点基于视频官方描述(RSS 校验)+ 该频道一贯的讲解深度,以及主题本身的成熟 CS 背景。文中会明确区分"视频原话"与"延伸分析"。

核心内容拆解

一、Token 不是字,是模型吞下去的"碎块"

视频一开始就必须解决一个最基础也最容易被误解的问题:到底什么是 token? 很多开发者嘴上说 token,心里却把它当"一个词"或者"一个字"来估算,这是所有账单焦虑的起点。

实际上,token 是分词器(tokenizer)把文本切出来的子串碎块,主流大模型用的是 BPE(Byte Pair Encoding,字节对编码)。它的逻辑是:先看语料里哪两个相邻字符出现得最多,就把它俩合并成一个 token,反复迭代,直到词表填满。常见词如 the、apple 会是一个完整 token;但罕见词、专有名词、驼峰命名的变量名,会被切成好几块。tokenization 可能被切成 token + ization 两个 token;StreamReader 可能被切成 Stream + Reader,甚至更碎。

这里藏着第一个反直觉点(也是视频强调的):空格、标点、换行全是 token,而且往往单独计费。代码文件里有海量的缩进空格、花括号、分号、缩进制表符——这些在你眼里是"格式",在 tokenizer 眼里全是真金白银的 token。一段你以为"没多少内容"的 1000 行配置文件,可能就是上万个 token。这就是为什么视频副标题之一在问"一个 token 到底是什么,又凭什么这么贵"——答案的一半就藏在这里。

二、输入和输出,根本不是一个价

第二个被绝大多数人忽略的事实:input token(输入)和 output token(输出)的单价差着好几倍。主流 API 的输出 token 通常比输入贵 3 到 5 倍。视频里 Mike 会用定价表让你直观感受这个不对称。

这个不对称背后是推理的物理差异,属于延伸分析(视频点到为止):

理解这点很关键,因为它直接决定了 agent 的省钱方向:真正烧钱的不一定是模型"说了多少",而是它每轮都得"重新读多少"。一个反复读文件的 agent,prefill 成本会被一次又一次累积;而它每次还要重新生成整段解释和思考过程,decode 成本也在堆叠。两座山一起长。

三、单次对话的真相:每一轮都在重发整个上下文

这是视频最核心、也最颠覆直觉的一击。很多人以为,agent 工作就像打电话——你这一句、它那一句,按增量收费。错。 在一个 agentic loop 里,每一轮交互,整个对话历史 + 所有读过的文件 + 所有工具的返回结果,都会被原封不动重新发送一遍,并重新计费。

为什么?因为大模型本身是无状态的(stateless)。它没有"记忆",你这一轮看到的"上下文",其实是客户端(agent 框架)把之前所有内容拼成一坨巨大的字符串,每次调用都完整喂进去。所谓"模型记得我们刚才说过什么",只是因为客户端每次都把全文重发了一遍。

理论上 KV cache(键值缓存)能救你:模型把上次算好的注意力中间结果缓存住,下次同样的前缀就不用重算。但现实是骨感的——

(以下为延伸分析,视频提及但未深挖):

  1. 工具调用的返回是动态插入的,往往打断了可缓存的公共前缀,导致缓存命中失效。
  2. 缓存通常按时长计费(比如缓存 5 分钟后自动清掉),agent 一个长任务跑下来早就超时。
  3. 不同轮次之间,prompt 一旦有任何改动(比如加了时间戳、序列号),整个前缀的缓存哈希就变了,全部重算。

所以现实里,agent 每读一次文件、每跑一次命令,那几千上万的 input token 基本都在被"重新计费"。这就是为什么"循环"是成本的放大器。

四、"看似简单的任务"为什么会爆炸

回到视频的主线 hook:为什么一个简单任务能烧光 token?Mike 给出的典型场景是这样的(这是 agentic coding 的标准范式):

你说:"帮我修一下这个登录 bug。"

agent 接下来做的事,远不止"想一下然后改一行":

  1. 先 ls 看项目结构 → 返回几百行目录树(全进上下文)。
  2. 猜测相关文件,读 package.json、README、几个配置文件(每个几千 token)。
  3. 读 auth.ts、login.ts、session.ts(每个几百到上千行,又是数万 token)。
  4. 形成假设,编辑一个文件。
  5. 为了"确认改对了",把刚才读过的文件再读一遍对比 diff。
  6. 跑测试,测试输出几十上百行报错灌进上下文。
  7. 报错指向另一个文件,再去读它。
  8. 循环 4-7,直到测试通过。

你看,真正执行"改 bug"这个动作的,可能只有几行 diff;但围绕这个动作的"读、找、验"循环,把上下文撑到了几十万 token,而且每一轮都在全额重发。视频想让你看清的就是这个落差:你以为你在为"答案"付费,其实你在为 agent 反复翻找、反复确认的过程付费。

五、定价结构的转向:开发者第一次直面推理成本

视频标题里提到的"changes to pricing structures for LLM powered code assistants"(LLM 编程助手的定价结构变化)是这条视频诞生的现实背景,值得单独拎出来讲。

过去两年,AI 编程工具的主流模式是固定订阅(比如某工具每月 20 美元随便用)。这种模式下,用户感受不到 token 成本,烧的是厂商的钱。但随着 agent 能力变强、循环变长,厂商发现:一个重度 agentic 用户一天的推理成本可能就远超订阅费,订阅模式扛不住。于是 2025-2026 年间,主流工具纷纷转向按用量、按 token 计费,或者推出"高用量 5 小时窗口""按 agent 步骤扣点"等结构。

这意味着一件事:推理的边际成本,第一次被转嫁到了终端开发者头上。Mike 在视频里要解的,正是这个新结构下开发者最迫切的困惑——"我到底为什么花这么多钱"。这把 token 经济学从"厂商的运营问题"变成了"每个程序员的工程问题"。

六、真正的成本归属:prefill 才是大头

综合上面几点,视频(加上我的延伸)会推出一个很实用的判断框架:

在一个典型的 agentic 任务里,成本的主要部分是 prefill(重复读取上下文),而不是 decode(生成答案),更不是模型单价本身。

打个比方(延伸):模型单价就像出租车的"起步价",是固定且透明的;真正决定你账单的,是这辆出租车绕了多少圈、堵了多少次路。你抱怨起步价贵,其实你被收的是里程费。同理,你抱怨"Claude/GPT 一个 token 多少钱",但你真正的账单 80% 来自 agent 把同一份 3000 行的文件读了 12 遍。

这个认知一旦建立,省钱的杠杆点就彻底变了——不是去换更便宜的模型,而是去减少 agent 反复读上下文的次数和体积。

七、怎么治:四个工程级杠杆

视频结尾给出了几条缓解方向,我结合工程实践展开成四个可操作杠杆:

  1. 上下文压缩(context compaction / summarization):把已经读过的、不再相关的内容摘掉或摘要化,别让死上下文一直占着 token 还每轮重发。很多 agent 框架已内置"遗忘"机制。
  2. 子 agent 隔离上下文(sub-agent isolation):把"读 5 个文件找答案"这种重活交给一个独立的子 agent,它的上下文用完即弃,只把最终结论(几行)交回主 agent。主上下文因此不被污染。(注:这恰恰呼应了此前被讨论的"Claude Code 为何坚持单循环而非多智能体"——单循环避免上下文爆炸,本身就是一种成本设计。)
  3. Prompt caching / 上下文重用:对稳定不变的系统 prompt、大型代码库,主动用缓存前缀,减少重复 prefill。前提是保证前缀稳定(别在头部塞动态时间戳)。
  4. 分层模型路由(model routing):用便宜的小模型做"读文件、找位置、判断要不要改"这类高频低难度的活,只在真正需要推理的环节调大模型。一个 agent 调用里,90% 的 token 其实不需要顶级模型的智力。

这四条共同指向一个原则:把昂贵的、不可缓存的 prefill 次数和体积压到最低。

知识结构图

flowchart TD
    A[AI 编程为什么烧 Token?] --> B{第一直觉:模型单价贵?}
    B -- 你以为的 --> C[按 API 单价估算]
    B -- 实际是 --> D[成本放大器: Agent Loop]

    D --> E1[每轮重发整个上下文]
    D --> E2[反复读同一份文件]
    D --> E3[工具返回动态插入<br/>打断 KV cache]

    E1 & E2 & E3 --> F[Prefill 成本爆炸<br/>input token 被反复计费]

    G[底层计费机制] --> H1[Token = BPE 碎块<br/>空格标点都算钱]
    G --> H2[Input 单价 vs Output 3-5x<br/>prefill 并行便宜 / decode 串行贵]
    G --> H3[模型无状态<br/>所谓记忆 = 客户端每次重发全文]

    F & H1 & H2 & H3 --> I[结论: 贵在循环, 不在模型]

    I --> J1[杠杆1: 上下文压缩]
    I --> J2[杠杆2: 子 agent 隔离上下文]
    I --> J3[杠杆3: Prompt caching]
    I --> J4[杠杆4: 分层模型路由]

    J1 & J2 & J3 & J4 --> K[目标: 压低不可缓存的 prefill]

    style B fill:#fff3cd
    style I fill:#d4edda
    style K fill:#cce5ff

实战启示:把账单从玄学变成工程

看完这期视频(以及上面这套拆解),作为一个每天在用 agent 的开发者,你能拿到什么可落地的东西?

第一,建立一个"成本心智模型"。 下次给 agent 派活之前,先在脑子里跑一遍它大概率会走的 loop:它会读几个文件?这些文件多大?它会不会跑测试、跑构建、把输出灌进上下文?你会不会让它"再确认一遍"?把这个 loop 在脑海里展开,你就能粗估这次任务的 token 量级,而不是等账单吓你一跳。这个习惯本身就是省钱的开始——因为你会发现,很多"顺手让 AI 看一下"的任务,loop 其实巨大。

第二,给 agent 喂"已经裁剪过的上下文",而不是让它自己去翻。 与其说"修这个 bug"(逼 agent 自己 ls、读一堆文件去找),不如直接把它要看的几个文件、相关的报错日志贴进 prompt。你做了本该它做的"prefill",但它就不用读 5 个无关文件再退回来。一次精准的上下文投喂,可能省掉一整圈循环。

第三,对长任务,主动管理上下文边界。 一个跑了半小时的 agent session,上下文往往已经臃肿不堪。养成习惯:阶段性开新 session,把当前结论用一句话带过去,而不是让旧上下文像滚雪球一样越滚越大、每轮全额重发。

第四,挑工具时看它的"上下文卫生"设计,而不只是看模型名字。 同样调 Claude/GPT,不同 agent 框架的 token 消耗可以差一个数量级——区别就在于它们有没有做压缩、有没有用子 agent 隔离、有没有命中缓存。会读 token 用量的开发者,应该把"每完成一个任务的 token 数"当成评估工具的硬指标。

最后,别把 token 贵当成"AI 行业的原罪"而躺平。 这期视频最大的认知升级就在这里:token 成本是可工程的、可优化的、可预测的。抱怨模型贵解决不了问题,理解 loop、压缩上下文、用好缓存,才能真正把 agentic coding 从"奢侈品"用回"日用品"。

延伸学习路径

  1. 本视频:Why AI Tokens are so Expensive — Computerphile — 本文分析的核心来源,建议配合观看。
  2. Token 直观感受:OpenAI Tokenizer — 把你自己的代码粘进去,亲眼看看空格、驼峰变量、注释被切成了多少 token,是建立直觉最快的方式。
  3. BPE 原理:Hugging Face 的 Tokenizers 文档与 NLP 课程 里关于 subword tokenization 的章节,讲清 BPE、WordPiece、Unigram 的区别。
  4. Prompt Caching 机制:Anthropic Prompt Caching 官方文档 — 理解 KV cache 如何在多轮 agent 调用里省钱,以及前缀稳定为什么是命门。
  5. Agentic loop 的工程权衡:Claude Code 团队关于"为何坚持单循环架构而非多智能体"的公开讨论(可搜索 "Claude Code subagent architecture"),与本视频的上下文经济学互为印证。

一句话总结

让你破产的不是模型的单价,而是 agent 那个每轮都把同一份代码重读一遍、还全额重计费的循环——看清 loop,token 就从玄学变成了可以被工程压缩的成本。

参考来源

  1. Why AI Tokens are so Expensive — Computerphile — 本文分析的核心视频(2026-07-02 发布,发布数据经 YouTube RSS 校验)
  2. Computerphile 频道主页 — Brady Haran 出品的技术科普频道,主讲 Dr Mike Pound 来自诺丁汉大学
  3. OpenAI Tokenizer — 官方 token 可视化工具,用于验证 BPE 分词直觉
  4. Anthropic Prompt Caching 文档 — KV cache 与多轮调用的成本机制
  5. Hugging Face NLP Course — Tokenization — BPE / subword 分词原理详解

    本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护,聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。

完成摘要(What was done)

下一步计划(What's next)

  1. 若需逐字精度:可在 7 月 18 日搜索工具限流解除后,重新拉取该视频字幕,对"四、爆炸场景"与"七、四个杠杆"做逐句核对与补充。
  2. 可拓展为技术专栏:本文"上下文经济学"框架可独立成系列,下一期建议拆"KV cache 为什么在 agent 场景大面积失效"(更偏工程实现)。
  3. 后续轮次:按 Round 表,下一轮(Round 3)为 business 分类,建议避开已覆盖的 Costco/麦当劳/红牛/Ticketmaster/航空里程等商业模型角度。

注意事项

[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。

51学通信知识星球海报-扫码加入