Views
No views yet
1from sentence_transformers import SentenceTransformer
2from sentence_transformers.util import cos_sim
3
4model = SentenceTransformer(
5 "sdadas/mmlw-retrieval-roberta-large-v2",
6 model_kwargs={"dtype": torch.bfloat16}
7)
8
9# Retrieval example
10query_prefix = "[query]: "
11queries = [query_prefix + "Jak dożyć 100 lat?"]
12answers = [
13 "Trzeba zdrowo się odżywiać i uprawiać sport.",
14 "Trzeba pić alkohol, imprezować i jeździć szybkimi autami.",
15 "Gdy trwała kampania politycy zapewniali, że rozprawią się z zakazem niedzielnego handlu."
16]
17queries_emb = model.encode(queries, convert_to_tensor=True, show_progress_bar=False)
18answers_emb = model.encode(answers, convert_to_tensor=True, show_progress_bar=False)
19best_answer = cos_sim(queries_emb, answers_emb).argmax().item()
20print(answers[best_answer])
21
22# Semantic similarity example
23sim_prefix = "[sts]: "
24sentences = [
25 sim_prefix + "Trzeba zdrowo się odżywiać i uprawiać sport.",
26 sim_prefix + "Warto jest prowadzić zdrowy tryb życia, uwzględniający aktywność fizyczną i dietę.",
27 sim_prefix + "One should eat healthy and engage in sports.",
28 sim_prefix + "Zakupy potwierdzasz PINem, który bezpiecznie ustalisz podczas aktywacji."
29]
30emb = model.encode(sentences, convert_to_tensor=True, show_progress_bar=False)
31print(cos_sim(emb, emb))
321@inproceedings{dadas2024pirb,
2 title={PIRB: A Comprehensive Benchmark of Polish Dense and Hybrid Text Retrieval Methods},
3 author={Dadas, Slawomir and Pere{\l}kiewicz, Micha{\l} and Po{\'s}wiata, Rafa{\l}},
4 booktitle={Proceedings of the 2024 Joint International Conference on Computational Linguistics, Language Resources and Evaluation (LREC-COLING 2024)},
5 pages={12761--12774},
6 year={2024}
7}