很多人第一次听到token,是在用AI的时候。

比如你让AI总结一份很长的PDF,它可能提示“内容太长”。你让AI写一篇长文章,它有时候写到后面会忘记前面说过什么。你看一些AI工具的收费说明,又会发现它不是按“字数”收费,而是按token收费。

token到底是什么?

它是一个字吗?是一个词吗?还是一段话?

简单说,token可以理解成AI处理文字时使用的“基本颗粒”。

AI不是像人一样按一篇文章、一页纸、一个段落来理解文本,而是先把文字切成一个个token,再进行读取、理解和生成。

所以,token不是一个离我们现实生活很远的技术词,它会直接影响AI能读多长的内容、写多快、花多少钱,以及本地模型要占多少内存。

一、什么是token

 token 影响 AI 的速度、成本、上下文和内存
token 影响 AI 的速度、成本、上下文和内存

第一:token不是固定等于一个字。

在中文里,一个token可能接近一个字,也可能是一段词的一部分。在英文里,一个token可能是一个单词,也可能只是单词的一部分。

举个例子,“今天天气不错”这句话,模型不一定是按“今天/天气/不错”这样符合我们语感的方式切分,它可能切成“今天”“天气”“不错”,也可能切成更细碎的片段,具体取决于模型用的分词方式。

同样,英文单词“tokenization”也常常会被切成“token”+“ization”两个片段,而不是当成一个完整单词处理。所以不能简单理解成:

1个token=1个字。

这个理解不准确。

第二:token是AI处理文本时的基本计量单位。

人看到的是一句话、一段话、一篇文章。

但AI看到的不是完整文章,而是一串被切分过的token,它先把文字拆开,再进行计算。

第三:输入和输出都会消耗token。

你发给AI的提示词、资料、PDF内容、历史对话,都是输入token,而对于AI,是以输出token的方式回应你的要求。

很多人只看AI最后写了多少字,却忽略了前面塞进去的资料、提示词和对话历史,这也都在占“token”。

第四:token越多,AI处理压力越大。

token越多,模型要读的信息越多,信息越多,就会影响速度、成本、上下文长度、内存占用。token不是一个纯技术词,而是理解AI使用成本和体验的入口。

二、token和字数是什么关系?

很多人最容易误解的地方,就是把token直接等同于字数,这不准确,因为不同语言、不同内容、不同符号,被切分成token的方式不一样。可以简单看这个表:

内容类型我们看到的单位AI处理时的单位
中文文章字、句子、段落token
英文文章单词、句子token
代码变量、符号、缩进token
表格行、列、字段token
PDF内容页数、段落token
对话记录一轮一轮聊天token

我们不需要精确记住每句话会被切成多少token,只要记住一个大方向:文字越多,结构越复杂,token通常就越多。 如果想有个粗略的量感,可以记一个大致的经验范围:中文大概1~2个字对应1个token,英文大概3~4个字母对应1个token,不需要精确,只是一个方便估算的尺子。

比如:

  • 一段普通聊天,token很少。
  • 一篇3000字公众号文章,token明显增加。
  • 一份几十页PDF,再加上你让AI总结、改写、提炼标题,token就会继续增加。

如果你还让AI保留前面的所有对话,再继续修改,历史对话也会继续占token

所以AI处理内容时,真正看的不是你主观感觉“这也没多少字”,而是模型内部实际要处理多少token。

三、为什么AI不按字数算,而按token算?

这个问题很重要,因为在我们的习惯里,文章是按字数算的,比如公众号文章3000字、作文800字、报告5000字,而AI模型真正处理的,是token序列。

你可以理解成:

字数是给人看的单位,token是给模型算的单位。

为什么不能直接按字数算?原因可能是以下三个方面:

1. 不同语言的切分方式不同

中文、英文、数字、标点、代码,被拆分的方式都不一样。

比如英文里,一个常见单词可能是一个token,也可能被拆成多个token。

代码里,一个函数名、一个括号、一个缩进,也可能都会影响token数量。

中文也不是永远一个字一个token。所以,用“字数”作为统一标准并不准确。

2. AI真正处理的是token序列

模型不是直接读一篇完整文章。

