什么是大模型的 Token
Token 是大语言模型(LLM)处理文本时的最小基本单元。简单来说,大模型眼中的“文字”不是一个个完整的单词或汉字,而是一串串 Token。
你可以把大模型想象成一个“接龙游戏”选手,它每次只能预测下一个 Token 是什么,而不是下一个完整的句子。
为了让你彻底搞懂,我从三个维度来拆解:
1. Token 长什么样?(直观感受)
Token 不是严格的单词,也不是严格的字母,而是常见的字符组合。
- 英文:通常一个单词会被拆成 1 到 3 个 Token。例如
ChatGPT通常被拆成Chat+G+PT三个 Token(取决于分词器)。 - 中文:因为汉字信息密度高,通常一个字对应 1 到 2 个 Token。例如“你好世界”可能会被拆成
你+好+世界或你+好+世+界。 - 标点与空格:空格、换行符、逗号也都被算作独立的 Token。
2. Token 是怎么来的?(分词逻辑)
大模型看不懂原始文字,它只看数字。所以文本输入后,第一步是分词(Tokenization):
- 将文本切分成子词(Subword)。
- 将子词映射为对应的数字 ID(索引)。
例如,
Playing可能会被切分为Play+ing。这样做的好处是,即使模型没见过Played,也能通过Play+ed猜出含义,极大压缩了词汇表大小。
3. Token 决定了哪些“现实问题”?
理解 Token 对你使用大模型至关重要,因为它直接关联三大硬指标:
- 计费标准(钱):目前所有主流大模型 API(如 GPT-4、Claude、文心一言)都是按 Token 数量计费的。输入算一次,输出算一次,且输出(生成)通常比输入(提示词)略贵。
- 上下文窗口(记忆力):模型宣称的“上下文 128K”或“1M”,指的就是 Token 数量。如果你的文档总 Token 数超过这个上限,模型就会“失忆”,无法处理全部内容。
- 生成速度(延迟):模型生成文本的速度通常用 TPS(Tokens Per Second,每秒生成的 Token 数) 来衡量。模型吐字快不快,看的就是这个数字。
4. 一个重要的误区(避坑)
“汉字数 ≠ Token 数”。 中文字符在 Token 化时效率较低。比如:
- 英文 “I love you”(3个单词)约等于 3 个 Token。
- 中文 “我爱你”(3个汉字)大约等于 4 到 5 个 Token(因为“爱”和“你”可能被拆开)。 所以,用中文提问消耗的 Token 数通常比英文多 30%-50%,这意味着花费更高,且达到上下文上限的速度更快。
补充一个小技巧:如果你想精确计算某段文本会消耗多少 Token,OpenAI 提供了免费的 Tokenizer 工具,你可以粘贴文字进去看实时的切分效果。
关于 Token,你还需要了解怎么预估自己的文档占用多少上下文吗?或者想了解一下不同模型(如 DeepSeek、GPT-4o)的 Token 计价差异?我可以接着为你拆解。