Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks
Paper • 1908.10084 • Published • 15
How to use cuadron11/mrbert-bopv-ft with sentence-transformers:
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("cuadron11/mrbert-bopv-ft")
sentences = [
"Nork du eskumena larrialdietako lanbide-jardunaren ziurtagiria emateko EAEko osasun-zentro publikoetan ibilbide profesionala egin duten interesdunen kasuan?",
"Parte hartzeko eskubidea izanik, Espainiako nazionalitatea ez duten izangaiek nazionalitatea egiaztatzen dien dokumentua aurkeztu behar dute eta, beste Estatu bateko nazionalitatea duen batekiko ahaidetasun-lotura edo haren kontura biziz gero, lotura hori dutela egiaztatzen duten dokumentuak ere bai. Era berean, ezkontidearen zinpeko aitorpen bat edo hitzemate bat aurkeztu behar dute beste ezkontideagandik eskubidez bananduta ez dagoela adierazteko eta, hala badagokio, izangaia haren kontura edo kargura dagoela adierazteko.\nElkargoko kide izatearen egiaztagiria, deialdiko oinarri espezifikoetan hala eskatzen denean.\nDiziplina-espediente bidez, izangaia administrazio publikoetako zerbitzuetatik ez dagoela kanporatuta eta eginkizun publikoetarako ez dagoela ezgaitua adierazten duen zinpeko aitorpena edo agindua.\nEspainiako nazionalitatea ez duten izangaiek, Espainiako Estatuari buruzko aitorpenaz gain, zinpeko aitorpena edo agindua aurkeztu behar dute, esanez ez daudela eginkizun publikoetarako gaitasunez gabetuta edo antzeko egoera batean, eta orobat haien Estatuan, baldintza beretan, funtzio publikora sartzea eragozteko moduko diziplina-zehapen edo baliokiderik ez dutela.\nDestinoaz jabetzeko unean, destinoa normaltasunez betetzeko behar den gaitasun psikofisikoa egiaztatzen duen azterketa medikoaren dokumentua aurkeztu behar dute, Osakidetzako Prebentzio Zerbitzuak emana.\nHirugarrena. Emandako epe horretan aipatutako agiriekin bertaratzen ez direnak edo agiri horiek aztertuta antzematen bada kategoria/lanpostu funtzionalean sartzeko betebeharren bat betetzen ez dutela, ezingo dira jabetu esleitu zaien langile estatutarioaren destinoaz. Ondorioz, deuseztatuta geratuko dira jarduerak, eta hori ez da eragozpena izango hasierako eskabidean faltsukeriaren bat jartzeagatik izan dezaketen erantzukizuna eskatzeko.\nEra berean, interesdunei gogorarazten zaie epe barruan edo, hala dagokionean, epe luzatuan destinoaz jabetzen ez badira, hautatze-probetatik eratorritako eskubideak galduko dituztela.",
"Dekretuan emandako idazkeran, hezkuntza-arloko eskumena duen sailburuak zehaztuko du ikastetxe publikoetan eta pribatu itunduetan hezkuntza-sistemako lanbide-heziketa egin nahi duten ikasleak onartzeko",
"Agindu honen xedea da EAEko lurralde-eremuan larrialdietako lanbide-jardunaren ziurtagiria emateko ardura izango duten unitateak izendatzea ziurtagiri hori beharrezkoa da ondoren larrialdietako medikuntzako espezialistaren ziurtagiria lortzeko, bai eta ziurtagiri hori emateko prozedura arautzea ere, gure lurralde-eremuko osasun-zentro pribatuetan egindako lanbide-jardunaren kasuan, uztailaren 2ko 610/2024 Errege Dekretuan jasotakoaren arabera (errege-dekretu horrek Larrialdietako Medikuntzako mediku espezialistaren titulua ezartzen du, eta Familia eta Komunitateko Medikuntzako mediku espezialistaren tituluaren prestakuntzako zenbait alderdi eguneratzen ditu).\nHorretarako, Jaurlaritzari buruzko ekainaren 30eko 7/1981 Legearen 26. eta 28. artikuluetan ezarritako eskumenen arabera,\nXEDATZEN DUT\n:\n1. artikulua\nLanbide-jardunaren egiaztagiria emateko unitate eskudunak.\na) Plangintza, Antolamendu eta Ebaluazio Sanitarioko zuzendariak du egiaztapen-ziurtagiria emateko eskumena, ibilbide profesionala EAEko osasun-zentro pribatuetan egin duten interesdunen kasuan.\nb) Osakidetza-Euskal osasun zerbitzuko Giza Baliabideetako Zuzendaritzak du egiaztapen-ziurtagiria emateko eskumena, ibilbide profesionala EAEko osasun-zentro publikoetan egin duten interesdunen kasuan.\n2. artikulua\nEAEko osasun-zentro pribatuen kasuan ziurtagiria emateko prozedura.\nUztailaren 2ko 610/2024 Errege Dekretuaren lehen xedapen iragankorraren 5. apartatuko c) letraren arabera, prozedura alderdi batek eskatuta hasiko da. Horretarako, interesdunak dagokion eskaera aurkeztu beharko du, eta eskaerarekin batera, C.1.1 osasun-zentroetako U.68 laguntza-unitateko edo C.2.5.7 osasun-zentroetako U.100 laguntza-unitateko gerentearen edo legezko ordezkariaren proposamena aurkeztu beharko du, egiaztatutako aldi osoan baimendua, osasun-zentro, -zerbitzu eta -establezimenduak baimentzeko oinarri orokorrak ezartzen dituen urriaren 10eko 1277/2003 Errege Dekretuan xedatutakoaren arabera."
]
embeddings = model.encode(sentences)
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [4, 4]This is a sentence-transformers model finetuned from BSC-LT/MrBERT. 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': 8192, 'do_lower_case': False, 'architecture': 'ModernBertModel'})
(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("cuadron11/mrbert-bopv-ft")
# Run inference
sentences = [
'Zein da epea agindu honen aurkako administrazioarekiko auzi-errekurtsoa aurkezteko?',
'Pertsona fisikoei dagokienez, laguntza soziosanitarioak ez ezik laguntza horiek aplikatzeko baliabideak ere behar dituztenak izango dira onuradun.\nHirugarrena. Agindu hau Euskal Herriko Agintaritzaren Aldizkarian argitaratzea eta fundazioari bidaltzea.\nAgindu honek amaiera ematen dio administrazio-bideari, eta, beraren aurka, berraztertzeko errekurtsoa aurkeztu ahal izango zaio Herri Administrazio eta Justiziako sailburuari, hilabeteko epean, agindua jakinarazi eta biharamunetik aurrera; edo bestela, administrazioarekiko auzi-errekurtsoa aurkez daiteke Euskal Autonomia Erkidegoko Auzitegi Nagusiko Administrazioarekiko Auzietako Salan, bi hilabeteko epean, agindua jakinarazi eta biharamunetik aurrera.\nVitoria-Gasteiz, 2013ko apirilaren 19a.\nHerri Administrazio eta Justiziako sailburua,\nJOSU IÑAKI ERCORECA GERVASIO.',
'Horretarako, agindu honen aurkako administrazioarekiko auzi-errekurtsoa aurkezteko bi hilabeteko epea bukaturik egon beharko da.',
]
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.8555, 0.8398],
# [0.8555, 1.0078, 0.8750],
# [0.8398, 0.8750, 1.0078]], dtype=torch.bfloat16)
mrbert-bopv-ftTripletEvaluator| Metric | Value |
|---|---|
| cosine_accuracy | 0.4979 |
anchor and positive| anchor | positive | |
|---|---|---|
| type | string | string |
| details |
|
|
| anchor | positive |
|---|---|
Zein da Hezkuntza-orientazioaren espezialitateko Bigarren Hezkuntzako Irakasleen Kidegoko akatsen zuzenketa? |
Bigarren Hezkuntzako katedradun eta irakasleen, Lanbide Heziketako irakasle teknikoen, Hizkuntza Eskola Ofizialetako katedradun eta irakasleen, eta Musikako eta Arte Eszenikoko katedradun eta irakasleen eta Arte Plastikoetako eta Diseinuko katedradun eta irakasleen kidegoetako funtzionarioen arteko lekualdatze-lehiaketarako deialdia egiten duen 2009ko azaroaren 18ko Aginduaren (abenduaren 4ko EHAA) hogeita bigarren oinarrian ezarritakoarekin bat etorriz, 2010eko ekainaren 10eko Aginduaren bitartez aipatu lekualdatze-lehiaketaren behin betiko esleipena argitaratu zen. |
Zein dira Etxepare Euskal Institutuak egindako deialdian parte hartzeko behar diren baldintzak? |
Etxepare Euskal Institutua (aurrerantzean EEI) Sortzeko eta Arautzeko 3/2007 Legearen 3.b) artikuluak ondoko helburua xedatzen du aipatutako Institutuarentzat: «Euskal Kultura bere hizkuntza ofizialetako edozeinetan eta zeinahi adierazpen, euskarri, bide eta adierazmoldetan kanpoan ezagutarazten eta hedatzen laguntzea, bereziki euskaraz sortutako kultura-eskaintza sustatuz eta hedatuz». |
Nork onartu du 2021eko irailaren 29an sinatutako hitzarmenaren aldaketa? |
HAUEN IZENEAN ARI DIRA: |
MultipleNegativesRankingLoss with these parameters:{
"scale": 20.0,
"similarity_fct": "cos_sim",
"gather_across_devices": false,
"directions": [
"query_to_doc"
],
"partition_mode": "joint",
"hardness_mode": null,
"hardness_strength": 0.0
}
anchor, positive, and negative| anchor | positive | negative | |
|---|---|---|---|
| type | string | string | string |
| details |
|
|
|
| anchor | positive | negative |
|---|---|---|
Noiz egingo da alemaneko Gaitasun Mailaren Egiaztagiria (C1) lortzeko idatzizko proba? |
Gaitasun Mailaren Egiaztagiria (C1). Euskara ez beste edozein hizkuntzatan Gaitasun Mailaren Egiaztagiria (C1) eskuratzeko, maila horretan matrikulatutako ikasle libreek ebaluazio positiboa lortu beharko dute trebetasun hauetan: entzumena, irakurmena, idazmena eta mintzamena. Trebetasun horietako edozeinetan ebaluazio negatiboa izanez gero, ikasleak ezingo du egiaztagiria lortu. |
Proba gainditzen badute, Gaitasun Mailaren (C1) egiaztagiria eskuratuko dute ikasleek. |
Zein dira Barakaldo-Sestaoko ESIko Ospitalizazioko Gainbegiralea lanpostua lortzeko eskatzen diren gutxieneko baldintzak? |
Barakaldo-Sestaoko ESIko Ospitalizazioko Gainbegiralea lanpostua hutsik dago. Hori dela-eta, Euskadiko Antolamendu Sanitarioari buruzko ekainaren 26ko 8/1997 Legearen 28. artikuluaren hirugarren arau komunean, Osakidetzaren lanpostu funtzionalak arautzen dituen uztailaren 19ko 186/2005 Dekretuan eta azaroaren 11ko 255/1997 Dekretuan ezartzen denaren arabera, lanpostu hori izendapen askez betetzeko deialdi publikoa iragartzea erabaki du Zuzendaritza Gerentzia honek, honako oinarri hauen arabera |
Ikusi ditugu: Ingurumen, Lurralde Plangintza eta Etxebizitzako sailburuaren 2017ko uztailaren 19ko Agindua, han baitaude arauturik eta konbokaturik ebazten ari garen diru-laguntzak, honako hauei zuzenduta daudenak: garapen iraunkorreko ekintzak gauzatzen dituzten udal, mankomunitate eta beste toki-entitate eta tokiko erakunde autonomo, toki-garapenerako agentzia eta tokiko merkataritza-sozietateak; apirilaren 11ko 77/2017 Dekretua, Ingurumen, Lurralde Plangintza eta Etxebizitza Sailaren egitura organiko eta funtzionala ezartzen duena; 24/2016 Dekretua, azaroaren 26koa, Lehendakariarena, Euskal Autonomia Erkidegoko administrazioko sailak sortu, ezabatu eta aldatzen dituena eta haien egitekoak eta jardun-arloak finkatzen dituena; 30/1992 Legea, azaroaren 26koa, Herri Administrazioen Araubide Juridikoaren eta Administrazio Prozedura Erkidearena; 39/2015 Legea, urriaren 1ekoa, Administrazio Publikoen Administrazio Prozedura Erkidearena, eta orokorrean aplikatu beharreko gainerako arauak. H... |
Zein da epea Herri Administrazio eta Justiziako sailburuari gora jotzeko errekurtsoa ezartzeko ebazpen honen kontra? |
Herri Arduralaritzaren Euskal Erakundeko zuzendariak, 2014ko abuztuaren 25eko Ebazpenaz (2014-09-09ko EHAA, 170. zk.), hizkuntza-eskakizunak egiaztatzeko probetarako deia egin zuen. |
Ebazpen honetan xedatutakoaren kontra, gora jotzeko errekurtsoa jar dakioke Herri Administrazio eta Justiziako sailburuari, ebazpen hau Euskal Herriko Agintaritzaren Aldizkarian argitaratu eta hilabeteko |
MultipleNegativesRankingLoss with these parameters:{
"scale": 20.0,
"similarity_fct": "cos_sim",
"gather_across_devices": false,
"directions": [
"query_to_doc"
],
"partition_mode": "joint",
"hardness_mode": null,
"hardness_strength": 0.0
}
per_device_train_batch_size: 64learning_rate: 2e-05warmup_steps: 0.1eval_strategy: epochper_device_eval_batch_size: 64batch_sampler: no_duplicatesper_device_train_batch_size: 64num_train_epochs: 3max_steps: -1learning_rate: 2e-05lr_scheduler_type: linearlr_scheduler_kwargs: Nonewarmup_steps: 0.1optim: adamw_torch_fusedoptim_args: Noneweight_decay: 0.0adam_beta1: 0.9adam_beta2: 0.999adam_epsilon: 1e-08optim_target_modules: Nonegradient_accumulation_steps: 1average_tokens_across_devices: Truemax_grad_norm: 1.0label_smoothing_factor: 0.0bf16: Falsefp16: Falsebf16_full_eval: Falsefp16_full_eval: Falsetf32: Nonegradient_checkpointing: Falsegradient_checkpointing_kwargs: Nonetorch_compile: Falsetorch_compile_backend: Nonetorch_compile_mode: Noneuse_liger_kernel: Falseliger_kernel_config: Noneuse_cache: Falseneftune_noise_alpha: Nonetorch_empty_cache_steps: Noneauto_find_batch_size: Falselog_on_each_node: Truelogging_nan_inf_filter: Trueinclude_num_input_tokens_seen: nolog_level: passivelog_level_replica: warningdisable_tqdm: Falseproject: huggingfacetrackio_space_id: trackioeval_strategy: epochper_device_eval_batch_size: 64prediction_loss_only: Trueeval_on_start: Falseeval_do_concat_batches: Trueeval_use_gather_object: Falseeval_accumulation_steps: Noneinclude_for_metrics: []batch_eval_metrics: Falsesave_only_model: Falsesave_on_each_node: Falseenable_jit_checkpoint: Falsepush_to_hub: Falsehub_private_repo: Nonehub_model_id: Nonehub_strategy: every_savehub_always_push: Falsehub_revision: Noneload_best_model_at_end: Falseignore_data_skip: Falserestore_callback_states_from_checkpoint: Falsefull_determinism: Falseseed: 42data_seed: Noneuse_cpu: Falseaccelerator_config: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}parallelism_config: Nonedataloader_drop_last: Falsedataloader_num_workers: 0dataloader_pin_memory: Truedataloader_persistent_workers: Falsedataloader_prefetch_factor: Noneremove_unused_columns: Truelabel_names: Nonetrain_sampling_strategy: randomlength_column_name: lengthddp_find_unused_parameters: Noneddp_bucket_cap_mb: Noneddp_broadcast_buffers: Falseddp_backend: Noneddp_timeout: 1800fsdp: []fsdp_config: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}deepspeed: Nonedebug: []skip_memory_metrics: Truedo_predict: Falseresume_from_checkpoint: Nonewarmup_ratio: Nonelocal_rank: -1prompts: Nonebatch_sampler: no_duplicatesmulti_dataset_batch_sampler: proportionalrouter_mapping: {}learning_rate_mapping: {}| Epoch | Step | Validation Loss | mrbert-bopv-ft_cosine_accuracy |
|---|---|---|---|
| 1.0 | 154 | 4.6521 | 0.4718 |
| 2.0 | 308 | 4.5225 | 0.4934 |
| 3.0 | 462 | 4.4957 | 0.4979 |
@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{oord2019representationlearningcontrastivepredictive,
title={Representation Learning with Contrastive Predictive Coding},
author={Aaron van den Oord and Yazhe Li and Oriol Vinyals},
year={2019},
eprint={1807.03748},
archivePrefix={arXiv},
primaryClass={cs.LG},
url={https://arxiv.org/abs/1807.03748},
}
Base model
BSC-LT/MrBERT