它先把文字转换成token,再把token转换成模型可以计算的表示,然后模型根据前面的token,预测后面最可能出现的token。这就是大语言模型生成文字的基本过程。

所以从模型角度看,它不是在写“字”,而是在一个token一个token地生成内容。

3. token更适合衡量成本

AI服务为什么按token计费?

因为token更接近模型真实的计算量,输入token越多,模型要读的内容越多;输出token越多,模型要生成的内容越多。这两部分都会消耗计算资源。

所以,按token计费,虽然一开始看起来不直观,但它比按“字数”“篇数”“页数”更接近AI的实际工作方式。

四、token对使用AI的我们有什么影响?

token不是一个只属于程序员的概念。

我们在使用AI时,很多体验问题都和token有关:

你遇到的问题背后的token原因
AI提示内容太长输入token超过上下文限制
长文总结容易漏内容token太多,模型注意力被拉长
AI写长文变慢输出token越多,生成时间越长
API调用变贵输入和输出token都会计费
聊久了AI忘记前文对话历史token太多,旧内容被截断或弱化
本地模型占内存变高长上下文会带来额外内存压力
同一个问题换种问法成本不同提示词长度不同,token消耗不同

举个简单例子:

  • 你让AI写一句标题,消耗的token很少。
  • 你让AI写一篇完整文章,消耗的token会明显增加。
  • 你先丢给AI一万字资料,再让它总结、提炼、改写、生成标题、写朋友圈文案,消耗的token就不只是最后那篇文章,而是整个过程。

这也是为什么很多AI工具会限制单次输入长度、文件大小、对话轮数、上下文长度、输出长度——表面上看,是工具不给你用,本质上看,是token有上限,计算资源也有成本。这也是为什么一直以来免费的豆包也推出了付费版,现在的免费版豆包也会提示“今日额度已用完”。

这里有一个容易被忽略的点:AI消耗的不是最后那篇文章的字数,而是整个对话过程中输入和输出的token。

比如你最后只得到一篇3000字文章,但在生成这篇文章之前,你可能给了它:

  • 一段选题说明
  • 一份参考资料
  • 一套写作要求
  • 一份标题规则
  • 几轮修改意见
  • 一些历史对话背景

这些都会进入token消耗。

所以,当你发现AI写文章越来越慢、回答越来越短、或者开始忘记前面的要求时,不一定是模型突然变差了,也可能是上下文里的token太多了

五、token和“上下文长度”是什么关系?

现在很多模型介绍里都会写 8K 上下文、32K 上下文、128K 上下文、1M 上下文,这里的K,通常就是指token数量级。

看到长上下文,我们一般会直接理解成——这个模型能读更多内容,所以一定更好,这个判断只对了一半。

长上下文确实有用,它能让模型一次读更多资料,保留更长对话,处理更复杂的任务,但长上下文也不是免费的。上下文越长,模型需要同时处理的信息越多,速度、成本和内存压力都会上升。

尤其在本地模型里,这一点更明显。你在云端用AI,成本主要体现在服务费用和响应速度上;你在Mac或本地电脑上跑模型,成本就会直接体现在内存、显存和运行速度上。

这也是为什么同一个模型,在 8K 上下文下可以跑得比较舒服,开到 32K 以后就可能明显变慢,甚至爆内存。

所以,我们理解上下文长度,不要只看“越长越好”,更准确的理解是:

上下文长度决定AI这次最多能同时记住多少token,但记得越多,处理压力也越大。

六、token和本地模型有什么关系?

 本地模型为什么会被上下文拖慢
本地模型为什么会被上下文拖慢

如果你只用云端AI工具、不打算在本地跑模型,可以直接跳到“七、怎么用好token这个概念”。

如果你只是用云端AI,token主要影响费用、速度和上下文,但如果你开始在Mac上跑本地模型,token就会和内存直接挂钩。

很多人在选本地模型时,只看参数量,比如7B、14B、32B、70B,参数量当然重要,但它不是唯一因素。

本地模型能不能跑得舒服,还要看上下文长度、量化方式、KV Cache、内存带宽等因素。可以简单理解成下面这个表:

