You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从语料或查询中获取SentenceTransformer词汇表

SentenceTransformer实体分词规则验证、分词查看及嵌入校验方法

首先明确核心规则:SentenceTransformer本身不实现分词逻辑,所有分词、未知词标记规则完全和你加载的预训练模型底层绑定,以你用的all-MiniLM-L6-v2为例,它底层使用WordPiece分词逻辑,对实体名称的处理规则如下:

  • 未知词标记规则:只有分词器词表完全无法覆盖的特殊字符、完全无规律的罕见字符组合才会被标记为[UNK],常规的人名、地名、机构名、专业术语类实体,哪怕没有作为完整词收录在词表中,也不会被标记为未知词。
  • 实体拆分规则:绝大多数没有作为完整词条收录进词表的实体,都会被拆分为多个子词(subword)token,比如长的专有名词、新出现的网络热词实体,会被拆成词表中存在的词缀、字符片段组合。这种拆分是模型预训练阶段就固定的逻辑,不会影响语义相似度计算的准确性——模型从训练到推理全流程都是基于子词序列生成嵌入,不需要强制要求实体作为完整单token存在,只要没有出现[UNK],实体语义就会被正常纳入嵌入计算。

查看输入文本对应分词结果的实现

不需要查找SentenceTransformer的专属API,直接调用模型挂载的底层分词器,就可以拿到完整的token拆分结果、未知词标记、token和原文的位置对应关系,直接验证实体处理情况,参考代码:

from sentence_transformers import SentenceTransformer

# 加载你正在用的模型
embedder = SentenceTransformer("all-MiniLM-L6-v2")
# 取出模型绑定的分词器
tokenizer = embedder.tokenizer

# 替换成你要验证的包含目标实体的句子
test_sentence = "NVIDIA released a new generation of AI chips in 2024."

# 生成分词编码,开启位置偏移方便对应实体位置
encoding = tokenizer(
    test_sentence,
    return_tensors="pt",
    add_special_tokens=True,
    return_offsets_mapping=True
)

token_ids = encoding["input_ids"][0]
tokens = tokenizer.convert_ids_to_tokens(token_ids)
offset_map = encoding["offset_mapping"][0]

# 逐token打印核对
for token, pos in zip(tokens, offset_map):
    print(f"Token内容: {token:12} | 对应原文位置: {pos} | 是否为未知词: {token == '[UNK]'}")

运行后你可以直接定位到目标实体对应的文本区间,看对应位置的token有没有出现[UNK]、具体拆分成了几个子词,就能完成实体处理规则的验证。


关于嵌入向量反向转换为文本的说明

句子嵌入是经过模型池化层压缩后的固定维度语义向量,在压缩过程中已经丢失了原始文本的token顺序、长度、具体用词等细粒度信息,不存在1:1精确反向解码回原始文本的方法,所有相关方案都是近似语义匹配,如果你是为了校验嵌入是否正确携带了实体语义,可以用两种可落地的方案:

  • 替换对照验证:把原句中的目标实体分别替换成随机无意义字符串、其他同类实体、完全无关的词,分别生成嵌入后计算和原句嵌入的余弦相似度。如果替换为无关词/随机字符串时相似度大幅下降,替换为同类实体时相似度保持较高水平,就说明实体语义已经被正常纳入嵌入,相似度计算功能符合预期。
  • 候选库检索校验:提前准备覆盖你业务场景的候选文本语料库,将所有语料转为嵌入存储,对待校验的嵌入,计算它和语料库所有嵌入的余弦相似度,取相似度最高的TopN结果,就可以近似判断该嵌入对应的语义内容,这也是工业界校验嵌入效果最常用的方案。

如果你要进一步确认实体对相似度计算的影响,可以准备几组对照句对计算相似度:比如同实体语义相近句对、同实体语义无关句对、不同实体语义相近句对,只要相似度数值符合你的业务语义预期,就不需要额外调整分词或模型逻辑。

内容的提问来源于stack exchange,提问作者Edv Beq

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 21:30:23