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})
)pip install -U sentence-transformers1from sentence_transformers import SentenceTransformer
2
3# Download from the 🤗 Hub
4model = SentenceTransformer("sentence_transformers_model_id")
5# Run inference
6sentences = [
7 '(1) Posest je neposredna dejanska oblast nad stvarjo (neposredna posest).\n(2) Posest ima tudi tisti, ki izvršuje dejansko oblast nad stvarjo prek koga drugega, ki\nima neposredno posest iz kakršnegakoli pravnega naslova (posredna posest).',
8 'Posameznik lahko isto stvar istočasno poseduje neposredno in posredno.',
9 'Sodišče nikoli ne more odločati o poslu, ki presega redno upravljanje, brez soglasja vseh solastnikov.',
10]
11embeddings = model.encode(sentences)
12print(embeddings.shape)
13# [3, 768]
14
15# Get the similarity scores for the embeddings
16similarities = model.similarity(embeddings, embeddings)
17print(similarities)
18# tensor([[1.0000, 0.5774, 0.4022],
19# [0.5774, 1.0000, 0.2455],
20# [0.4022, 0.2455, 1.0000]])validation-devEmbeddingSimilarityEvaluator| Metric | Value |
|---|---|
| pearson_cosine | 0.0719 |
| spearman_cosine | 0.0193 |
anchor, positive, and label| anchor | positive | label | |
|---|---|---|---|
| type | string | string | float |
| details |
|
|
|
| anchor | positive | label |
|---|---|---|
(1) Vsaka stranka v dvostranski pogodbi lahko prenese pogodbo nekomu tretjemu,[object Object]ki postane s tem imetnik vseh njenih pravic in obveznosti iz te pogodbe, če v to privoli druga stranka.[object Object](2) S prenosom pogodbe preide pogodbeno razmerje med prenositeljem in drugo[object Object]stranko na prevzemnika in drugo stranko takrat, ko druga stranka privoli v prenos; če je dala svojo privolitev vnaprej, pa takrat, ko je o prenosu obveščena.[object Object](3) Privolitev v prenos pogodbe je veljavna samo, če je dana v obliki, ki jo predpisuje[object Object]zakon za sklenitev prenesene pogodbe.[object Object](4) Določbe o stranskih pravicah v zvezi s pogodbo o prevzemu dolga se smiselno[object Object]uporabljajo tudi za prenos pogodbe. | S prenosom pogodbe preide pogodbeno razmerje, pri čemer[object Object]prenositelj jamči, da bo druga stranka izpolnila svoje obveznosti. | 1.0 |
(1) Vsaka stranka v dvostranski pogodbi lahko prenese pogodbo nekomu tretjemu,[object Object]ki postane s tem imetnik vseh njenih pravic in obveznosti iz te pogodbe, če v to privoli druga stranka.[object Object](2) S prenosom pogodbe preide pogodbeno razmerje med prenositeljem in drugo[object Object]stranko na prevzemnika in drugo stranko takrat, ko druga stranka privoli v prenos; če je dala svojo privolitev vnaprej, pa takrat, ko je o prenosu obveščena.[object Object](3) Privolitev v prenos pogodbe je veljavna samo, če je dana v obliki, ki jo predpisuje[object Object]zakon za sklenitev prenesene pogodbe.[object Object](4) Določbe o stranskih pravicah v zvezi s pogodbo o prevzemu dolga se smiselno[object Object]uporabljajo tudi za prenos pogodbe. | S prenosom pogodbe preide pogodbeno razmerje, pri čemer[object Object]prenositelj jamči, da bo druga stranka izpolnila svoje obveznosti. | 1.0 |
(1) Za škodo, ki jo povzroči delavec pri delu ali v zvezi z delom tretji osebi, odgovarja pravna ali fizična oseba, pri kateri je delavec delal takrat, ko je bila škoda povzročena, razen če dokaže, da je delavec v danih okoliščinah ravnal tako, kot je bilo treba.[object Object](2) Oškodovanec ima pravico zahtevati povrnitev škode tudi neposredno od delavca, če je ta škodo povzročil namenoma.[object Object](3) Kdor je oškodovancu povrnil škodo, ki jo je povzročil delavec namenoma ali iz hude malomarnosti, ima pravico zahtevati od delavca povrnitev plačanega zneska.[object Object](4) Ta pravica zastara v šestih mesecih od dneva, ko je bila odškodnina plačana.[object Object](5) Določba prvega odstavka tega člena ne posega v pravila o odgovornosti za škodo, ki izvira od nevarne stvari ali nevarne dejavnosti. | Oškodovanec lahko vedno zahteva odškonino tako od delodajalca kot od delavca, njuna odgovornost je solidarna. | 1.0 |
MatryoshkaLoss with these parameters:
1{
2 "loss": "MultipleNegativesRankingLoss",
3 "matryoshka_dims": [
4 768
5 ],
6 "matryoshka_weights": [
7 1
8 ],
9 "n_dims_per_step": -1
10}anchor, positive, and label| anchor | positive | label | |
|---|---|---|---|
| type | string | string | float |
| details |
|
|
|
| anchor | positive | label |
|---|---|---|
(1) Posest je neposredna dejanska oblast nad stvarjo (neposredna posest).[object Object](2) Posest ima tudi tisti, ki izvršuje dejansko oblast nad stvarjo prek koga drugega, ki[object Object]ima neposredno posest iz kakršnegakoli pravnega naslova (posredna posest). | Posameznik lahko isto stvar istočasno poseduje neposredno in posredno. | 1.0 |
(1) Posest je neposredna dejanska oblast nad stvarjo (neposredna posest).[object Object](2) Posest ima tudi tisti, ki izvršuje dejansko oblast nad stvarjo prek koga drugega, ki[object Object]ima neposredno posest iz kakršnegakoli pravnega naslova (posredna posest). | Posameznik lahko isto stvar istočasno poseduje neposredno in posredno. | 1.0 |
Upravljavec videonadzornega sistema, ki izvaja videonadzor javnih površin, mora v primeru, ko videonadzorni sistem posname dogodek, ki ogroža zdravje ali življenje posameznika, o tem nemudoma obvestiti policijo ali drug pristojni subjekt. | Upravljavec videonadzora ni dolžan obvestiti policije, če posnetek pokaže nevaren dogodek.[object Object] | 1.0 |
MatryoshkaLoss with these parameters:
1{
2 "loss": "MultipleNegativesRankingLoss",
3 "matryoshka_dims": [
4 768
5 ],
6 "matryoshka_weights": [
7 1
8 ],
9 "n_dims_per_step": -1
10}eval_strategy: stepsper_device_train_batch_size: 16per_device_eval_batch_size: 16warmup_ratio: 0.1bf16: Truebatch_sampler: no_duplicatesoverwrite_output_dir: Falsedo_predict: Falseeval_strategy: stepsprediction_loss_only: Trueper_device_train_batch_size: 16per_device_eval_batch_size: 16gradient_accumulation_steps: 1eval_accumulation_steps: Nonetorch_empty_cache_steps: Nonelearning_rate: 5e-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: Falseuse_cpu: Falseseed: 42data_seed: Nonejit_mode_eval: Falsebf16: Truefp16: Falsefp16_opt_level: O1half_precision_backend: autobf16_full_eval: Falsefp16_full_eval: Falsetf32: Nonelocal_rank: 0ddp_backend: Nonetpu_num_cores: Nonedebug: []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_config: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}accelerator_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: Nonegroup_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_for_metrics: []eval_do_concat_batches: Truemp_parameters:auto_find_batch_size: Falsefull_determinism: Falseray_scope: lastddp_timeout: 1800torch_compile: Falsetorch_compile_backend: Nonetorch_compile_mode: Noneinclude_tokens_per_second: Falseinclude_num_input_tokens_seen: noneftune_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: Trueprompts: Nonebatch_sampler: no_duplicatesmulti_dataset_batch_sampler: proportionalrouter_mapping: {}learning_rate_mapping: {}| Epoch | Step | Training Loss | Validation Loss | validation-dev_spearman_cosine |
|---|---|---|---|---|
| 0.3378 | 25 | - | 0.3447 | 0.0390 |
| 0.6757 | 50 | - | 0.2570 | -0.0466 |
| 1.0135 | 75 | - | 0.2282 | -0.0269 |
| 1.3514 | 100 | 0.3073 | 0.1797 | 0.0677 |
| 1.6892 | 125 | - | 0.2085 | 0.0184 |
| 2.0270 | 150 | - | 0.1725 | 0.0479 |
| 2.3649 | 175 | - | 0.1636 | 0.0183 |
| 2.7027 | 200 | 0.0371 | 0.1707 | 0.0193 |
1@inproceedings{reimers-2019-sentence-bert,
2 title = "Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks",
3 author = "Reimers, Nils and Gurevych, Iryna",
4 booktitle = "Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing",
5 month = "11",
6 year = "2019",
7 publisher = "Association for Computational Linguistics",
8 url = "https://arxiv.org/abs/1908.10084",
9}1@misc{kusupati2024matryoshka,
2 title={Matryoshka Representation Learning},
3 author={Aditya Kusupati and Gantavya Bhatt and Aniket Rege and Matthew Wallingford and Aditya Sinha and Vivek Ramanujan and William Howard-Snyder and Kaifeng Chen and Sham Kakade and Prateek Jain and Ali Farhadi},
4 year={2024},
5 eprint={2205.13147},
6 archivePrefix={arXiv},
7 primaryClass={cs.LG}
8}1@misc{henderson2017efficient,
2 title={Efficient Natural Language Response Suggestion for Smart Reply},
3 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},
4 year={2017},
5 eprint={1705.00652},
6 archivePrefix={arXiv},
7 primaryClass={cs.CL}
8}