概念普通理解
模型参数量这颗“大脑”本身有多大
量化等级这颗“大脑”被压缩到什么程度
上下文长度这次最多要同时记住多少token
KV Cache为了记住上下文临时占用的工作空间
内存/显存模型运行时可用的工作台

为什么同一个本地模型,有时候能跑,有时候卡?

一个重要原因就是上下文设置不同。如果你仅仅向AI问一句话,模型压力不大。但是你让它读一篇长文、保持几十轮对话、再写一篇完整分析,token数增加,KV Cache压力也会上来。这时候,内存占用就可能明显增加。

所以本地模型不是只看“我能不能加载这个模型”,更重要的是:在你真实使用场景下,它能不能稳定处理足够多的token。

这也是为什么 24GB 内存的 Mac 跑本地模型时,不能只看模型参数量,还要看上下文开多大、量化格式怎么选、任务到底有多长。

七、怎么用好token这个概念?

 我们怎么用好 token
我们怎么用好 token

理解token,不是为了每天去计算token数,更需要的是用它改善AI使用方式。从实用性上来说:

1. 提示词不要无意义堆长

很多人写提示词,喜欢把所有背景一次性塞进去,但提示词绝不是越长越好。如果背景很长,却和任务没关系,只会增加token,增加模型负担。

在使用AI过程中更好的方式是:先说任务目标,再补充必要背景。

比如不要一上来就粘贴几千字资料,可以先告诉AI:

我接下来会给你一篇文章,请先只提炼结构,不要改写。

这样任务更清楚,也更省token。

2. 长文资料要分段处理

如果你要让AI总结一份很长的资料,不建议一次性全部丢进去,更稳的方式是:

  • 第一步,分段总结。
  • 第二步,合并要点。
  • 第三步,再让AI形成完整文章。

这样比一次性让AI读完所有内容再输出,通常更稳定。

3. 多轮对话后要做阶段性摘要

如果一个对话聊了很久,历史内容会不断占用token,有时候你觉得AI开始“走偏”了。这时候可以主动让AI做一次阶段性摘要。

比如:

请把目前已经确定的要求整理成一份简短项目说明,后续回答只按这份说明执行。

这样可以减少历史对话负担,也能降低AI忘记重点的概率。

4. 本地模型不要盲目开超长上下文

很多本地模型工具里可以设置上下文长度,看到 32K、64K,不要本能地拉满。如果你只是日常问答、写短文、改标题,8K 或 16K 可能就够用;如果你要处理长文、PDF、代码项目,再考虑更长上下文。

上下文开得越长,不代表效果一定越好,更可能的是它也会带来速度和内存压力。

5. 用API时要同时看输入和输出

如果你用API做自动化,比如总结文章、生成日报、批量写文案,就不能只看输出。

输入的资料越长,成本也会上升,尤其是批量任务,token消耗会被放大。一篇文章多消耗一点看不出来,一百篇、一千篇之后,成本差异就明显了,token消耗量很快就会告急。

八、token不是越少越好,也不是越多越好

token不是越少越好——如果你给AI的背景太少,它可能理解不清任务,输出就会空泛。

token也不是越多越好——如果你把大量无关信息都塞进去,模型反而更容易抓不住重点,速度也会变慢,成本也会上升。token越多,只利好算力提供商。

更好的状态是:给AI足够完成任务的信息,但不要给它一堆无关负担。

这和人沟通其实很像。你请别人帮你写一篇文章,不能只说“帮我写一篇”,那信息太少;但你也没必要把所有聊天记录、所有参考链接、所有想法碎片都丢过去,那信息太乱。

最好的方式是:目标清楚,背景适量,要求明确,分步骤推进。

这就是我们日常使用token概念最实际的意义。

九、最后总结

token不是一个必须背定义的技术词:AI不是按字、按页、按篇处理内容,而是按token这种“文字颗粒”处理内容。

它影响AI能读多长、写多快、花多少钱,也影响本地模型占多少内存。

理解token,不是为了变成工程师,而是为了更清楚地使用AI。

当你知道AI是按token工作之后,会发现AI嫌内容太长、长文总结容易漏、API按token收费、本地模型开长上下文更吃内存、同一个模型有时快有时慢——这些看似不同的问题,背后都指向同一个原理:AI处理的从来不是“字”,而是token。