SentenceTransformer based on intfloat/multilingual-e5-large

This is a sentence-transformers model finetuned from intfloat/multilingual-e5-large on the q2q_data and q2p_data datasets. 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: intfloat/multilingual-e5-large
  • Maximum Sequence Length: 512 tokens
  • Output Dimensionality: 1024 dimensions
  • Similarity Function: Cosine Similarity
  • Training Datasets:
    • q2q_data
    • q2p_data

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: XLMRobertaModel 
  (1): Pooling({'word_embedding_dimension': 1024, '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})
  (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("George2002/sledopyt_embedder_v3")
# Run inference
sentences = [
    'query: Когда родитель теряет доступ к картам ребенка от 14 до 17 лет?',
    'query: В каких ситуациях родитель не сможет управлять картами ребенка в возрасте 14-17 лет?',
    'query: Кто имеет право претендовать на наследство, если наследодатель объявлен банкротом?',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 1024]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]

Training Details

Training Datasets

q2q_data

  • Dataset: q2q_data
  • Size: 8,012 training samples
  • Columns: query_1 and query_2
  • Approximate statistics based on the first 1000 samples:
    query_1 query_2
    type string string
    details
    • min: 12 tokens
    • mean: 21.5 tokens
    • max: 34 tokens
    • min: 11 tokens
    • mean: 21.24 tokens
    • max: 37 tokens
  • Samples:
    query_1 query_2
    query: Что произойдет с процедурой банкротства, если банкрот умрет? query: Как будет развиваться процедура банкротства после смерти должника?
    query: Как ребенку изменить лимит на расход по карте, который установил опекун? query: Что нужно сделать, чтобы изменить лимит расходов по карте, заданный законным представителем?
    query: Какие документы подтверждают полномочия опекуна несовершеннолетнего до 14 лет? query: Какие бумаги нужны, чтобы подтвердить полномочия опекуна несовершеннолетнего до 14-ти лет?
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim"
    }
    

q2p_data

  • Dataset: q2p_data
  • Size: 2,502 training samples
  • Columns: query and chunk
  • Approximate statistics based on the first 1000 samples:
    query chunk
    type string string
    details
    • min: 11 tokens
    • mean: 21.8 tokens
    • max: 37 tokens
    • min: 12 tokens
    • mean: 173.04 tokens
    • max: 512 tokens
  • Samples:
    query chunk
    query: Что можно использовать для получения данных наследодателя, если у клиента нет паспорта? passage: У клиента ЕСТЬ/НЕТ документа подтверждающего наследственное право (далее - ДПНП) - свидетельства о праве на наследство/завещание в банке в его пользу до 01.03.2002

    Нет ДПНП

    Клиента необходимо направить к нотариусу для открытия наследственного дела и розыска наследственной массы через запрос Нотариуса. Сообщите клиенту необходимость взять к нотариусу следующие документы для более качественного и быстрого розыска:
    1. Паспорт наследодателя или его данные(можно взять из любого договора)
    2. Все известные сберкнижки наследодателя или их номера
    3. ИНН если наследодателя был ИП

    Обращение в СРМ «Розничный не регистрируй!!!
    query: Что делать, если в документах клиента нет сведений о месте пребывания? passage: Для любого представителя Клиента (ЕИО, уполномоченного сотрудника, доверенного лица) :

    Нерезидент

    1. Документ, удостоверяющий личность представителя юридического лица/ИП (В случае если Клиент/представитель Клиента предоставил в Банк иностранный документ, удостоверяющий личность, без нотариально удостоверенного перевода, дополнительно предоставляется Приложение 4 к Информационным сведениям клиента)
    Дополнительно: id-карта является полноценным ДУЛ только для граждан Киргизии и Казахстана. Граждане других государств id-карту как самостоятельный ДУЛ использовать не могут.
    2. Документ, подтверждающий право иностранного гражданина или лица без гражданства на пребывание (проживание) в Российской Федерации:
    - вид на жительство;
    - либо временное удостоверение личности лица без гражданства в Российской Федерации;
    - либо разрешение на временное проживание;
    - либо визу;
    - либо миграционную карту;
    - либо свидетельство о рассмотрении ходатайства о признании беженцем на территории Р...
    query: Под какие документы подпадает исполнительный документ о взыскании задолженности? passage: Уважаемый коллега!
    Вы приняли от клиента:

    Исполнительный документ о взыскании задолженности/наложении ареста/отмене ареста (взыскания)

    Исполнительные документы (ИД), могут быть предъявлены клиентом/его представителем в филиалы и подразделения Банка с целью исполнения Банком требований федерального закона от 02.10.2007 №229-ФЗ "Об исполнительном производстве".
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim"
    }
    

