标签:
- 句子转换器
- 句子相似度
- 特征提取
- 训练生成
基础模型:
- intfloat/multilingual-e5-small
- dragonkue/multilingual-e5-small-ko
管道标签: 句子相似度
库名称: sentence-transformers
许可证: apache-2.0
语言:
- 韩语
- 英语
基于intfloat/multilingual-e5-small的SentenceTransformer
这是一个从intfloat/multilingual-e5-small微调而来的sentence-transformers模型,训练数据包含韩语查询-段落对,以提高韩语检索任务的性能。它将句子和段落映射到384维密集向量空间,可用于语义文本相似性、语义搜索、释义挖掘、文本分类、聚类等任务。
该模型是一个轻量级的韩语检索器,设计用于实际检索任务中的易用性和强大性能。适合运行演示或轻量级应用,在速度和准确性之间提供了良好的平衡。
为了获得更高的检索性能,我们建议将其与重新排序器结合使用。推荐的重新排序器模型:
- dragonkue/bge-reranker-v2-m3-ko
- BAAI/bge-reranker-v2-m3
模型详情
模型描述
模型来源
完整模型架构
SentenceTransformer(
(0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: BertModel
(1): Pooling({'word_embedding_dimension': 384, 'pooling_mode_cls_token': False, 'pooling_mode_mean_tokens': True, 'pooling_mode_max_tokens': False, 'pooling_mode_mean_sqrt_len_tokens': False, 'pooling_mode_weightedmean_tokens': False, 'pooling_mode_lasttoken': False, 'include_prompt': True})
(2): Normalize()
)
使用方法
直接使用(Sentence Transformers)
首先安装Sentence Transformers库:
pip install -U sentence-transformers
然后可以加载此模型并运行推理:
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("dragonkue/multilingual-e5-small-ko")
sentences = [
'query: 北韩家族法第几次修订中明确规定了离婚判决确定后3个月内登记才有效的条款?',
'passage: 1990年制定的北韩家族法至今已进行了4次修订。1993年的第1次修订主要是为了提高规定的准确性而修改了一些条款,实质性内容的补充主要是设置了继承的承认与放弃期限的第52条。2004年的第2次修订中新增了第20条第3项,明确规定经判决确定的离婚判决必须在3个月内登记才能产生离婚效力。2007年的第3次修订中新增了父母与子女关系自身份登记机关登记时起产生法律效力的规定(第25条第2项)。此外,关于未成年人、无劳动能力者的扶养(第37条第2项),将原有的"无扶养能力的家庭成员时,由分居的父母或子女、祖父母或孙子女、兄弟姐妹扶养"的规定修改为"无扶养能力的家庭成员时,由分居的父母或子女扶养,若无则由祖父母或孙子女、兄弟姐妹扶养"。',
'passage: 环境标志制度,认证标准变更减轻企业负担\n环境标志制度介绍\n□ 概述\n○ 与同用途其他产品相比,允许在"产品环境性*"改善的产品上标注标志和说明的认证制度\n※ 产品环境性:在材料与产品的制造、消费、废弃全过程中排放污染物或温室气体等的程度及资源与能源消耗程度等对环境的影响程度(《环境技术与环境产业支援法》第2条第5号)\n□ 法律依据\n○ 《环境技术与环境产业支援法》第17条(环境标志的认证)\n□ 相关国际标准\n○ ISO 14024(第1类环境标志)\n□ 适用对象\n○ 办公设备、家电产品、生活用品、建筑材料等156个产品群\n□ 认证现状\n○ 2,737家企业的16,647个产品(截至2015年12月底)',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
直接使用(Transformers)
import torch.nn.functional as F
from torch import Tensor
from transformers import AutoTokenizer, AutoModel
def average_pool(last_hidden_states: Tensor,
attention_mask: Tensor) -> Tensor:
last_hidden = last_hidden_states.masked_fill(~attention_mask[..., None].bool(), 0.0)
return last_hidden.sum(dim=1) / attention_mask.sum(dim=1)[..., None]
input_texts = ["query: 北韩家族法第几次修订中明确规定了离婚判决确定后3个月内登记才有效的条款?",
"passage: 1990年制定的北韩家族法至今已进行了4次修订。1993年的第1次修订主要是为了提高规定的准确性而修改了一些条款,实质性内容的补充主要是设置了继承的承认与放弃期限的第52条。2004年的第2次修订中新增了第20条第3项,明确规定经判决确定的离婚判决必须在3个月内登记才能产生离婚效力。2007年的第3次修订中新增了父母与子女关系自身份登记机关登记时起产生法律效力的规定(第25条第2项)。此外,关于未成年人、无劳动能力者的扶养(第37条第2项),将原有的"无扶养能力的家庭成员时,由分居的父母或子女、祖父母或孙子女、兄弟姐妹扶养"的规定修改为"无扶养能力的家庭成员时,由分居的父母或子女扶养,若无则由祖父母或孙子女、兄弟姐妹扶养"。",
"passage: 环境标志制度,认证标准变更减轻企业负担\n环境标志制度介绍\n□ 概述\n○ 与同用途其他产品相比,允许在"产品环境性*"改善的产品上标注标志和说明的认证制度\n※ 产品环境性:在材料与产品的制造、消费、废弃全过程中排放污染物或温室气体等的程度及资源与能源消耗程度等对环境的影响程度(《环境技术与环境产业支援法》第2条第5号)\n□ 法律依据\n○ 《环境技术与环境产业支援法》第17条(环境标志的认证)\n□ 相关国际标准\n○ ISO 14024(第1类环境标志)\n□ 适用对象\n○ 办公设备、家电产品、生活用品、建筑材料等156个产品群\n□ 认证现状\n○ 2,737家企业的16,647个产品(截至2015年12月底)"]
tokenizer = AutoTokenizer.from_pretrained('dragonkue/multilingual-e5-small-ko')
model = AutoModel.from_pretrained('dragonkue/multilingual-e5-small-ko')
batch_dict = tokenizer(input_texts, max_length=512, padding=True, truncation=True, return_tensors='pt')
outputs = model(**batch_dict)
embeddings = average_pool(outputs.last_hidden_state, batch_dict['attention_mask'])
embeddings = F.normalize(embeddings, p=2, dim=1)
scores = (embeddings[:1] @ embeddings[1:].T)
print(scores.tolist())
评估
- 此评估参考了KURE GitHub仓库。(https://github.com/nlpai-lab/KURE)
- 我们在MTEB中注册的所有韩语检索基准上进行了评估。
韩语检索基准
指标
信息检索
模型 |
大小(M) |
平均 |
XPQARetrieval |
PublicHealthQA |
MIRACLRetrieval |
Ko-StrategyQA |
BelebeleRetrieval |
AutoRAGRetrieval |
MrTidyRetrieval |
BAAI/bge-m3 |
560 |
0.724169 |
0.36075 |
0.80412 |
0.70146 |
0.79405 |
0.93164 |
0.83008 |
0.64708 |
Snowflake/snowflake-arctic-embed-l-v2.0 |
560 |
0.724104 |
0.43018 |
0.81679 |
0.66077 |
0.80455 |
0.9271 |
0.83863 |
0.59071 |
intfloat/multilingual-e5-large |
560 |
0.721607 |
0.3571 |
0.82534 |
0.66486 |
0.80348 |
0.94499 |
0.81337 |
0.64211 |
intfloat/multilingual-e5-base |
278 |
0.689429 |
0.3607 |
0.77203 |
0.6227 |
0.76355 |
0.92868 |
0.79752 |
0.58082 |
dragonkue/multilingual-e5-small-ko |
118 |
0.688819 |
0.34871 |
0.79729 |
0.61113 |
0.76173 |
0.9297 |
0.86184 |
0.51133 |
exp-models/dragonkue-KoEn-E5-Tiny |
37 |
0.687496 |
0.34735 |
0.7925 |
0.6143 |
0.75978 |
0.93018 |
0.86503 |
0.50333 |
intfloat/multilingual-e5-small |
118 |
0.670906 |
0.33003 |
0.73668 |
0.61238 |
0.75157 |
0.90531 |
0.80068 |
0.55969 |
ibm-granite/granite-embedding-278m-multilingual |
278 |
0.616466 |
0.23058 |
0.77668 |
0.59216 |
0.71762 |
0.83231 |
0.70226 |
0.46365 |
ibm-granite/granite-embedding-107m-multilingual |
107 |
0.599759 |
0.23058 |
0 |
|
|
|
|
|