Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks
Paper • 1908.10084 • Published • 13
How to use aimarsg/bernat_parl_contrastive with sentence-transformers:
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("aimarsg/bernat_parl_contrastive")
sentences = [
"Noiz jarri zen indarrean Euskal Autonomia Erkidegoko Bide Segurtasun Batzordea sortzen duen dekretua indargabetzen duen dekretua?",
"2013ko urriaren 16ko 427/2013 Dekretuak arautzen du René Cassin saria, zeinaren helburua baita jendaurrean aitortzea eta nabarmentzea pertsonek eta elkarteek giza eskubideen arloan egin duten lan esanguratsua eta ibilbide pertsonal edo profesionalaren bidez giza eskubideen sustapen, defentsa eta zabalkundean hartu duten konpromisoa.\nDekretu horren 3. artikuluan aurreikusten denez, urtero, Giza Eskubideen arloko eskumena duen zuzendaritzako titularrak saria emateko deialdia egingo du, ebazpen bidez; artikulu horren arabera, halaber, deialdian ezarriko da zenbat diru emango den sariaren bidez, eta hautagaiak aurkezteko epea eta tokia zein diren.\nHalaber, aipatu dekretuaren 6.1 artikuluan ezarritakoaren arabera, saria merezi duten pertsona edo pertsonak hautatzeko epaimahai bat eratuko da, Giza Eskubideen arloari loturiko itzal aitortua duten 9 pertsonez osatutakoa. Giza Eskubideen arloan eskumenak dituen zuzendaritzako titularrak izendatuko ditu pertsona horiek, ebazpen bidez.\nHorrenbestez, 2015eko ekitaldian, Biktimen eta Giza Eskubideen zuzendariak egin behar du sarirako deialdia, eta epaimahaikideak izendatu.\nHorrenbestez, hau\nEBAZTEN DUT\n:\n1. artikulua\nXedea.\nEbazpen honen xedea da «René Cassin» sarirako 2015eko deialdia egitea.\n2. artikulua\nDiru-zenbatekoa.\nSariaren diru-zenbatekoa 12.000 euro da.\n3. artikulua\nEskabideak aurkezteko epea eta lekua.\nHautagaiak aurkezteko epea hilabetekoa izango da, ebazpen hau Euskal Herriko Agintaritzaren Aldizkarian argitaratzen den egunetik aurrera.\nHautagaiak Eusko Jaurlaritzaren Bakegintza eta Bizikidetzarako Idazkaritza Nagusiko Biktimen eta Giza Eskubideen Zuzendaritzara bidali behar dira (Nafarroa kalea 2, 01007 Vitoria-Gasteiz), eta, horretarako, azaroaren 26ko 30/1992 Legearen 38.4 artikuluan ezarritako edozein modu erabili ahal izango da (30/1992 Legea, Herri Administrazioen Araubide Juridiko eta Administrazio Prozedura Erkidearena).",
"Bigarren artikulua\nLaguntzaile teknikoen kidegoan, Informatika-aplikazioak Garatzeko Goi-mailako Teknikaria aukeran sartzeko hautaketa-prozesuari dagozkion hautatutakoen eta esleitutako lanpostuen zerrenda osagarria, behin-behineko moduan, adiera ematea. Zerrenda hori Ebazpen honen II. eranskinean azaltzen da.\nHirugarren artikulua\nAurreko artikuluan aipatzen den zerrendaren aurka erreklamazioak aurkezteko, hamar egun balioduneko epea ezartzea. Epe hori, ebazpen hau argitaratzen den hurrengo egunean hasiko da.\nLaugarren artikulua\nHerri-Arduralaritzaren Euskal Erakundeko zuzendariaren Ebazpen honen beste atalen aurka, gora jotzeko errekurtsoa aurkeztu ahal izango zaio Justizia eta Herri Administrazio sailburuari. Errekurtsoa jartzeko epea hilabetekoa izango da Ebazpena Euskal Herriko Agintaritzaren Aldizkarian argitaratzen den hurrengo egunetik kontatzen hasita, hala ezartzen baita Herri Administrazioen Araubide Juridikoaren eta Administrazio Prozedura Erkidearen 30/1992 Legearen 114. artikuluan eta ondokoetan. Errekurtsoari ez bazaio ebazpen adierazirik ematen, errekurtsoa ezetsitzat joko da.\nVitoria-Gasteiz, 2013ko apirilaren 4a.\nHerri Arduralaritzaren Euskal Erakundeko zuzendaria,\nMARÍA TERESA IRURETAGOYENA IBARGUREN.\n(Ikus .PDF)\n(Ikus .PDF)",
"XEDAPEN\nINDARGABETZAILEA\nHonako hauek baliogabetuta geratzen dira: Euskal Autonomia Erkidegoko Bide Segurtasun Batzordea sortzen duen otsailaren 9ko 22/1993 Dekretua, dekretu hori aldatzen duen martxoaren 7ko 215/1995 Dekretua eta dekretu honen aurka dauden xedapen guztiak.\nAZKEN XEDAPENAK\nLehenengoa. Baimena ematen zaio Herrizaingo sailburuari dekretu honetan ezarritakoa betetzeko beharrezkoak diren xedapenak emateko.\nBigarrena. Dekretu honek Euskal Herriko Agintaritzaren Aldizkarian argitaratzen den egunaren biharamunean hartuko du indarra.\nVitoria-Gasteizen, 2008ko abenduaren 16an.\nLehendakaria,\nJUAN JOSÉ IBARRETXE MARKUARTU.\nHerrizaingo sailburua,\nJAVIER BALZA AGUILERA."
]
embeddings = model.encode(sentences)
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [4, 4]This is a sentence-transformers model finetuned from HiTZ/BERnaT_base. It maps sentences & paragraphs to a 768-dimensional dense vector space and can be used for semantic textual similarity, semantic search, paraphrase mining, text classification, clustering, and more.
SentenceTransformer(
(0): Transformer({'max_seq_length': 512, 'do_lower_case': False, 'architecture': 'RobertaModel'})
(1): Pooling({'word_embedding_dimension': 768, '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})
)
First install the Sentence Transformers library:
pip install -U sentence-transformers
Then you can load this model and run inference.
from sentence_transformers import SentenceTransformer
# Download from the 🤗 Hub
model = SentenceTransformer("aimarsg/bernat_parl_contrastive")
# Run inference
sentences = [
'Zein egunetan izango ditu ondorioak Iñaki Pérez Sanz jaunaren izendapenak?',
'Irailaren 5eko 2016/2022 Ebazpenaren bidez, Osakidetza-Euskal osasun zerbitzuko Arabako Erakunde Sanitario Integratuan Langileen Zerbitzuko Administrazio eta Kudeaketako Atalburu-A (Hautaketa eta Horniketa Arloa) lanpostu bat izendapen aske bidez betetzeko deialdia argitaratu zen.\nBatzordeak baloratu egin du aurkeztutako eskabide onartu bakarra, eta dagokion izendapen-proposamena egin du. Horiek horrela, Iñaki Pérez Sanz jaunak dituen ezagutza akademiko eta profesionalak kontuan hartuta, erabaki da hura izendatzea, izendapen aske bidez, Osakidetza-Euskal osasun zerbitzuko Arabako Erakunde Sanitario Integratuko Langileen Zerbitzuko Administrazio eta Kudeaketako Atalburu-A (Hautaketa eta Horniketa Arloa).\nBeraz, bat etorriz Euskadiko Antolamendu Sanitarioari buruzko ekainaren 26ko 8/1997 Legearen 28. artikuluaren hirugarren arau komunarekin, Osakidetzaren lanpostu funtzionalak arautzen dituen uztailaren 19ko 186/2005 Dekretuarekin eta azaroaren 11ko 255/1997 Dekretuarekin,\nEBAZTEN DUT\n:\nLehenengoa. Iñaki Pérez Sanz jauna izendatzea Langileen Zerbitzuko Administrazio eta Kudeaketako Atalburu-A (Hautaketa eta Horniketa Arloa) Osakidetza-Euskal osasun zerbitzuko Arabako Erakunde Sanitario Integratuan.\nBigarrena. Izendapen honek 2022ko azaroaren 9an izango ditu ondorioak.\nHirugarrena. Izendapenak egin dituen organoak edozein unetan kargugabetu ditzake, bere eskumen-ahalez, izendapen askeko sistemaren bidez izendatu dituen langileak. Kargutik kentzeak edo mugiarazteak zera eragingo du: langilea beste postu funtzional batera lekualdatuko da, baina, edonola ere, interesdunak duen kategoriari dagozkion baldintzei eutsiko die. Hain zuzen, antzeko ezaugarriak dituen lanpostu bati atxikiko zaio eta, ahal dela, izendapena jaso aurretik bera zegoen antolakuntza- eta lurraldetasun-baldintza berberetan. Atxikipen horrek, hain zuzen, kargugabetze-dataren hurrengo egunetik aurrera izango ditu ondorioak, eta lanpostua betetzeko eskatzen diren betekizun eta baldintza guztiak bete beharko ditu.',
'g) Zertarako ematen den diru-laguntza, horretarako erabiltzea, eta ez beste ezertarako.\nh) Diru-laguntza eman dion erakundeari jakinaraztea Estatuko edo nazioarteko beste edozein administraziok edo erakunde publikok nahiz pribatuk helburu bererako bestelako diru-laguntzak edo laguntzak eman dizkiola.\nKontrol Ekonomikoko Bulegoari eta Herri Kontuen Euskal Epaitegiari, beren eginkizunetan dihardutela, deialdi honen kontura jasotako diru-laguntzen inguruan eskatzen duten informazioa ematea.\nj) Laguntza ematerakoan kontuan izan zen dena delako egoera objektibo edo subjektiboa aldatu egin baldin bada, horren berri ematea laguntza eman duen erakundeari.\nk) Polizia eta Larrialdietako Euskal Akademiak eskatzen duen informazioa ematea, bereziki eginbeharrak bete izana justifikatzeari dagokionez. Informazio hori diru-laguntza ordaindu aurretik eman beharko da.\n8. artikulua\nDiru-laguntzak eskuratzeko kirol-irizpideak.\nEskatzaileek, ebazpen honetan araututako laguntzak eskuratzeko, gutxienez baldintza hauetakoren bat betetzen dutela egiaztatu beharko dute:\n2015eko Polizien eta Suhiltzaileen Munduko Jokoetan, 5. postua edo hobea lortu izana egiaztatzea. Taldekako probetan, nahikoa izango da taldeko partaide batek egiaztatzea postu hori.\nEdo, bestela, urrezko domina bat, edo zilarrezko bi, edo brontzezko hiru lortu izana 2009tik 2014ra bitartean, biak barne, izandako Munduko Jokoetan edo Europakoetan, eta hala egiaztatzea.\n9. artikulua\nHautatzeko prozedura.\nEskatzaileen artean banatuko dira laguntzak, Polizia eta Larrialdietako Euskal Akademiaren zuzendari nagusiaren ebazpen bidez, eta ebazpen honetako 10. artikuluan araututako Balorazio Epaimahaiaren proposamenez.\nEbazpen honetako 7. artikuluan zehaztutako eginbeharrak eta 8. artikuluan ezarritako kirol-irizpideak betetzen dituzten eskatzaileei esleituko zaie diru-hornidura.\nHori horrela izanik, ebazpen honetako 2. artikuluan zehaztutako ehunekoak eta zenbatekoa kontuan hartuz emango dira laguntzak. Dena dela, diru-hornidura nahikoa ez balitz, eskatzaileen artean hainbanatuko litzateke, betiere diru-horniduraren zenbatekoa gainditu gabe.\n10. artikulua\nBalorazio Epaimahaia.',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]
# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities)
# tensor([[ 1.0000, 0.8474, -0.1376],
# [ 0.8474, 1.0000, -0.1482],
# [-0.1376, -0.1482, 1.0000]])
multilingual-e5-largeTripletEvaluator| Metric | Value |
|---|---|
| cosine_accuracy | 0.8039 |
anchor and positive| anchor | positive | |
|---|---|---|
| type | string | string |
| details |
|
|
| anchor | positive |
|---|---|
Zein legek dio hirigintza-planak onartzeak badakarrela obren onura publikoa deklaratzea eta lurrak eta gainerako ondasun eta eskubideak okupatu beharra? |
Sail honek argitaratzen den agindu hau eman du gaur: |
Zein da epea HABEko lehendakariari gora jotzeko errekurtsoa aurkezteko ebazpen honen aurka? |
a) Dirulaguntza eman den helburu jakin hartako erabiltzea. |
Nork osatzen du Euskal Kultura Ondarea babesteko ikerketa-lanak egiteko diru-laguntzetarako balorazio-batzordea? |
Aztertuta geratu da Kultura eta Hizkuntza Politikako sailburuaren 2018ko maiatzaren 3ko Agindua, Euskal Kultura Ondarea babesteko ikerketa-lanak egiteko diru-laguntzetarako deialdia egiten duena 2018-2019 aldirako. |
MultipleNegativesRankingLoss with these parameters:{
"scale": 20.0,
"similarity_fct": "cos_sim",
"gather_across_devices": false
}
anchor, positive, and negative| anchor | positive | negative | |
|---|---|---|---|
| type | string | string | string |
| details |
|
|
|
| anchor | positive | negative |
|---|---|---|
Zein irakasle funtzionarioren destinoa aldatu da Hezkuntzako sailburuaren 2023ko apirilaren 25eko Aginduan? |
Hezkuntzako sailburuaren 2023ko apirilaren 25eko Aginduaren bidez, argitara eman zen Euskal Autonomia Erkidegoko Hezkuntza Sailaren menpeko Bigarren Hezkuntzako Katedradun eta Irakasleen, Lanbide Heziketako Irakasle Teknikoen, Hizkuntza Eskola Ofizialetako Katedradun eta Irakasleen, Musikako eta Arte Eszenikoetako Katedradun eta Irakasleen eta Arte Plastikoetako eta Diseinuko Katedradun eta irakasleen kidegoetako irakasle funtzionarioen lekualdatze-lehiaketako destinoen behin betiko esleipena. |
Hezkuntzako sailburuaren 2023ko apirilaren 25eko aginduan jasotako lekualdatze-lehiaketaren behin betiko ebazpena aldatzea. |
Zein egunetan jarri zen indarrean 186/2017 Dekretuaren bidez onartutako Euskal Autonomia Erkidegoko ikastetxeetan hezkuntza-premia bereziak dituzten ikasleei laguntzeko irakasle ez diren lan-kontratudun langileen lanpostuen zerrenda? |
Uztailak 4ko 186/2017 Dekretuaren bidez onartu zen Euskal Autonomia Erkidegoko ikastetxeetan hezkuntza-premia bereziak dituzten ikasleei laguntzeko irakasle ez diren lan-kontratudun langileen lanpostuen zerrenda, zeina 2017ko uztailaren 11ko Euskal Herriko Agintaritzaren Aldizkariaren argitaratu baitzen (131. zenbakia). Dekretu hori zuzendu egin zen, eta lanpostuen zerrenda osatzen duen eranskina, akatsak behin zuzenduta, berriro argitaratu zen 2017ko abuztuaren 29ko Euskal Herriko Agintaritzaren Aldizkarian (164. zenbakia). |
Uztailaren 4ko 186/2017 Dekretuaren bidez onartu zen Euskal Autonomia Erkidegoko ikastetxeetan hezkuntza-premia bereziak dituzten ikasleei laguntzeko irakasle ez diren lan-kontratudun langileen lanpostuen |
Zein ebazpenek argitaratu zuen Lekualdatze-lehiaketa ireki eta iraunkorraren 2021eko azaroko zikloko eskaintza? |
Osakidetza-Euskal osasun zerbitzuko zuzendari nagusiaren urriaren 21eko 1314/2021 Ebazpenaren bidez, Lekualdatze-lehiaketa ireki eta iraunkorrerako deialdia egin zen D3 Teknikari Laguntzaile Profesionalak lanbide-taldeari dagokionez I. eranskinean jasotako kategorietarako/lanpostu funtzionaletarako, zeinetan Mantentze Lanetako Ofiziala kategoria sartzen baita (2021eko azaroaren 8ko EHAA 221. zk.); hain zuzen, prozesu hori Osakidetza-Euskal osasun zerbitzuko Administrazio Kontseiluaren 2019ko azaroaren 27ko Erabakiaren eranskinean jasotako oinarrien arabera arautuko da. |
Ingeniari Teknikoa kategoriako (Mantentze Lanetako eta Instalazioetako Erdi Mailako Teknikaria lanpostu funtzionala) Lekualdatze-lehiaketa ireki eta iraunkorraren 2021eko azaroko zikloko destinoen eskaintza |
MultipleNegativesRankingLoss with these parameters:{
"scale": 20.0,
"similarity_fct": "cos_sim",
"gather_across_devices": false
}
eval_strategy: epochlearning_rate: 2e-05warmup_ratio: 0.1batch_sampler: no_duplicatesoverwrite_output_dir: Falsedo_predict: Falseeval_strategy: epochprediction_loss_only: Trueper_device_train_batch_size: 8per_device_eval_batch_size: 8per_gpu_train_batch_size: Noneper_gpu_eval_batch_size: Nonegradient_accumulation_steps: 1eval_accumulation_steps: Nonetorch_empty_cache_steps: Nonelearning_rate: 2e-05weight_decay: 0.0adam_beta1: 0.9adam_beta2: 0.999adam_epsilon: 1e-08max_grad_norm: 1.0num_train_epochs: 3max_steps: -1lr_scheduler_type: linearlr_scheduler_kwargs: {}warmup_ratio: 0.1warmup_steps: 0log_level: passivelog_level_replica: warninglog_on_each_node: Truelogging_nan_inf_filter: Truesave_safetensors: Truesave_on_each_node: Falsesave_only_model: Falserestore_callback_states_from_checkpoint: Falseno_cuda: Falseuse_cpu: Falseuse_mps_device: Falseseed: 42data_seed: Nonejit_mode_eval: Falseuse_ipex: Falsebf16: Falsefp16: Falsefp16_opt_level: O1half_precision_backend: autobf16_full_eval: Falsefp16_full_eval: Falsetf32: Nonelocal_rank: 0ddp_backend: Nonetpu_num_cores: Nonetpu_metrics_debug: Falsedebug: []dataloader_drop_last: Falsedataloader_num_workers: 0dataloader_prefetch_factor: Nonepast_index: -1disable_tqdm: Falseremove_unused_columns: Truelabel_names: Noneload_best_model_at_end: Falseignore_data_skip: Falsefsdp: []fsdp_min_num_params: 0fsdp_config: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}fsdp_transformer_layer_cls_to_wrap: Noneaccelerator_config: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}parallelism_config: Nonedeepspeed: Nonelabel_smoothing_factor: 0.0optim: adamw_torch_fusedoptim_args: Noneadafactor: Falsegroup_by_length: Falselength_column_name: lengthddp_find_unused_parameters: Noneddp_bucket_cap_mb: Noneddp_broadcast_buffers: Falsedataloader_pin_memory: Truedataloader_persistent_workers: Falseskip_memory_metrics: Trueuse_legacy_prediction_loop: Falsepush_to_hub: Falseresume_from_checkpoint: Nonehub_model_id: Nonehub_strategy: every_savehub_private_repo: Nonehub_always_push: Falsehub_revision: Nonegradient_checkpointing: Falsegradient_checkpointing_kwargs: Noneinclude_inputs_for_metrics: Falseinclude_for_metrics: []eval_do_concat_batches: Truefp16_backend: autopush_to_hub_model_id: Nonepush_to_hub_organization: Nonemp_parameters: auto_find_batch_size: Falsefull_determinism: Falsetorchdynamo: Noneray_scope: lastddp_timeout: 1800torch_compile: Falsetorch_compile_backend: Nonetorch_compile_mode: Noneinclude_tokens_per_second: Falseinclude_num_input_tokens_seen: Falseneftune_noise_alpha: Noneoptim_target_modules: Nonebatch_eval_metrics: Falseeval_on_start: Falseuse_liger_kernel: Falseliger_kernel_config: Noneeval_use_gather_object: Falseaverage_tokens_across_devices: Falseprompts: Nonebatch_sampler: no_duplicatesmulti_dataset_batch_sampler: proportionalrouter_mapping: {}learning_rate_mapping: {}| Epoch | Step | Training Loss | Validation Loss | multilingual-e5-large_cosine_accuracy |
|---|---|---|---|---|
| 0.0815 | 100 | 1.4103 | - | - |
| 0.1630 | 200 | 0.3921 | - | - |
| 0.2445 | 300 | 0.2704 | - | - |
| 0.3260 | 400 | 0.1789 | - | - |
| 0.4075 | 500 | 0.1661 | - | - |
| 0.4890 | 600 | 0.1624 | - | - |
| 0.5705 | 700 | 0.1744 | - | - |
| 0.6520 | 800 | 0.1531 | - | - |
| 0.7335 | 900 | 0.1444 | - | - |
| 0.8150 | 1000 | 0.1054 | - | - |
| 0.8965 | 1100 | 0.0865 | - | - |
| 0.9780 | 1200 | 0.0837 | - | - |
| 1.0 | 1227 | - | 0.7737 | 0.7672 |
| 1.0595 | 1300 | 0.0848 | - | - |
| 1.1410 | 1400 | 0.0434 | - | - |
| 1.2225 | 1500 | 0.0933 | - | - |
| 1.3040 | 1600 | 0.0703 | - | - |
| 1.3855 | 1700 | 0.0382 | - | - |
| 1.4670 | 1800 | 0.063 | - | - |
| 1.5485 | 1900 | 0.0348 | - | - |
| 1.6300 | 2000 | 0.096 | - | - |
| 1.7115 | 2100 | 0.0509 | - | - |
| 1.7930 | 2200 | 0.0625 | - | - |
| 1.8745 | 2300 | 0.0637 | - | - |
| 1.9560 | 2400 | 0.0709 | - | - |
| 2.0 | 2454 | - | 0.6277 | 0.7941 |
| 2.0375 | 2500 | 0.0378 | - | - |
| 2.1190 | 2600 | 0.0371 | - | - |
| 2.2005 | 2700 | 0.0318 | - | - |
| 2.2820 | 2800 | 0.031 | - | - |
| 2.3635 | 2900 | 0.0222 | - | - |
| 2.4450 | 3000 | 0.0286 | - | - |
| 2.5265 | 3100 | 0.0368 | - | - |
| 2.6080 | 3200 | 0.0288 | - | - |
| 2.6895 | 3300 | 0.0345 | - | - |
| 2.7710 | 3400 | 0.0295 | - | - |
| 2.8525 | 3500 | 0.034 | - | - |
| 2.9340 | 3600 | 0.0497 | - | - |
| 3.0 | 3681 | - | 0.5890 | 0.8039 |
@inproceedings{reimers-2019-sentence-bert,
title = "Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks",
author = "Reimers, Nils and Gurevych, Iryna",
booktitle = "Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing",
month = "11",
year = "2019",
publisher = "Association for Computational Linguistics",
url = "https://arxiv.org/abs/1908.10084",
}
@misc{henderson2017efficient,
title={Efficient Natural Language Response Suggestion for Smart Reply},
author={Matthew Henderson and Rami Al-Rfou and Brian Strope and Yun-hsuan Sung and Laszlo Lukacs and Ruiqi Guo and Sanjiv Kumar and Balint Miklos and Ray Kurzweil},
year={2017},
eprint={1705.00652},
archivePrefix={arXiv},
primaryClass={cs.CL}
}
Base model
HiTZ/BERnaT-base