Evaluation Datasets

q2q_data

  • Dataset: q2q_data
  • Size: 422 evaluation samples
  • Columns: query_1 and query_2
  • Approximate statistics based on the first 422 samples:
    query_1 query_2
    type string string
    details
    • min: 12 tokens
    • mean: 21.71 tokens
    • max: 38 tokens
    • min: 11 tokens
    • mean: 21.24 tokens
    • max: 35 tokens
  • Samples:
    query_1 query_2
    query: Как банк реагирует на выявление клиента-банкрота при выдаче карты? query: Как банк поступает, если выясняется, что клиент-банкрот при оформлении кредитки?
    query: query: Что является целевым путем для выплаты наследства при возникновении технической ошибки? query: Какие действия нужно предпринять для выплаты наследства при наличии технической ошибки?
    query: Что делать, если клиент сообщает, что выпуск карты осуществляется по просьбе третьего лица? query: Что предпринимать, если клиент жалуется, что кто-то другой просит выпустить карту?
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim"
    }
    

q2p_data

  • Dataset: q2p_data
  • Size: 132 evaluation samples
  • Columns: query and chunk
  • Approximate statistics based on the first 132 samples:
    query chunk
    type string string
    details
    • min: 14 tokens
    • mean: 22.05 tokens
    • max: 40 tokens
    • min: 13 tokens
    • mean: 172.31 tokens
    • max: 512 tokens
  • Samples:
    query chunk
    query: Как завершать процедуру банкротства в случае смерти банкрота? passage: С каким вопросом обратился ФУ?

    12. Поведение процедуры банкротства в случае смерти банкрота/ Вступления банкрота в наследство

    В случае
    query: Что произойдет, если Законный представитель подключит уведомления на свой номер телефона вместо номера Ребёнка? passage: Выберите интересующий вопрос

    5. Можно ли подключить СМС-информирование по Детской СберКарте на номер телефона Законного Представителя ?

    Нет, это можно сделать только на номер телефона Ребёнка.
    Если Законный представитель подключил уведомления на свой номер, тогда нужно поменять его на номер телефона Ребёнка в офисе Банка или банкомате.
    Иначе Ребёнок не сможет получать уведомления с кодами подтверждения и воспользоваться банкоматом, а Законный представитель столкнётся с техническими сложностями при пользовании сервисами Банка.


    Если Законный представитель желает получать уведомления об операциях Ребёнка на свой номер телефона, тогда ему необходимо подключить услугу "Совместные уведомления" к Детской СберКарте.
    query: Что необходимо для того, чтобы ребёнок мог сам совершить операцию? passage: Возможные ошибки:

    Ребёнку необходимо совершить операцию самому

    Ребёнку больше 14 лет
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim"
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: steps
  • per_device_train_batch_size: 64
  • learning_rate: 1e-05
  • weight_decay: 0.01
  • num_train_epochs: 10
  • warmup_ratio: 0.1
  • load_best_model_at_end: True
  • push_to_hub: True
  • hub_model_id: George2002/sledopyt_embedder_v3
  • hub_strategy: end

