SentenceTransformer based on BAAI/bge-m3

This is a sentence-transformers model finetuned from BAAI/bge-m3. It maps sentences & paragraphs to a 1024-dimensional dense vector space and can be used for semantic textual similarity, semantic search, paraphrase mining, text classification, clustering, and more.

Model Details

Model Description

  • Model Type: Sentence Transformer
  • Base model: BAAI/bge-m3
  • Maximum Sequence Length: 512 tokens
  • Output Dimensionality: 1024 dimensions
  • Similarity Function: Cosine Similarity

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 512, 'do_lower_case': False, 'architecture': 'XLMRobertaModel'})
  (1): Pooling({'word_embedding_dimension': 1024, '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()
)

Usage

Direct Usage (Sentence Transformers)

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("sentence_transformers_model_id")
# Run inference
sentences = [
    'Represent this sentence for searching relevant passages: Каковы основные доводы ответчика в апелляционной жалобе относительно определения суда первой инстанции?',
    ' ответчик обратился в Седьмой арбитражный апелляционный суд с апелляционной жалобой, в которой просит отменить определение Арбитражного суда Кемеровской области от 15.05.2020 по делу N А27-2702/2019 полностью, заявления ООО "Ижморская ТСК" удовлетворить. В апелляционной жалобе заявитель ссылается на то, что судом первой инстанции фактически установлены обстоятельства, являющиеся одновременно и основанием для разъяснения судебного акта и для изменения порядка его исполнения; принятие судом к рассмотрению заявления о приостановлении исполнительного производства вынесено ошибочно, т.к. заявителем не были устранены обстоятельства, послужившие основанием для оставления заявления без движения. Журавлева А.А. в порядке статьи 262 Арбитражного процессуального кодекса Российской Федерации (далее - АПК РФ ) представила отзыв на апелляционную жалобу, в котором просил определение суда первой инстанции оставить без изменения, а апелляционную жалобу без удовлетворения, указав, что исполнение решения суда не поставлено в зависимость от получения расписки от истца; установленный на предприятии порядок оборота информации, отнесенной самим обществом к конфиденциальной, не является препятствием для предоставления информации участнику в целях реализации корпоративного контроля над деятельностью общества. В судебном заседании апелляционной инстанции представитель заявителя просил апелляционную жалобу удовлетворить. Иные лица, надлежащим образом и своевременно извещенные о времени и месте рассмотрения апелляционной жалобы, в судебное заседание апелляционной инстанции явку своих представителей не обеспечили. Дело рассматривается в соответствии со статьей 156 АПК РФ в отсутствие истца и третьих лиц, извещенных о месте и времени судебного разбирательства в порядке статьи 123 АПК РФ . Исследовав материалы дела, изучив доводы апелляционной жалобы и отзыва на нее, проверив законность и обоснованность определения суда первой инстанции в порядке статьи 268 АПК РФ , арбитражный суд апелляционной инстанции находит его не подлежащим отмене. Как следует из материалов дела и установлено судом, между Петиной Е.С. (продавец) и Хачатряном В.А., Оршанским В.Л. (покупатели) заключен договор от 16.10.2017 купли-продажи доли в уставном капитале общества (далее - договор от 16.10.2017), по ',
    ' 240 225 руб. 64 коп.), а с 01.01.2021 по 31.10.2022 расходы по договорам оказания услуг, заключенным с ИП Шабеко С.И. и Радченко А.И., составили 11 107 245 руб. 02 коп. В этой связи суд верно заключил, что экономическая целесообразность отношений с индивидуальными предпринимателями для общества отсутствует. Таким образом, выявленные в ходе проведения камеральной проверки обстоятельства подтверждают направленность действий общества на получение необоснованной налоговой экономии. Действительным экономическим смыслом деятельности самозанятых лиц являлось продолжение осуществления трудовой деятельности в качестве наемных работников общества. Доводы заявителя о том, что отдельные самозанятые лица ранее не состояли в трудовых отношениях с обществом, правомерно отклонен судом, поскольку инспекцией установлены обстоятельства, свидетельствующие о том, что соответствующие лица, выполняющие в проверяемом периоде работы по клинингу, фактически осуществляли трудовую функцию, которая заключалась в регулярном выполнении определенного вида работ на определенной территории. Установленные инспекцией обстоятельства, свидетельствуют об отсутствии самостоятельности в деятельности самозанятых и создании фиктивного документооборота с целью снижения налоговой нагрузки и прикрытия фактически сложившихся трудовых отношений. Само по себе название договора не является основанием для его отнесения к категории трудовых или гражданско-правовых договоров. Разграничение таких договоров возможно лишь на основе анализа обязательств, составляющих предмет того или иного договора. По трудовому договору работник состоит с работодателем, как правило, в длительных отношениях и обязуется выполнять любые работы в соответствии со своей трудовой функцией. Гражданско-правовые договоры, как правило, применяются при выполнении конкретных, чаще всего разовых, работ, объем, содержание и сроки выполнения которых определяются договором. Таким образом, является правильным вывод налогового органа, поддержанный судом первой инстанции, что фактически услуги по клинингу, оказываемые самозанятыми ООО "Рязанская управляющая компания", носят характер трудовых отношений. При этом физические лица, оказывающие услуги по клинингу, экономически подконтрольны ООО "Рязанская управляющая компания", так как именно данное общество является источником выплаты дохода. Являясь инициатором приема на работу сотрудников только после их регистрации в качестве самозанятых, руководитель общества не мог не знать о действительном экономическом ',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 1024]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities)
