Views
No views yet
SentenceTransformer(
(0): Transformer({'max_seq_length': 8192, 'do_lower_case': False}) with Transformer model: VietnameseModel
(1): Pooling({'word_embedding_dimension': 768, 'pooling_mode_cls_token': True, 'pooling_mode_mean_tokens': False, '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()
)pip install -U sentence-transformers1from sentence_transformers import SentenceTransformer
2sentences = ["Hà Nội là thủ đô của Việt Nam", "Đà Nẵng là thành phố du lịch"]
3
4
5model = SentenceTransformer('dangvantuan/vietnamese-document-embedding', trust_remote_code=True)
6embeddings = model.encode(sentences)
7print(embeddings)
81from sentence_transformers import SentenceTransformer
2from sentence_transformers.readers import InputExample
3from datasets import load_dataset
4def convert_dataset(dataset):
5 dataset_samples=[]
6 for df in dataset:
7 score = float(df['score'])/5.0 # Normalize score to range 0 ... 1
8 inp_example = InputExample(texts=[df['sentence1'], df['sentence2']], label=score)
9 dataset_samples.append(inp_example)
10 return dataset_samples
11
12# Loading the dataset for evaluation
13vi_sts = load_dataset("doanhieung/vi-stsbenchmark")["train"]
14df_dev = vi_sts.filter(lambda example: example['split'] == 'dev')
15df_test = vi_sts.filter(lambda example: example['split'] == 'test')
16
17# Convert the dataset for evaluation
18
19# For Dev set:
20dev_samples = convert_dataset(df_dev)
21val_evaluator = EmbeddingSimilarityEvaluator.from_input_examples(dev_samples, name='sts-dev')
22val_evaluator(model, output_path="./")
23
24# For Test set:
25test_samples = convert_dataset(df_test)
26test_evaluator = EmbeddingSimilarityEvaluator.from_input_examples(test_samples, name='sts-test')
27test_evaluator(model, output_path="./")| Model | [STSB] | [STS12] | [STS13] | [STS14] | [STS15] | [STS16] | [SICK] | Mean |
|---|---|---|---|---|---|---|---|---|
| dangvantuan/vietnamese-embedding | 84.84 | 79.04 | 85.30 | 81.38 | 87.06 | 79.95 | 79.58 | 82.45 |
| dangvantuan/vietnamese-embedding-LongContext | 85.25 | 75.77 | 83.82 | 81.69 | 88.48 | 81.5 | 78.2 | 82.10 |
@article{reimers2019sentence,
title={Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks},
author={Nils Reimers, Iryna Gurevych},
journal={https://arxiv.org/abs/1908.10084},
year={2019}
}
@article{zhang2024mgte,
title={mGTE: Generalized Long-Context Text Representation and Reranking Models for Multilingual Text Retrieval},
author={Zhang, Xin and Zhang, Yanzhao and Long, Dingkun and Xie, Wen and Dai, Ziqi and Tang, Jialong and Lin, Huan and Yang, Baosong and Xie, Pengjun and Huang, Fei and others},
journal={arXiv preprint arXiv:2407.19669},
year={2024}
}
@article{li2023towards,
title={Towards general text embeddings with multi-stage contrastive learning},
author={Li, Zehan and Zhang, Xin and Zhang, Yanzhao and Long, Dingkun and Xie, Pengjun and Zhang, Meishan},
journal={arXiv preprint arXiv:2308.03281},
year={2023}
}
@article{li20242d,
title={2d matryoshka sentence embeddings},
author={Li, Xianming and Li, Zongxi and Li, Jing and Xie, Haoran and Li, Qing},
journal={arXiv preprint arXiv:2402.14776},
year={2024}
}