All Hyperparameters

Click to expand
  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: steps
  • prediction_loss_only: True
  • per_device_train_batch_size: 64
  • per_device_eval_batch_size: 8
  • 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: 1e-05
  • weight_decay: 0.01
  • adam_beta1: 0.9
  • adam_beta2: 0.999
  • adam_epsilon: 1e-08
  • max_grad_norm: 1.0
  • num_train_epochs: 10
  • 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
  • use_ipex: False
  • bf16: False
  • 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: True
  • 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}
  • tp_size: 0
  • 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}
  • deepspeed: None
  • label_smoothing_factor: 0.0
  • optim: adamw_torch
  • optim_args: None
  • adafactor: False
  • group_by_length: False
  • length_column_name: length
  • 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: True
  • resume_from_checkpoint: None
  • hub_model_id: George2002/sledopyt_embedder_v3
  • hub_strategy: end
  • hub_private_repo: None
  • hub_always_push: False
  • 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: False
  • neftune_noise_alpha: None
  • optim_target_modules: None
  • batch_eval_metrics: False
  • eval_on_start: False
  • use_liger_kernel: False
  • eval_use_gather_object: False
  • average_tokens_across_devices: False
  • prompts: None
  • batch_sampler: batch_sampler
  • multi_dataset_batch_sampler: proportional

Training Logs

Epoch Step Training Loss q2q data loss q2p data loss
0.2439 10 2.0065 - -
0.4878 20 1.1826 - -
0.6098 25 - 0.0102 0.2422
0.7317 30 0.6224 - -
0.9756 40 0.1914 - -
1.2195 50 0.1785 0.0003 0.1165
1.4634 60 0.1897 - -
1.7073 70 0.1862 - -
1.8293 75 - 0.0002 0.0839
1.9512 80 0.0917 - -
2.1951 90 0.0855 - -
2.4390 100 0.1282 0.0002 0.0868
2.6829 110 0.1329 - -
2.9268 120 0.0627 - -
3.0488 125 - 0.0002 0.0720
3.1707 130 0.0621 - -
3.4146 140 0.0882 - -
3.6585 150 0.1041 0.0002 0.069
3.9024 160 0.0564 - -
4.1463 170 0.0515 - -
4.2683 175 - 0.0001 0.0795
4.3902 180 0.0858 - -
4.6341 190 0.082 - -
4.8780 200 0.0431 0.0001 0.0725
5.1220 210 0.0482 - -
5.3659 220 0.0643 - -
5.4878 225 - 0.0001 0.0813
5.6098 230 0.0863 - -
5.8537 240 0.041 - -
6.0976 250 0.0446 0.0001 0.0724
6.3415 260 0.0594 - -
6.5854 270 0.0705 - -
6.7073 275 - 0.0001 0.0760
6.8293 280 0.0451 - -
7.0732 290 0.0447 - -
7.3171 300 0.0507 0.0001 0.0783
7.5610 310 0.0571 - -
7.8049 320 0.0534 - -
7.9268 325 - 0.0001 0.0787
8.0488 330 0.041 - -
8.2927 340 0.0458 - -
8.5366 350 0.0534 0.0001 0.0819
8.7805 360 0.0594 - -
9.0244 370 0.0381 - -
9.1463 375 - 0.0001 0.0815
9.2683 380 0.046 - -
9.5122 390 0.0507 - -
9.7561 400 0.0575 0.0001 0.0822
10.0 410 0.0372 - -
  • The bold row denotes the saved checkpoint.

Framework Versions

  • Python: 3.10.12
  • Sentence Transformers: 4.1.0
  • Transformers: 4.51.3
  • PyTorch: 2.7.0+cu126
  • Accelerate: 1.6.0
  • Datasets: 3.5.0
  • Tokenizers: 0.21.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
417
Safetensors
Model size
560M params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for George2002/sledopyt_embedder_6topics

Finetuned
(106)
this model