外观
Token 与 Embedding 极简一问一答
定位|
Token 与 Embedding一分钟速答页。每章固定 10 题,只保留结论、机制、边界与验证关键词;单个回答控制在 10~60 秒。
1. 怎么使用
本页重点| L1 概念 → L2 边界 → L3 原理 → L4 实现 → L5 工程 → L6 架构 → L7 复盘 → 误区、验证、证据强化。不会展开时,再进入正式主题或专项题库。
- 正式主题: 01-Token与Embedding
- 深度题库: Token 与 Embedding 专项面试题
- 阅读方式: 先遮住答案口述;答不出机制、边界或证据,再进入深度材料。
图:Token 与 Embedding 十题极简脑图
替代文本: Token 与 Embedding从 L1 概念和 L2 边界,依次进入 L3 原理、L4 实现、L5 工程、L6 架构与 L7 项目复盘,再用误区、最小自测和证据边界三题强化。
图表加载中…
读图结论: 掌握 Token 与 Embedding 不能停在定义;先顺着七层链路说清机制与工程,再用误区、自测和证据边界确认没有虚假掌握。
2. 极简一问一答
Q001|Token、Tokenizer、Vocabulary 和 Embedding 分别是什么?
Token 是 Tokenizer 规则下的离散符号,Tokenizer 负责文本与 Token/ID 的转换,Vocabulary 保存 Token 到整数 ID 的映射,Token Embedding 再从可训练矩阵中按 ID 查出连续向量。它们依次解决“怎么切、怎么编号、怎样进入神经网络计算”。
Q002|为什么常用子词 Tokenization,BPE 与 Unigram 有何不同?
整词词表容易过大且仍有生僻词,纯字符覆盖广但序列较长,子词在开放词表、参数量和序列长度之间折中。BPE 通过高频相邻符号合并学习规则,Unigram 从候选子词概率模型中选择切分;固定配置并关闭采样时生产编码通常确定,显式启用 Subword Sampling 或 BPE Dropout 时可以随机。
Q003|Token、Hidden State 和 Sentence Embedding 如何产生与比较?
Token Embedding 是按 Token ID 查出的上下文无关初始向量;Hidden State 是经过模型后依赖上下文的位置表示;Sentence Embedding 可由选定 Hidden State 池化得到,生产检索模型通常还经过对比学习或检索目标训练。给定有效位掩码
m_t,Masked Mean 为s=Σ_t m_t h_t / max(Σ_t m_t,1);对非零向量u,v,余弦相似度为uᵀv/(||u||·||v||)。直接平均输入 Token Embedding 或通用 Hidden State 只能作为待评测基线,不能预设适合语义检索。
Q004|input_ids 如何变成 Transformer 输入?
input_ids∈{0,…,V-1}^{B×n}从E∈R^{V×d}查表得到X∈R^{B×n×d},再按模型架构加入或融合位置表示;attention_mask通常是[B,n],用于阻止 Padding 进入有效注意力或池化。Embedding 参数量为Vd,ID 必须为整数且与词表、特殊 Token 和模型权重版本一致。
Q005|线上输入或召回质量突然下降,如何排查 Tokenizer 链路?
我会先锁定模型、Tokenizer、词表、特殊 Token、规范化与索引版本,重放固定文本比较 Token ID、原长度、截断方向、Mask 和最终向量,再按语言、字符类型和长度观察分布。若同一文本随 Padding 长度变化,应检查池化是否正确应用
attention_mask;若 ID 一致,再转查 Embedding、池化、归一化和索引。
Q006|Tokenizer、模型和向量索引如何共同版本化?
发布契约应绑定
model_id、Tokenizer/词表与规范化配置哈希、维度、池化、归一化、最大长度和索引版本;新模型必须构建独立索引,用同一标注集验证后双路/灰度切流,并保留原子回退。查询编码只允许访问兼容索引,不能把新旧向量增量混写到同一空间。
Q007|如何设计内部技术文档语义检索?
这是源文档中的示例项目:文档侧保留 ID、版本、章节、租户与 ACL 元数据,使用目标 Embedding 模型的固定 Tokenizer 控制长度并按语义边界切块,再以固定池化和归一化建立版本化索引。检索必须在候选内容进入重排模型、LLM 或响应前执行服务端权限约束;硬租户边界优先采用独立索引或检索前过滤,避免仅在最终结果后置过滤造成泄漏或召回饥饿。查询侧使用同一编码契约并返回原文引用;仓库没有实际索引和评测结果,因此不能声称 Recall、延迟或业务收益。
Q008|这个专题最常见的误区是什么?
常见误区有三类:把 Token 当固定单词,或把 Tokenizer 说成直接生成语义向量;把位置编码当 Tokenizer 输出,池化时计入 Padding,或把 Token Embedding 等同 Sentence Embedding;只改模型名、混写新旧向量,或认为相同维度就代表同一向量空间。
Q009|怎样做最小自测?
最小自测分三步:打印一批文本的
input_ids、Mask 和[B,n,d]输出形状;用同一短句比较不同 Padding 长度下的 Masked Pooling 结果;分别解释 Token Embedding、Hidden State 和 Sentence Embedding。
Q010|回答这个专题时,证据边界是什么?
Token 数、最大长度和 Tokenizer 行为必须以目标模型实际配置为准,不能用字符数猜测。
3. 总结
一句话记忆: Token 是 Tokenizer 规则下的离散符号,Tokenizer 负责文本与 Token/ID 的转换,Vocabulary 保存 Token 到整数 ID 的映射,Token Embedding 再从可训练矩阵中按 ID 查出连续向量。
- Token 是 Tokenizer 规则下的离散符号,Tokenizer 负责文本与 Token/ID 的转换,Vocabulary 保存 Token 到整数 ID 的映射,Token Embedding 再从可训练矩阵中按 ID 查出连续向量。
- 我会先锁定模型、Tokenizer、词表、特殊 Token、规范化与索引版本,重放固定文本比较 Token ID、原长度、截断方向、Mask 和最终向量,再按语言、字符类型和长度观察分布。
- 常见误区有三类:把 Token 当固定单词,或把 Tokenizer 说成直接生成语义向量。
- Token 数、最大长度和 Tokenizer 行为必须以目标模型实际配置为准,不能用字符数猜测。