Token到底是什么?大模型计费与上下文长度的关系
第一次看大模型的账单,几乎都会愣一下:明明只发了几句话,怎么消耗了几千 token?聊到第十轮,同样的提问比第一轮贵了好几倍;上传一张图,token 又突然涨一截。
问题在于 token 既不是”字”,也不是”次”,而且计费口径跟大多数人以为的不一样。把这三件事拆开——切分规则、双向计价、上下文重发——账单就完全可预测了。
第一步:token 是子词,不是字符
模型读不进文字,只读得进整数编号。分词器(BPE 一类)先把文本切成词表里的片段,每个片段映射成一个 token id,模型预测的就是下一个 id。
几个能用的经验值:
- 英文:1 个 token 约等于 4 个字符或 0.75 个单词,常见词各自成块,生僻词会被拆成好几块;
- 中文:不同模型词表差异很大,大致 1 个汉字对应 0.6~1.5 个 token,标点、数字、代码另算;
- 数字与标识符最吃亏:”20261112″ 可能被切成 5~6 个 token,一段 UUID 能吃掉几十个。
所以”我写了 500 字,应该收 500″这个预期从一开始就不成立。要精确估算,用模型对应的官方 tokenizer 跑一遍,别按字数乘系数。
第二步:输入和输出分开计价,而且不等价
一次调用的消耗是两段之和:总 token = 输入 token + 输出 token,两段的单价通常不同,输出侧往往是输入侧的数倍(各家比例不同,以官方价目表为准)。
原因在算力:输入可以整段并行处理,输出必须一个 token 一个 token 地串行生成,每一步都要重跑一遍前向计算。
这带来一个很实用的判断:省钱的优先级是先砍输出,再砍输入。要求模型”简要回答””只返回 JSON 字段,不要解释”,比反复精简提示词见效更快。同理,让模型把 800 字原文复述一遍,成本远高于让它答”是/否”。
第三步:长对话为什么越聊越贵——API 是无状态的
这是最容易误解的一点。模型本身不记得上一轮说了什么,所谓”多轮对话”,是客户端每次把完整历史 + 新问题重新打包发给服务端。
假设第一轮系统提示 200 token、问答各 100,第十轮时输入里已经堆了前面九轮的全部往返内容,输入侧轻松翻到两三千 token。哪怕你这一轮只问了五个字,计费仍按整包算。
这里要区分两个概念:服务端推理确实用 KV Cache 缓存了前面算过的注意力键值,避免重复计算、降低延迟;但缓存是工程优化,不是计费折扣(部分厂商提供显式缓存命中折扣,属于单独的产品规则,不要默认它存在)。上下文窗口 8K / 32K / 128K 说的是”一次最多能塞进去多少 token”,既是容量上限,也是成本上限,而不是一块免费附赠的内存。
还有个隐藏成本:注意力计算量随序列长度近似平方增长,长上下文不仅更贵、更慢,还容易出现”中间迷失”——塞在长文本中段的信息被模型忽略。所以”窗口越大越好用”同样是个误区。
第四步:图片和视频怎么折算
多模态模型会把图像切成小块(patch),每块编码成一个视觉 token 再送进模型。一张 512×512 的图,按 32×32 的 patch 切就是 256 块,再加上位置与分隔标记;高分辨率图通常先被切成分块(tile)再编码,于是”上传一张图”往往等价于几百到上千 token。视频按帧采样,按帧数线性叠加。
记住一条:视觉 token 也占上下文窗口、也按输入计价。批量传图前先看清楚高清模式的分块规则,成本差异常常是数倍。
第五步:可操作的五个省钱动作
- 历史裁剪与摘要:只保留最近 N 轮,更早的压成一段 100~200 token 的事实摘要。多数任务在 6~10 轮之后,早期细节已无参考价值。
- 系统提示去水分:把重复的礼貌用语、长篇示例压成结构化条款;稳定的长前缀放到支持缓存的位置,提高命中率。
- 约束输出格式:限定字数、禁止复述问题、用枚举值代替自由发挥,直接砍掉最贵的那一段。
- RAG 只塞命中的片段:别把整份文档塞进上下文,检索后取 top-k 片段(常见 3~5 段、每段几百 token)即可。
- 按任务分级选模型:分类、抽取、格式校验这类活交给小模型,把长上下文留给真正需要的推理任务。
上线前建议加一个简单埋点:每次调用记录输入/输出 token 数和会话轮次。账单异常时,一眼就能看出是提示词太长、历史没裁,还是某轮输出失控。
结论
三句话收束:token 是分词后的子词单元,不是字数;输入与输出分开计价,输出更贵;多轮对话每次都重发全部历史,所以越聊越贵。上下文窗口是容量与成本的上限,不是免费额度。控制成本的关键不在”少说两句”,而在管理会话状态和输出长度。
在 AI广告 的批量脚本与素材标注场景里,这套账算清楚之后,通常会把长文档改成检索片段、把自由输出改成固定字段,单次调用成本能压下一个量级。做自动化产线规划时,AIGC广告 的实践笔记里也会把 token 预算当成和显卡时长同等级的资源项来排期。