🚀 st-polish-kartonberta-base-alpha-v1
这个句子转换器模型旨在将文本内容转换为768维浮点向量空间,以实现有效的文本表示。它擅长处理句子或文档相似度相关任务。
🚀 快速开始
使用Sentence-Transformers
你可以使用 sentence-transformers 库来使用该模型:
pip install -U sentence-transformers
from sentence_transformers import SentenceTransformer
model = SentenceTransformer('OrlikB/st-polish-kartonberta-base-alpha-v1')
text_1 = 'Jestem wielkim fanem opakowań tekturowych'
text_2 = 'Bardzo podobają mi się kartony'
embeddings_1 = model.encode(text_1, normalize_embeddings=True)
embeddings_2 = model.encode(text_2, normalize_embeddings=True)
similarity = embeddings_1 @ embeddings_2.T
print(similarity)
使用HuggingFace Transformers
from transformers import AutoTokenizer, AutoModel
import torch
import numpy as np
def encode_text(text):
encoded_input = tokenizer(text, padding=True, truncation=True, return_tensors='pt', max_length=512)
with torch.no_grad():
model_output = model(**encoded_input)
sentence_embeddings = model_output[0][:, 0]
sentence_embeddings = torch.nn.functional.normalize(sentence_embeddings, p=2, dim=1)
return sentence_embeddings.squeeze().numpy()
cosine_similarity = lambda a, b: np.dot(a, b) / (np.linalg.norm(a) * np.linalg.norm(b))
tokenizer = AutoTokenizer.from_pretrained('OrlikB/st-polish-kartonberta-base-alpha-v1')
model = AutoModel.from_pretrained('OrlikB/st-polish-kartonberta-base-alpha-v1')
model.eval()
text_1 = 'Jestem wielkim fanem opakowań tekturowych'
text_2 = 'Bardzo podobają mi się kartony'
embeddings_1 = encode_text(text_1)
embeddings_2 = encode_text(text_2)
print(cosine_similarity(embeddings_1, embeddings_2))
⚠️ 重要提示
你可以使用 encode_text
函数进行演示。为获得最佳体验,建议批量处理文本。
✨ 主要特性
- 能将文本转换为768维浮点向量空间,实现有效文本表示。
- 擅长句子或文档相似度相关任务。
📚 详细文档
模型描述
属性 |
详情 |
开发者 |
Bartłomiej Orlik, https://www.linkedin.com/in/bartłomiej-orlik/ |
模型类型 |
RoBERTa Sentence Transformer |
语言 |
波兰语 |
许可证 |
LGPL-3.0 |
训练基础模型 |
sdadas/polish-roberta-base-v2: https://huggingface.co/sdadas/polish-roberta-base-v2 |
评估
排名 |
模型 |
模型大小 (GB) |
嵌入维度 |
序列长度 |
平均得分 (26个数据集) |
分类平均得分 (7个数据集) |
聚类平均得分 (1个数据集) |
成对分类平均得分 (4个数据集) |
检索平均得分 (11个数据集) |
STS平均得分 (3个数据集) |
1 |
multilingual-e5-large |
2.24 |
1024 |
514 |
58.25 |
60.51 |
24.06 |
84.58 |
47.82 |
67.52 |
2 |
st-polish-kartonberta-base-alpha-v1 |
0.5 |
768 |
514 |
56.92 |
60.44 |
32.85 |
87.92 |
42.19 |
69.47 |
3 |
multilingual-e5-base |
1.11 |
768 |
514 |
54.18 |
57.01 |
18.62 |
82.08 |
42.5 |
65.07 |
4 |
multilingual-e5-small |
0.47 |
384 |
512 |
53.15 |
54.35 |
19.64 |
81.67 |
41.52 |
66.08 |
5 |
st-polish-paraphrase-from-mpnet |
0.5 |
768 |
514 |
53.06 |
57.49 |
25.09 |
87.04 |
36.53 |
67.39 |
6 |
st-polish-paraphrase-from-distilroberta |
0.5 |
768 |
514 |
52.65 |
58.55 |
31.11 |
87 |
33.96 |
68.78 |
🔧 技术细节
该模型目前处于Alpha版本发布阶段。由于GPU资源有限,有很多潜在的改进方法可以提升其性能,例如调整训练超参数或延长训练时间(目前仅训练了一个epoch)。
📄 许可证
该模型使用LGPL-3.0许可证。