# tensor([[ 1.0000,  0.7128, -0.0881],
#         [ 0.7128,  1.0000, -0.1412],
#         [-0.0881, -0.1412,  1.0000]])

Evaluation

Metrics

Information Retrieval

Metric court_law other_law reg_law
cos_sim_accuracy@1 0.6553 0.8858 0.747
cos_sim_accuracy@5 0.8569 0.9441 0.935
cos_sim_accuracy@10 0.9076 0.9697 0.9619
cos_sim_precision@1 0.6553 0.8858 0.747
cos_sim_precision@5 0.1714 0.1888 0.187
cos_sim_precision@10 0.0908 0.097 0.0962
cos_sim_recall@1 0.6553 0.8858 0.747
cos_sim_recall@5 0.8569 0.9441 0.935
cos_sim_recall@10 0.9076 0.9697 0.9619
cos_sim_ndcg@10 0.7827 0.9269 0.8606
cos_sim_mrr@10 0.7426 0.9134 0.8274
cos_sim_map@100 0.7466 0.9151 0.8294

Training Details

Training Dataset

Unnamed Dataset

  • Size: 54,152 training samples
  • Columns: anchor and positive
  • Approximate statistics based on the first 1000 samples:
    anchor positive
    type string string
    details
    • min: 22 tokens
    • mean: 32.45 tokens
    • max: 59 tokens
    • min: 193 tokens
    • mean: 472.12 tokens
    • max: 512 tokens
  • Samples:
    anchor positive
    Represent this sentence for searching relevant passages: Какое решение было принято по апелляционной жалобе общества с ограниченной ответственностью на определение арбитражного суда? СЕДЬМОЙ АРБИТРАЖНЫЙ АПЕЛЛЯЦИОННЫЙ СУД ПОСТАНОВЛЕНИЕ от 20 августа 2020 года Дело N А27-2702/2019 Резолютивная часть постановления объявлена 13 августа 2020 года Постановление в полном объеме изготовлено 20 августа 2020 года Седьмой арбитражный апелляционный суд в составе судьи Молокшонова Д.В. при ведении протокола судебного заседания с использованием средств аудиозаписи помощником судьи Большаниной Е.Г. рассмотрел в судебном заседании апелляционную жалобу общества с ограниченной ответственностью "Ижморская тепло-сетевая компания" (N 07АП-9772/2019 (2)) на определение от 15.05.2020 Арбитражного суда Кемеровской области (судья Перевалова О.И.) об отказе в приостановлении исполнительного производства, об отказе в изменении порядка исполнения решения по делу N А27-2702/2019 по иску Журавлевой Анны Александровны (Кемеровская область, г. Новокузнецк) к обществу с ограниченной ответственностью "Ижморская тепло-сетевая компания" (Кемеровская область, пгт. Ижморский, ОГРН 1174205014587) об обя...
    Represent this sentence for searching relevant passages: Какое решение было принято Арбитражным судом Кемеровской области в отношении исковых требований истца? (г. Новокузнецк), с участием заинтересованного лица: ОСП по Яйскому и Ижморскому районам Кемеровской области (Кемеровская область, п. Яя), при участии в судебном заседании представителей: от истца: без участия (извещен); от ответчика: Сырбо В.А. по доверенности от 20.02.2020, паспорт, диплом. Суд УСТАНОВИЛ: вступившим в законную силу решением Арбитражного суда Кемеровской области от 14.08.2019, оставленным без изменения постановлением Седьмого арбитражного апелляционного суда от 13.12.2019, постановлением Арбитражного суда Западно-Сибирского округа от 29.05.2020 удовлетворены исковые требования Журавлевой Анны Александровны (далее - Журавлева А.А., истец) об обязании общества с ограниченной ответственностью "Ижморская тепло-сетевая компания" (далее - ООО "Ижморская ТСК", ответчик, заявитель) в течение пяти рабочих дней с момента вступления решения в законную силу предоставить участнику общества с ООО "Ижморская ТСК" Журавлевой А.А. заверенные надлежащим образом копии документов по фин...
    Represent this sentence for searching relevant passages: Каковы основные доводы ответчика в апелляционной жалобе относительно определения суда первой инстанции? ответчик обратился в Седьмой арбитражный апелляционный суд с апелляционной жалобой, в которой просит отменить определение Арбитражного суда Кемеровской области от 15.05.2020 по делу N А27-2702/2019 полностью, заявления ООО "Ижморская ТСК" удовлетворить. В апелляционной жалобе заявитель ссылается на то, что судом первой инстанции фактически установлены обстоятельства, являющиеся одновременно и основанием для разъяснения судебного акта и для изменения порядка его исполнения; принятие судом к рассмотрению заявления о приостановлении исполнительного производства вынесено ошибочно, т.к. заявителем не были устранены обстоятельства, послужившие основанием для оставления заявления без движения. Журавлева А.А. в порядке статьи 262 Арбитражного процессуального кодекса Российской Федерации (далее - АПК РФ ) представила отзыв на апелляционную жалобу, в котором просил определение суда первой инстанции оставить без изменения, а апелляционную жалобу без удовлетворения, указав, что исполнение решения...
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim",
        "gather_across_devices": false
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: steps
  • per_device_train_batch_size: 128
  • per_device_eval_batch_size: 128
  • learning_rate: 2e-05
  • num_train_epochs: 5
  • warmup_ratio: 0.1
  • bf16: True
  • load_best_model_at_end: True
  • batch_sampler: no_duplicates

