Token 与 Embedding:大模型理解语言的起点

前言

很多人刚开始接触大模型时,关注点都在对话、生成、推理这些"上层能力"上。但真正想要理解大模型是怎么工作的,有两个概念绕不过去:Token(分词)Embedding(嵌入向量)。它们是文本进入大模型的第一道门,也是模型"看懂"人类语言的基础。这篇文章从初学者的视角,把这两个概念讲清楚。

一、学习大模型,从哪里开始?

如果让我推荐一条学习路径,我会分成三层:

第一层:搞懂 AI 是什么。 先建立整体认知,不急着写代码。吴恩达的《AI For Everyone》《Generative AI For Everyone》系列课程很适合入门,用通俗的语言讲清楚 AI 能做什么、不能做什么。如果想深入原理,Karpathy(前 Tesla AI 总监、OpenAI GPT 核心作者)有一个三小时的大模型入门课程,把 Transformer、Attention 这些核心概念讲得非常透彻。

第二层:动手用起来。 把日常重复性工作交给 AI 处理。比如用 Cursor、Codex 辅助写代码,用 NotebookLM(Google 出品的 RAG 工具)做知识管理,用 Obsidian 搭建自己的第二大脑。在用的过程中,你会自然产生"它到底是怎么做到的"这种好奇心。

第三层:做一个完整的作品。 用 Vibe Coding 的方式做一个网站、小程序,或者开发一个 Agent。把知识用起来,才是真正学到了。

二、Token:大模型计价的"最小单位"

大模型处理文本,不是按字、按词来算的,而是按 Token

你可能听过这样的说法:一个英文单词大约等于 0.3 个 Token,一个中文字符大约等于 0.6 个 Token,百万 Token 的成本在几块钱人民币左右------这里的"Token",就是大模型计价和工作的最小单位。

为什么必须分词?

这个问题很关键:明明输入的是文字 Prompt,为什么不能直接处理文本?

答案很简单:神经网络的底层运算机制决定了它只能处理数字 。计算机的神经网络本质上是在做大量的矩阵运算和向量计算,它看不懂中文、英文这些字符,只能看懂数字。所以,在文本进入模型之前,必须先把文字转换为一串数字 ID------这个转换过程就是分词(Tokenization),转换出来的每个数字 ID 就是一个 Token。

整个流程可以概括为:

复制代码
原始文本 → 分词器 → Token ID 序列 → 模型处理

举个例子,用 GPT 官方的 cl100k_base 分词器(这个分词器有大约 10 万个 Token 的词汇表),把一段文本编码:

  • 输入:"Hello, tiktoken! 你好,世界!"
  • 编码后得到一串整数 ID,比如 [9906, 11, 12345, 0, 33142, ...]
  • 这些 ID 就是模型能"看懂"的语言

反过来,模型输出的 Token ID 也可以解码回人类可读的文本------编码和解码使用的是同一套映射规则。

Token 不是单词

一个常见的误区是把 Token 等同于单词。实际上,Token 的分割规则由分词器决定,它可能把一个单词拆成多个 Token(比如 "tokenization" 可能被拆成 "token" + "ization"),也可能把几个常见字符合并成一个 Token。分词器的核心目标是在"词汇表大小"和"语义表达能力"之间取得平衡------切得太细(比如按字符切),语义信息太弱;切得太粗(比如按整句切),词汇表又会爆炸。

三、Embedding:让 Token 带上语义

Token ID 只是一个离散的编号,它本身不包含任何语义信息。"215" 这个数字和 "33142" 这个数字之间没有距离概念------它们只是两个不同的标签。

但神经网络需要理解"意思"。比如"苹果"和"香蕉",语义上比"苹果"和"汽车"更接近。怎么让数字也能表达这种关系呢?

这就是 Embedding(嵌入向量) 的作用。它的流程是:

yaml 复制代码
Token ID → Embedding → 高维向量(如 1024 维的浮点数数组)

