nomic v2 tuned

This is a sentence-transformers model finetuned from nomic-ai/nomic-embed-text-v2-moe on the json dataset. 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.

Model Details

Model Description

  • Model Type: Sentence Transformer
  • Base model: nomic-ai/nomic-embed-text-v2-moe
  • Maximum Sequence Length: 512 tokens
  • Output Dimensionality: 768 dimensions
  • Similarity Function: Cosine Similarity
  • Training Dataset:
    • json
  • Language: en
  • License: apache-2.0

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: NomicBertModel 
  (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})
  (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("DGSMsRzJ6xC2JthtHG9W/nomic-v2-tuned-1.4")
# Run inference
sentences = [
    'Компания «Электромонтаж» выполнила электромонтажные работы в офисе.  Гарантийный срок на работы – 6 месяцев. Через 7 месяцев обнаружен дефект проводки. Какой срок исковой давности применяется в данном случае?',
    '1. Срок исковой давности для требований, предъявляемых в связи с ненадлежащим качеством работы, выполненной по договору подряда, составляет один год, а в отношении зданий и сооружений определяется по правилам статьи 196 настоящего Кодекса. 2. Если в соответствии с договором подряда результат работы принят заказчиком по частям, течение срока исковой давности начинается со дня приемки результата работы в целом. 3. Если законом, иными правовыми актами или договором подряда установлен гарантийный срок и заявление по поводу недостатков результата работы сделано в пределах гарантийного срока, течение срока исковой давности, указанного в пункте 1 настоящей статьи, начинается со дня заявления о недостатках.',
    'Изменение и исключение положений устава общества, устанавливающих порядок определения размеров вкладов в имущество общества непропорционально размерам долей участников общества, а также ограничения, связанные с внесением вкладов в имущество общества, установленные для всех участников общества, осуществляются по решению общего собрания участников общества, принятому всеми участниками общества единогласно. Изменение и исключение положений устава общества, устанавливающих указанные ограничения для определенного участника общества, осуществляются по решению общего собрания участников общества, принятому большинством не менее двух третей голосов от общего числа голосов участников общества, при условии, если участник общества, для которого установлены такие ограничения, голосовал за принятие такого решения или дал письменное согласие. 3. Вклады в имущество общества вносятся деньгами, если иное не предусмотрено уставом общества или решением общего собрания участников общества. 4. Вклады в имущество общества не изменяют размеры и номинальную стоимость долей участников общества в уставном капитале общества.',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

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

Evaluation

Metrics

Information Retrieval

Metric dim_768 dim_512 dim_256 dim_128 dim_64
cosine_accuracy@1 0.0075 0.0077 0.007 0.007 0.0064
cosine_accuracy@3 0.0239 0.0241 0.0211 0.0211 0.0188
cosine_accuracy@5 0.0451 0.0474 0.0423 0.0436 0.0354
cosine_accuracy@10 0.1627 0.1634 0.1597 0.1505 0.1407
cosine_precision@1 0.0075 0.0077 0.007 0.007 0.0064
cosine_precision@3 0.008 0.008 0.007 0.007 0.0063
cosine_precision@5 0.009 0.0095 0.0085 0.0087 0.0071
cosine_precision@10 0.0163 0.0163 0.016 0.0151 0.0141
cosine_recall@1 0.0075 0.0077 0.007 0.007 0.0064
cosine_recall@3 0.0239 0.0241 0.0211 0.0211 0.0188
cosine_recall@5 0.0451 0.0474 0.0423 0.0436 0.0354
cosine_recall@10 0.1627 0.1634 0.1597 0.1505 0.1407
cosine_ndcg@10 0.0623 0.0627 0.0606 0.0579 0.0533
cosine_mrr@10 0.0335 0.0339 0.0323 0.0313 0.0284
cosine_map@100 0.0746 0.0748 0.0728 0.0709 0.0644

Training Details

Training Dataset

json

  • Dataset: json
  • Size: 42,140 training samples
  • Columns: anchor and positive
  • Approximate statistics based on the first 1000 samples:
    anchor positive
    type string string
    details
    • min: 10 tokens
    • mean: 40.81 tokens
    • max: 141 tokens
    • min: 34 tokens
    • mean: 226.88 tokens
    • max: 464 tokens
  • Samples:
    anchor positive
    Решение совета директоров было обжаловано в суде, но суд оставил решение в силе. Изменяет ли обжалование решения в суде его юридическую силу, если суд его подтвердил? 8. Решения совета директоров (наблюдательного совета) общества, принятые с нарушением компетенции совета директоров (наблюдательного совета) общества, при отсутствии кворума для проведения заседания совета директоров (наблюдательного совета) общества, если наличие кворума в соответствии с настоящим Федеральным законом является обязательным условием проведения такого заседания, или без необходимого для принятия решения большинства голосов членов совета директоров (наблюдательного совета) общества, не имеют силы независимо от обжалования их в судебном порядке. (Дополнение пунктом - Федеральный закон от 19.07.2009 № 205-ФЗ )
    В результате незаконных действий сотрудников прокуратуры, дело о банкротстве компании «Бета» было затянуто на год, что привело к значительным финансовым потерям. Может ли компания «Бета» требовать возмещения убытков, и если да, то на основании какой части статьи и в каком порядке? 1. Вред, причиненный гражданину в результате незаконного осуждения, незаконного привлечения к уголовной ответственности, незаконного применения в качестве меры пресечения заключения под стражу или подписки о невыезде, незаконного привлечения к административной ответственности в виде административного ареста, а также вред, причиненный юридическому лицу в результате незаконного привлечения к административной ответственности в виде административного приостановления деятельности, возмещается за счет казны Российской Федерации, а в случаях, предусмотренных законом, за счет казны субъекта Российской Федерации или казны муниципального образования в полном объеме независимо от вины должностных лиц органов дознания, предварительного следствия, прокуратуры и суда в порядке, установленном законом. (В редакции Федерального закона от 09.05.2005 № 45-ФЗ ) 2. Вред, причиненный гражданину или юридическому лицу в результате незаконной деятельности органов дознания, предварительного следствия, прокурату...
    Какие статьи Федерального закона № 73-ФЗ касаются стоимости восстановительных работ или мероприятий по сохранению объектов культурного наследия? В случаях, когда собственник культурных ценностей, отнесенных в соответствии с законом к особо ценным и охраняемым государством, бесхозяйственно содержит эти ценности, что грозит утратой ими своего значения, такие ценности по решению суда могут быть изъяты у собственника путем выкупа государством или продажи с публичных торгов. При выкупе культурных ценностей собственнику возмещается их стоимость в размере, установленном соглашением сторон, а в случае спора - судом. При продаже с публичных торгов собственнику передается вырученная от продажи сумма за вычетом расходов на проведение торгов, а также стоимости восстановительных работ в отношении объекта культурного наследия, или стоимости мероприятий, необходимых для сохранения объекта археологического наследия, указанных в статье 40 Федерального закона от 25 июня 2002 года № 73-ФЗ "Об объектах культурного наследия (памятниках истории и культуры) народов Российской Федерации". (В редакции Федерального закона от 22.10.2014 № 315-ФЗ )
  • Loss: MatryoshkaLoss with these parameters:
    {
        "loss": "MultipleNegativesRankingLoss",
        "matryoshka_dims": [
            768,
            512,
            256,
            128,
            64
        ],
        "matryoshka_weights": [
            1,
            1,
            1,
            1,
            1
        ],
        "n_dims_per_step": -1
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: epoch
  • per_device_train_batch_size: 32
  • per_device_eval_batch_size: 16
  • gradient_accumulation_steps: 16
  • learning_rate: 2e-05
  • num_train_epochs: 4
  • lr_scheduler_type: cosine
  • warmup_ratio: 0.1
  • bf16: True
  • tf32: True
  • load_best_model_at_end: True
  • optim: adamw_torch_fused
  • batch_sampler: no_duplicates

All Hyperparameters

Click to expand
  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: epoch
  • prediction_loss_only: True
  • per_device_train_batch_size: 32
  • per_device_eval_batch_size: 16
  • per_gpu_train_batch_size: None
  • per_gpu_eval_batch_size: None
  • gradient_accumulation_steps: 16
  • 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: 4
  • max_steps: -1
  • lr_scheduler_type: cosine
  • 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: True
  • fp16: False
  • fp16_opt_level: O1
  • half_precision_backend: auto
  • bf16_full_eval: False
  • fp16_full_eval: False
  • tf32: True
  • 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}
  • deepspeed: None
  • label_smoothing_factor: 0.0
  • optim: adamw_torch_fused
  • 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: False
  • resume_from_checkpoint: None
  • hub_model_id: None
  • hub_strategy: every_save
  • hub_private_repo: False
  • hub_always_push: False
  • gradient_checkpointing: False
  • gradient_checkpointing_kwargs: None
  • include_inputs_for_metrics: False
  • 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
  • dispatch_batches: None
  • split_batches: 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
  • eval_use_gather_object: False
  • prompts: None
  • batch_sampler: no_duplicates
  • multi_dataset_batch_sampler: proportional

Training Logs

Epoch Step Training Loss dim_768_cosine_ndcg@10 dim_512_cosine_ndcg@10 dim_256_cosine_ndcg@10 dim_128_cosine_ndcg@10 dim_64_cosine_ndcg@10
0.1215 10 2.1586 - - - - -
0.2430 20 1.5192 - - - - -
0.3645 30 1.2178 - - - - -
0.4860 40 1.0226 - - - - -
0.6074 50 0.8285 - - - - -
0.7289 60 0.8067 - - - - -
0.8504 70 0.8069 - - - - -
0.9719 80 0.6563 - - - - -
0.9962 82 - 0.0605 0.0586 0.0555 0.0519 0.0497
1.0926 90 0.5938 - - - - -
1.2141 100 0.5605 - - - - -
1.3356 110 0.4838 - - - - -
1.4571 120 0.5023 - - - - -
1.5786 130 0.4771 - - - - -
1.7001 140 0.5294 - - - - -
1.8216 150 0.4608 - - - - -
1.9431 160 0.4833 - - - - -
1.9916 164 - 0.0626 0.0646 0.0612 0.0578 0.0541
2.0638 170 0.4273 - - - - -
2.1853 180 0.3557 - - - - -
2.3068 190 0.3496 - - - - -
2.4282 200 0.3509 - - - - -
2.5497 210 0.3588 - - - - -
2.6712 220 0.3145 - - - - -
2.7927 230 0.3764 - - - - -
2.9142 240 0.3226 - - - - -
2.9992 247 - 0.0616 0.0621 0.0563 0.0554 0.0512
3.0357 250 0.3038 - - - - -
3.1572 260 0.2591 - - - - -
3.2787 270 0.2943 - - - - -
3.4002 280 0.2728 - - - - -
3.5216 290 0.2821 - - - - -
3.6431 300 0.2756 - - - - -
3.7646 310 0.2801 - - - - -
3.8861 320 0.2999 - - - - -
3.9833 328 - 0.0623 0.0627 0.0606 0.0579 0.0533
  • The bold row denotes the saved checkpoint.

Framework Versions

  • Python: 3.11.11
  • Sentence Transformers: 3.4.1
  • Transformers: 4.43.0
  • PyTorch: 2.6.0+cu124
  • Accelerate: 1.3.0
  • Datasets: 3.4.0
  • Tokenizers: 0.19.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",
}

MatryoshkaLoss

@misc{kusupati2024matryoshka,
    title={Matryoshka Representation Learning},
    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},
    year={2024},
    eprint={2205.13147},
    archivePrefix={arXiv},
    primaryClass={cs.LG}
}

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
13
Safetensors
Model size
475M params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for DGSMsRzJ6xC2JthtHG9W/nomic-v2-tuned-1.4

Evaluation results