All Hyperparameters

Click to expand
  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: steps
  • prediction_loss_only: True
  • per_device_train_batch_size: 128
  • per_device_eval_batch_size: 128
  • per_gpu_train_batch_size: None
  • per_gpu_eval_batch_size: None
  • gradient_accumulation_steps: 1
  • eval_accumulation_steps: None
  • torch_empty_cache_steps: None
  • learning_rate: 2e-05
  • weight_decay: 0.0
  • adam_beta1: 0.9
  • adam_beta2: 0.999
  • adam_epsilon: 1e-08
  • max_grad_norm: 1.0
  • num_train_epochs: 5
  • max_steps: -1
  • lr_scheduler_type: linear
  • lr_scheduler_kwargs: {}
  • warmup_ratio: 0.1
  • warmup_steps: 0
  • log_level: passive
  • log_level_replica: warning
  • log_on_each_node: True
  • logging_nan_inf_filter: True
  • save_safetensors: True
  • save_on_each_node: False
  • save_only_model: False
  • restore_callback_states_from_checkpoint: False
  • no_cuda: False
  • use_cpu: False
  • use_mps_device: False
  • seed: 42
  • data_seed: None
  • jit_mode_eval: False
  • bf16: True
  • fp16: False
  • fp16_opt_level: O1
  • half_precision_backend: auto
  • bf16_full_eval: False
  • fp16_full_eval: False
  • tf32: None
  • local_rank: 0
  • ddp_backend: None
  • tpu_num_cores: None
  • tpu_metrics_debug: False
  • debug: []
  • dataloader_drop_last: False
  • dataloader_num_workers: 0
  • dataloader_prefetch_factor: None
  • past_index: -1
  • disable_tqdm: False
  • remove_unused_columns: True
  • label_names: None
  • load_best_model_at_end: True
  • ignore_data_skip: False
  • fsdp: []
  • fsdp_min_num_params: 0
  • fsdp_config: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}
  • fsdp_transformer_layer_cls_to_wrap: None
  • accelerator_config: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}
  • parallelism_config: None
  • deepspeed: None
  • label_smoothing_factor: 0.0
  • optim: adamw_torch_fused
  • optim_args: None
  • adafactor: False
  • group_by_length: False
  • length_column_name: length
  • project: huggingface
  • trackio_space_id: trackio
  • ddp_find_unused_parameters: None
  • ddp_bucket_cap_mb: None
  • ddp_broadcast_buffers: False
  • dataloader_pin_memory: True
  • dataloader_persistent_workers: False
  • skip_memory_metrics: True
  • use_legacy_prediction_loop: False
  • push_to_hub: False
  • resume_from_checkpoint: None
  • hub_model_id: None
  • hub_strategy: every_save
  • hub_private_repo: None
  • hub_always_push: False
  • hub_revision: None
  • gradient_checkpointing: False
  • gradient_checkpointing_kwargs: None
  • include_inputs_for_metrics: False
  • include_for_metrics: []
  • eval_do_concat_batches: True
  • fp16_backend: auto
  • push_to_hub_model_id: None
  • push_to_hub_organization: None
  • mp_parameters:
  • auto_find_batch_size: False
  • full_determinism: False
  • torchdynamo: None
  • ray_scope: last
  • ddp_timeout: 1800
  • torch_compile: False
  • torch_compile_backend: None
  • torch_compile_mode: None
  • include_tokens_per_second: False
  • include_num_input_tokens_seen: no
  • neftune_noise_alpha: None
  • optim_target_modules: None
  • batch_eval_metrics: False
  • eval_on_start: False
  • use_liger_kernel: False
  • liger_kernel_config: None
  • eval_use_gather_object: False
  • average_tokens_across_devices: True
  • prompts: None
  • batch_sampler: no_duplicates
  • multi_dataset_batch_sampler: proportional
  • router_mapping: {}
  • learning_rate_mapping: {}