Embedding 把每个 Token 映射到一个高维空间中的向量。在这个空间里,语义相近的词,它们的向量在方向上也比较接近。向量中的每个维度取值范围通常在 -1 到 1 之间,共同构成了这个词的"语义坐标"。

验证语义相似度:余弦相似度

怎么验证两个向量是否语义相近?最常用的方法是余弦相似度(Cosine Similarity),它衡量的是两个向量在方向上的接近程度,取值范围是 -1 到 1,越接近 1 表示越相似。

举个例子,我用 Embedding 模型(1024 维)把三段文本向量化后计算相似度:

  • 文本 A:"Andrej Karpathy LLM Tokenization 分词原理"
  • 文本 B:"卡帕西讲解大模型 BPE 字词分词"
  • 文本 C:"今天想好好睡觉"

A 和 B 虽然一个是英文一个是中文,但讲的都是 "Karpathy 讲分词" 这件事,它们的余弦相似度会比较高。而 A 和 C 没任何语义关联,相似度就会很低。

这就是 Embedding 的威力------它用数学的方式表达了语义的远近。RAG(检索增强生成)、语义搜索、文本聚类这些应用,底层都依赖 Embedding。

四、Token 和 Embedding 的关系:一个完整的 pipeline

把 Token 和 Embedding 串起来,就是大模型处理文本的完整前置流程:

yaml 复制代码
Prompt(文本输入)
  → Tokenizer(分词编码器)→ Token ID
  → Embedding(向量化)→ 1024 维语义向量
  → Transformer(大模型核心计算)
  → 输出 Token ID
  → Tokenizer(解码器)→ 文本输出

Token 解决的是"文本怎么变成数字"的问题,Embedding 解决的是"数字怎么带上语义"的问题。两者加在一起,才让神经网络能够真正"理解"人类语言。

五、总结

理解 Token 和 Embedding,是大模型学习路上的第一道坎。搞懂了它们,后面的 Transformer、Attention、微调这些概念才会有根基。

  • Token 是桥梁:把人类可读的文本,转换成计算机可计算的数字 ID。分词器的好坏直接影响模型对语言的理解能力。
  • Embedding 是灵魂:让离散的 Token ID 获得连续的、包含语义信息的高维向量表示。语义相近的词,向量也相近。
  • 两者协作:Tokenizer 负责"翻译",Embedding 负责"理解"。没有 Token,文本进不去模型;没有 Embedding,模型只能看到编号,看不到意思。

如果说大模型是一座大厦,那 Token 和 Embedding 就是地基。地基打牢了,往上盖楼才稳。

相关推荐
DigitalOcean3 小时前
在 DigitalOcean 如何提示词缓存:降低 AI 推理成本与延迟
llm·agent
only-qi4 小时前
美的AI Agent面试题的解析与思考
人工智能·ai·llm·agent·react
武子康5 小时前
VLA 落地先签动作合同:从视觉语言输入到可执行控制指令
人工智能·llm·agent
熊猫钓鱼>_>6 小时前
用Seed Evolving+高德地图做城市旅行规划Agent
大模型·agent·规划·智能体·豆包·火山·seed evolving
程序员AI工坊6 小时前
Agent 开发:ReAct 循环与工具调用实战——从单次调用到自主 Agent
人工智能·后端·python·langchain·agent·react
Z-D-K7 小时前
一个AI的真实日记(3)
人工智能·ai·aigc·人机交互·agent·agi
武子康9 小时前
SWE-1.7 的提升究竟来自哪里?接受大量强化学习后训练的 Kimi K2.7 为起点,继续进行大规模 RL
人工智能·llm·agent
布列瑟农的星空9 小时前
LoRA微调BERT模型实践
人工智能·agent
用户469368483209 小时前
kimi-code 深度掌握系列文章-工具系统:从注册到执行(六)
llm·agent