【AI基础学习系列】七、LLM基础-Token

【AI基础学习系列】七、LLM基础-Token(2026最实用版)

欢迎来到系列第七讲!
前面我们聊了注意力机制,这次直击LLM最底层、最容易被忽略却最影响成本、速度、效果的部分——Token(令牌)

2026年的现实认知:

  • 你以为模型读的是“字”或“词”?错!它读的是token
  • Token数量直接决定:上下文长度、推理成本、速度、甚至模型对不同语言的“友好度”
  • 很多人用大模型半年,还不知道自己的prompt到底吃了多少token → 浪费钱 + 上下文溢出

我们用最白话的方式拆解:什么是token → 怎么产生的 → 常见误区 → 中英文/代码差异 → 2026主流模型token规则 → 怎么自己算/省token

一、Token到底是什么?一句话定义(2026版)

Token = LLM能一次性“看到”和“处理”的最小文本单元(通常是数字ID,对应一小段子词/词/标点/字节)。

  • 不是字符(太碎,序列太长)
  • 不是完整单词(太稀疏,新词/OOV问题严重)
  • 而是subword(子词)级别的智能切分

模型的整个世界就是:一串数字ID序列(token IDs) → 通过Embedding查表变成向量 → 进Transformer

二、主流分词方式:为什么几乎全用BPE / SentencePiece?(2026标配)

分词类型原理简述优点缺点/痛点代表模型(2026)
Word-level直接按空格/标点切完整词简单、直观词汇表爆炸、新词/OOV多基本淘汰
Char-level每个字符/字节一个token无OOV、支持任意语言序列超长(注意力O(n²)爆炸)极少数实验模型
Subword (主流)BPE / WordPiece / Unigram / SentencePiece平衡长度 + 覆盖率 + 处理新词语言不平等(中日韩/代码多token)几乎全部:GPT、Claude、Llama、Qwen、Grok、DeepSeek
Byte-level BPE从UTF-8字节开始合并零OOV、支持emoji/乱码/多语言英文稍多tokenGPT-4+ cl100k_base、Llama3+、RoBERTa

BPE(Byte Pair Encoding)工作原理超简版(生活类比:拼乐高)

  1. 把所有文本拆成单个字符/字节
  2. 统计最常一起出现的相邻pair(比如 ‘t’+’h’ → “th”)
  3. 把最常见的pair合并成一个新“零件”(新token)
  4. 重复合并,直到词汇表达到目标大小(通常3万–25万)
  5. 常见词(如”the”)变成1个token,稀有词(如”tokenization”)拆成[“token”,”ization”]

结果:高频 → 1 token,低频/新词 → 几token,未知字符fallback到字节

三、Token vs Word:常见误区 & 真实换算(2026数据)

语言/类型粗略换算(token ≈ ? 个英文单词)token ≈ ? 个中文字符为什么?(2026观察)例子(用GPT-4 cl100k_base tokenizer)
英文普通文本1 token ≈ 0.75–1 word常见词1 token,空格/标点常单独或合并“Hello world!” → ≈4 tokens
中文1 token ≈ 1.3–2 字中文无空格,每个汉字常1 token,常见词组可能合并“你好,世界!” → ≈6–8 tokens
代码(Python)1 token ≈ 0.5–0.8 word变量名、缩进、符号常拆分,但新tokenizer优化了空格序列“def add(a,b): return a+b” → ≈10–14 tokens
数字/日期波动大“2026-02-25” 可能1–5 tokens(取决于tokenizer)“20250225” → 可能2–4 tokens
Emoji/特殊符号常多token😊 常拆成多个字节😊 → 可能2–5 tokens

误区Top5(很多人踩)

  1. “中文一个字=一个token” → !常见字1 token,但组合/生僻字多token
  2. “token数 ≈ 字数 / 2” → 英文≈字数×1.3–1.5,中文≈字数×1.5–2.5(视tokenizer)
  3. “所有模型token数一样” → !同一个句子在Claude、Grok、DeepSeek token数可能差30–50%
  4. “上下文长度是按字/词算” → 全是token!128k token ≈ 英文10万字 ≈ 中文6–8万字
  5. “token越少越好” → 不一定!太碎(char-level)序列长,注意力成本高

四、2026主流模型Token & 上下文长度速查表(实用版)

模型家族Tokenizer类型词汇表大小(约)典型上下文长度(2026.2主流)token效率(英文/中文相对)备注
GPT-5 / GPT-4o系列cl100k_base / 更新版 BPE~100k–200k128k–400k+高(英文最优)OpenAI tiktoken可直接算
Claude 4 / 4.5Claude专用~100k+200k(部分beta 1M)标点/空格优化好
Grok 4.1Grok专用2M(行业最大之一)长上下文神器,价格亲民
DeepSeek R1 / V3BPE变体~100k+128k–512k中–高(中文友好)性价比王,中文token效率好
Qwen 3 / Qwen-MaxSentencePiece~150k+128k–1M+高(中文极优)中文token最省之一
Llama 4 / Gemma 3SentencePiece BPE32k–256k128k–10M(部分变体)开源最长上下文选项
Gemini 3 / 2.5SentencePiece变体~256k1M–2M多模态token统一计算

一句话总结2026:上下文从128k → 2M+已成为标配,长上下文 + 高效tokenization 是竞争焦点。

五、怎么自己算token?(零代码/有代码两种方式)

  1. 最简单:直接粘贴到模型官网tokenizer工具
  • OpenAI: platform.openai.com/tokenizer
  • Grok / Claude / Gemini:聊天界面常有token计数器
  1. 代码方式(Python推荐,tiktoken最方便)
# pip install tiktoken
import tiktoken

enc = tiktoken.get_encoding("cl100k_base")  # GPT-4 tokenizer
text = "【AI基础学习系列】七、LLM基础-Token"
tokens = enc.encode(text)
print(len(tokens))          # token数量
print(enc.decode(tokens))   # 还原文本

其他模型:用HuggingFace tokenizers库加载对应模型的tokenizer。

六、Token省钱/省上下文小技巧(2026实战)

  • 结构化Prompt(XML/JSON)减少废token
  • 删掉不必要的空格/换行/礼貌语(”请”、”谢谢”吃token)
  • 中文场景优先Qwen/DeepSeek(token更省)
  • 长文档用RAG而非全塞上下文
  • 监控API返回的usage → prompt_tokens + completion_tokens

下一讲预告:
【AI基础学习系列】八、Embeddings & 向量数据库基础(RAG前置知识)
(为什么RAG能大幅减少幻觉?因为向量相似度找最相关chunk)

你现在最想先搞哪一块?

  • Token计算实战(给我一段文本,我帮你拆token)
  • 中英文token差异可视化例子
  • 怎么用tiktoken批量算prompt成本
  • 2026超长上下文模型(2M+)实际体验分享
  • 直接跳到Embeddings / 向量搜索

告诉我,我下一讲就按你的需求展开~ 😄

文章已创建 4758

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

相关文章

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部