Training Logs

Epoch Step Training Loss court_law_cos_sim_ndcg@10 other_law_cos_sim_ndcg@10 reg_law_cos_sim_ndcg@10
0.1179 50 0.9729 - - -
0.2358 100 0.4256 - - -
0.3538 150 0.343 - - -
0.4717 200 0.2619 - - -
0.5896 250 0.2717 0.7268 0.9340 0.8629
0.7075 300 0.2394 - - -
0.8255 350 0.2292 - - -
0.9434 400 0.1992 - - -
1.0613 450 0.1806 - - -
1.1792 500 0.1504 0.7412 0.9331 0.8600
1.2972 550 0.1552 - - -
1.4151 600 0.1367 - - -
1.5330 650 0.1446 - - -
1.6509 700 0.1477 - - -
1.7689 750 0.1405 0.7578 0.9387 0.8719
1.8868 800 0.133 - - -
2.0047 850 0.1389 - - -
2.1226 900 0.1019 - - -
2.2406 950 0.0997 - - -
2.3585 1000 0.1025 0.7647 0.9400 0.8733
2.4764 1050 0.1043 - - -
2.5943 1100 0.0985 - - -
2.7123 1150 0.1019 - - -
2.8302 1200 0.1016 - - -
2.9481 1250 0.0879 0.7742 0.9442 0.8711
3.0660 1300 0.0818 - - -
3.1840 1350 0.0735 - - -
3.3019 1400 0.0763 - - -
3.4198 1450 0.0779 - - -
3.5377 1500 0.0715 0.7742 0.9363 0.8727
3.6557 1550 0.0713 - - -
3.7736 1600 0.0704 - - -
3.8915 1650 0.0778 - - -
4.0094 1700 0.0713 - - -
4.1274 1750 0.0595 0.7778 0.9406 0.8743
4.2453 1800 0.0632 - - -
4.3632 1850 0.0592 - - -
4.4811 1900 0.0633 - - -
4.5991 1950 0.0529 - - -
4.717 2000 0.0641 0.7775 0.9431 0.8764
4.8349 2050 0.0601 - - -
4.9528 2100 0.0632 - - -
-1 -1 - 0.7827 0.9269 0.8606
  • The bold row denotes the saved checkpoint.

Framework Versions

  • Python: 3.12.3
  • Sentence Transformers: 5.1.2
  • Transformers: 4.57.1
  • PyTorch: 2.8.0+cu128
  • Accelerate: 1.11.0
  • Datasets: 4.4.1
  • Tokenizers: 0.22.1

Citation

BibTeX

Sentence Transformers

@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",
}

MultipleNegativesRankingLoss

@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}
}
Downloads last month
41
Safetensors
Model size
0.6B params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for Roflmax/bge-m3-legal-ru-updata

Base model

BAAI/bge-m3
Finetuned
(434)
this model

Papers for Roflmax/bge-m3-legal-ru-updata

Evaluation results