🧊 前沿科技知识库
全部 / 人工智能(AI)

分词与嵌入

2026-09-26 · 人工智能(AI)
最后更新:2026-09-26 | 领域:AI·基础原理 | 说明:信息来源为公开网络资料,详见文末参考来源

概述

分词(Tokenization)把原始文本切分为模型可处理的 token 序列,嵌入(Embedding)则把 token 或整段文本映射为稠密向量。前者决定模型的"字母表"与词汇表规模,后者是检索、聚类、分类与 RAG 系统的语义基础。两者共同构成 LLM 的输入接口:分词器一旦随模型权重固化便难以更换,不同分词器的合并规则与词表规模不同,同一段文本会被编码成不同的 token 序列(tiktoken vs SentencePiece vs Hugging Face Tokenizers)。

最新进展(2025–2026)

核心技术与关键概念

分词算法

算法合并/切分策略典型使用方
BPE(Byte-Pair Encoding)贪心合并高频字节对GPT-2/3/4、Claude 系
SentencePiece基于原始字节的 Unigram 或 BPE,无空白预切分Llama、T5、Mistral、Gemini、Gemma
WordPiece按最大似然贪心切分BERT 及原始 Transformer 衍生
Unigram(SentencePiece)从超大候选词表开始,按 EM 剪枝T5、mBART、XLM-R

以上对照来自多份资料(What is Tokenization in LLMs?、How Does Tokenization Work?、LLM Engineering (2): Tokenization Deep Dive、LLM Tokenization Methods Explained)。当代聊天型 LLM 中,WordPiece 已较少见(How Does Tokenization Work?)。

tiktoken 是 OpenAI 于 2022 年 12 月开源的字节对编码分词库,用 Rust 编写、经 PyO3 提供 Python 绑定,可精确复现其模型的合并规则,编码速度约为同类实现的 3–6 倍(tiktoken、tiktoken vs SentencePiece vs Hugging Face Tokenizers)。

三大分词实现的关键差异:tiktoken 是面向推理的 BPE 编码器,严格在 UTF-8 字节上操作、无需回退机制;SentencePiece 是 Google 的"语言无关"训练器,把文本当作原始字节流并支持 BPE 与 Unigram;Hugging Face tokenizers 则是 Rust 实现的完整流水线,可训练并运行上述各类算法(tiktoken vs SentencePiece vs Hugging Face Tokenizers、How LLMs See the World: The Hidden Logic of Tokenization)。由于 SentencePiece 先在 Unicode 码点上操作、对罕见字符回退到字节,因而对 CJK 等非英文文本压缩更好(Tokenizer Learning)。

上下文嵌入

早期的静态/类型级嵌入(如 Word2Vec、GloVe)为每个词分配一个固定向量,无法区分多义(Contextualized Word Embeddings)。上下文嵌入(contextual embeddings,如 ELMo、BERT、GPT)为同一词的每次出现生成不同向量,向量是整段输入序列的函数,从而区分"bank(银行)"与"bank(河岸)"等不同词义(Lecture 12: Contextual embeddings、A Survey on Contextual Embeddings)。

静态与上下文嵌入的典型对比:静态每种词一个向量、维度约 50–300、浅层模型;上下文嵌入每次出现一个向量、维度约 768–1024、深层模型(12–24 层以上)(Word Embedding)。

嵌入模型与 MTEB

主流文本嵌入模型(含官方/公开来源):

指令感知与可变维度成为 2025–2026 的设计惯例:Qwen3 Embedding 支持 100 多种语言与编程语言,允许在所有维度上灵活定义向量,并以"指令 + 查询"拼接输入、文档保持不变的方式来让嵌入遵循任务指令(Qwen3 Embedding、Qwen3-Embedding-0.6B);Qwen3-VL 系列进一步把统一表示学习扩展到图像、视频等多模态检索,其旗舰 Qwen3-VL-Embedding-8B 在 2026 年 1 月的 MMEB-V2 基准上取得 77.8 分,官方称超过当时榜单上的全部开源与闭源模型(Qwen3-VL-Embedding and Qwen3-VL-Reranker、Qwen3-VL-Embedding and Qwen3-VL-Reranker(官方博客))。

分词粒度与工程取舍

分词粒度直接牵动若干工程指标:词表越大,单 token 承载的信息越多、序列越短(利于降低注意力开销与 API 成本),但嵌入矩阵与输出层参数随之增大,且低频 token 训练不充分;词表越小,序列越碎、有效上下文越短,但泛化与词表利用率更好。字节级 BPE 通过"从字节起步"把词表外的组合问题转化为多 token 拼接,从根本上消除了 unknown token(How Does Tokenization Work?、LLM Tokenization Methods Explained)。由于分词器随权重固化,更换分词器意味着需要重新训练或至少大规模继续训练,因此选型通常在建模型之前就已锁定(tiktoken vs SentencePiece vs Hugging Face Tokenizers)。

在检索与 RAG 场景中,嵌入模型的"最大输入 token 数"与"输出维度"是两项硬约束:维度决定向量存储与检索的显存/带宽开销,最大 token 数决定单次可编码的文档长度(超出通常需要截断或分块)。因此在选型时常需在质量、维度、长度、许可与价格之间权衡(Embedding Model Leaderboard: MTEB Rankings April 2026、Top 10 Closed-Source and Open-Source Embedding Models (2026))。

关键数据与评测结果

MTEB(Massive Text Embedding Benchmark)覆盖分类、聚类、检索、重排序、配对分类与语义相似度等任务类型,并已拆分为 MTEB(eng)、MTEB(Multilingual) 等版本(英文 v1 榜单在 MTEB(eng, v1) 下仍可访问)(Available Benchmarks)。榜单实时更新,官方入口为 Hugging Face Spaces 上的 MTEB leaderboard(MTEB Leaderboard)。

从公开榜单可提取若干可比的量化信息:Gemini Embedding 001 约 68.32 分、3072 维、最多 8192 token;NV-Embed-v2 约 72.31 分(含检索子项口径)、4096 维、最多 32,768 token、Apache 2.0 许可;OpenAI text-embedding-3-large 默认 3072 维、官方 MTEB 平均分 64.6(Embedding Model Leaderboard: MTEB Rankings April 2026、Embedding Model Leaderboard 2026、New embedding models and API updates)。这些数值来自不同榜单版本,仅作数量级参考。

需注意:不同来源的"MTEB 分数"常常基于不同榜单版本与任务集合(如上表同时出现 MTEB Multilingual v1 的 70.58 分与含检索子项的约 72.31 分),直接横向比较容易失真,引用时应标明口径(Embedding Model Leaderboard 2026、Best Embedding Models)。

趋势与争议

参考来源

← 合成数据与数据引擎Transformer 架构原理 →