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 retrieval.
Model Details
Model Description
- Model Type: Sentence Transformer
- Base model: BAAI/bge-m3
- Maximum Sequence Length: 128 tokens
- Output Dimensionality: 1024 dimensions
- Similarity Function: Cosine Similarity
- Supported Modality: Text
Model Sources
- Documentation: Sentence Transformers Documentation
- Repository: Sentence Transformers on GitHub
- Hugging Face: Sentence Transformers on Hugging Face
Full Model Architecture
SentenceTransformer(
(0): Transformer({'transformer_task': 'feature-extraction', 'modality_config': {'text': {'method': 'forward', 'method_output_name': 'last_hidden_state'}}, 'module_output_name': 'token_embeddings', 'architecture': 'XLMRobertaModel'})
(1): Pooling({'embedding_dimension': 1024, 'pooling_mode': 'cls', '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
queries = [
'Стакан для зубных щеток, 10х8х8 см, керамика, Zenfort, Granite, 106671 | Стаканы для ванной | керамика | Стаканы для зубных щеток | Стакан для зубных щеток',
]
documents = [
'Прочие хозяйственные и туалетные изделия из керамики, кроме фарфора, прочие',
'Щетки зубные, включая щетки для зубных протезов',
'Наборы кухонных или столовых приборов прочие из коррозионностойкой стали',
]
query_embeddings = model.encode_query(queries)
document_embeddings = model.encode_document(documents)
print(query_embeddings.shape, document_embeddings.shape)
# [1, 1024] [3, 1024]
# Get the similarity scores for the embeddings
similarities = model.similarity(query_embeddings, document_embeddings)
print(similarities)
# tensor([[0.7719, 0.0117, 0.2163]])
Evaluation
Metrics
Information Retrieval
- Dataset:
tnved_val - Evaluated with InformationRetrievalEvaluator
| Metric | Value |
|---|---|
| cosine_accuracy@1 | 0.9112 |
| cosine_accuracy@3 | 0.9708 |
| cosine_accuracy@5 | 0.9824 |
| cosine_accuracy@10 | 0.9881 |
| cosine_precision@1 | 0.9112 |
| cosine_precision@5 | 0.1965 |
| cosine_precision@10 | 0.0988 |
| cosine_recall@1 | 0.9112 |
| cosine_recall@5 | 0.9824 |
| cosine_recall@10 | 0.9881 |
| cosine_ndcg@10 | 0.9537 |
| cosine_mrr@10 | 0.9422 |
| cosine_map@100 | 0.9427 |
Training Details
Training Dataset
Unnamed Dataset
- Size: 55,239 training samples
- Columns: anchor, positive, and negative
- Approximate statistics based on the first 100 samples:
anchor positive negative type string string string modality text text text details min: 40 tokensmean: 58.33 tokensmax: 85 tokens min: 14 tokensmean: 19.6 tokensmax: 44 tokens min: 13 tokensmean: 32.9 tokensmax: 128 tokens - Samples:
anchor positive negative Дозатор для жидкого мыла керамика, 8.4х11.2/16.2 см, насадка с пенообразователем, оранжевый, CE2545AA-LD | Дозаторы | керамика | Дозаторы для ванной | Дозатор для жидкого мыла Прочие хозяйственные и туалетные изделия из фаянса или тонкой керамики Оборудование для агломерации, формовки или отливки керамических составов, прочее Дозатор для жидкого мыла, Лазурь, керамика, 9.3х7.8/13.7 см, BCE0698EA-LD | Дозаторы | керамика | Смесители | Дозатор для жидкого мыла Прочие хозяйственные и туалетные изделия из фаянса или тонкой керамики Изделия керамические для лабораторных, химических или других технических целей, имеющие эквивалент твердости 9 или более по шкале мооса Дозатор для жидкого мыла, керамика, 7.2x11.8/17.8 см, 350 мл, серый, BCE0745AA-LD | Дозаторы | керамика | Зеркала для ванной | Дозатор для жидкого мыла Прочие хозяйственные и туалетные изделия из фаянса или тонкой керамики Емкости жесткие цилиндрические вместимостью не более 1 л, алюминиевые, для любых веществ - Loss: 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 }
Training Hyperparameters
Non-Default Hyperparameters
per_device_train_batch_size: 16learning_rate: 2e-05warmup_steps: 1035fp16: Truedataloader_num_workers: 2load_best_model_at_end: Truegradient_checkpointing: Truegradient_checkpointing_kwargs: {'use_reentrant': False}
All Hyperparameters
do_predict: Falseprediction_loss_only: Trueper_device_train_batch_size: 16per_device_eval_batch_size: 8gradient_accumulation_steps: 1eval_accumulation_steps: Nonetorch_empty_cache_steps: Nonelearning_rate: 2e-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: Nonewarmup_ratio: Nonewarmup_steps: 1035log_level: passivelog_level_replica: warninglog_on_each_node: Truelogging_nan_inf_filter: Trueenable_jit_checkpoint: Falsesave_on_each_node: Falsesave_only_model: Falserestore_callback_states_from_checkpoint: Falseuse_cpu: Falseseed: 42data_seed: Nonebf16: Falsefp16: Truebf16_full_eval: Falsefp16_full_eval: Falsetf32: Nonelocal_rank: -1ddp_backend: Nonedebug: []dataloader_drop_last: Falsedataloader_num_workers: 2dataloader_prefetch_factor: Nonedisable_tqdm: Falseremove_unused_columns: Truelabel_names: Noneload_best_model_at_end: Trueignore_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: lengthproject: huggingfacetrackio_space_id: trackioddp_find_unused_parameters: Noneddp_bucket_cap_mb: Noneddp_broadcast_buffers: Falsedataloader_pin_memory: Truedataloader_persistent_workers: Falseskip_memory_metrics: Truepush_to_hub: Falseresume_from_checkpoint: Nonehub_model_id: Nonehub_strategy: every_savehub_private_repo: Nonehub_always_push: Falsehub_revision: Nonegradient_checkpointing: Truegradient_checkpointing_kwargs: {'use_reentrant': False}include_for_metrics: []eval_do_concat_batches: Trueauto_find_batch_size: Falsefull_determinism: Falseddp_timeout: 1800torch_compile: Falsetorch_compile_backend: Nonetorch_compile_mode: Noneinclude_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: Trueuse_cache: Falseprompts: Nonebatch_sampler: batch_samplermulti_dataset_batch_sampler: proportionalrouter_mapping: {}learning_rate_mapping: {}
Training Logs
| Epoch | Step | Training Loss | tnved_val_cosine_ndcg@10 |
|---|---|---|---|
| 0.0145 | 50 | 2.2820 | - |
| 0.0290 | 100 | 1.7624 | - |
| 0.0434 | 150 | 1.2635 | - |
| 0.0579 | 200 | 0.9988 | - |
| 0.0724 | 250 | 0.7912 | - |
| 0.0869 | 300 | 0.6586 | - |
| 0.1014 | 350 | 0.6218 | - |
| 0.1158 | 400 | 0.5275 | - |
| 0.1303 | 450 | 0.4794 | - |
| 0.1448 | 500 | 0.4133 | - |
| 0.1593 | 550 | 0.3822 | - |
| 0.1738 | 600 | 0.3241 | - |
| 0.1882 | 650 | 0.4201 | - |
| 0.2027 | 700 | 0.3331 | - |
| 0.2172 | 750 | 0.3885 | - |
| 0.2317 | 800 | 0.3504 | - |
| 0.2462 | 850 | 0.3990 | - |
| 0.2606 | 900 | 0.2926 | - |
| 0.2751 | 950 | 0.3195 | - |
| 0.2896 | 1000 | 0.3171 | - |
| 0.3041 | 1050 | 0.3329 | - |
| 0.3186 | 1100 | 0.2703 | - |
| 0.3330 | 1150 | 0.3155 | - |
| 0.3475 | 1200 | 0.2899 | - |
| 0.3620 | 1250 | 0.2619 | - |
| 0.3765 | 1300 | 0.2995 | - |
| 0.3910 | 1350 | 0.2505 | - |
| 0.4054 | 1400 | 0.2932 | - |
| 0.4199 | 1450 | 0.2550 | - |
| 0.4344 | 1500 | 0.2591 | - |
| 0.4489 | 1550 | 0.2452 | - |
| 0.4634 | 1600 | 0.2133 | - |
| 0.4778 | 1650 | 0.1969 | - |
| 0.4923 | 1700 | 0.2192 | - |
| 0.4999 | 1726 | - | 0.8275 |
| 0.5068 | 1750 | 0.2698 | - |
| 0.5213 | 1800 | 0.2347 | - |
| 0.5358 | 1850 | 0.2309 | - |
| 0.5502 | 1900 | 0.2261 | - |
| 0.5647 | 1950 | 0.1979 | - |
| 0.5792 | 2000 | 0.2071 | - |
| 0.5937 | 2050 | 0.2161 | - |
| 0.6082 | 2100 | 0.1978 | - |
| 0.6226 | 2150 | 0.2471 | - |
| 0.6371 | 2200 | 0.1541 | - |
| 0.6516 | 2250 | 0.2083 | - |
| 0.6661 | 2300 | 0.1486 | - |
| 0.6806 | 2350 | 0.2128 | - |
| 0.6950 | 2400 | 0.2006 | - |
| 0.7095 | 2450 | 0.1735 | - |
| 0.7240 | 2500 | 0.1882 | - |
| 0.7385 | 2550 | 0.1778 | - |
| 0.7530 | 2600 | 0.1822 | - |
| 0.7674 | 2650 | 0.2017 | - |
| 0.7819 | 2700 | 0.1739 | - |
| 0.7964 | 2750 | 0.1746 | - |
| 0.8109 | 2800 | 0.2027 | - |
| 0.8254 | 2850 | 0.1898 | - |
| 0.8398 | 2900 | 0.1850 | - |
| 0.8543 | 2950 | 0.2046 | - |
| 0.8688 | 3000 | 0.1341 | - |
| 0.8833 | 3050 | 0.1818 | - |
| 0.8978 | 3100 | 0.1223 | - |
| 0.9123 | 3150 | 0.1667 | - |
| 0.9267 | 3200 | 0.1840 | - |
| 0.9412 | 3250 | 0.1873 | - |
| 0.9557 | 3300 | 0.1984 | - |
| 0.9702 | 3350 | 0.1575 | - |
| 0.9847 | 3400 | 0.1857 | - |
| 0.9991 | 3450 | 0.1639 | - |
| 0.9997 | 3452 | - | 0.9020 |
| 1.0136 | 3500 | 0.1466 | - |
| 1.0281 | 3550 | 0.1846 | - |
| 1.0426 | 3600 | 0.1500 | - |
| 1.0571 | 3650 | 0.1226 | - |
| 1.0715 | 3700 | 0.1246 | - |
| 1.0860 | 3750 | 0.1485 | - |
| 1.1005 | 3800 | 0.1196 | - |
| 1.1150 | 3850 | 0.1320 | - |
| 1.1295 | 3900 | 0.1386 | - |
| 1.1439 | 3950 | 0.1355 | - |
| 1.1584 | 4000 | 0.1479 | - |
| 1.1729 | 4050 | 0.1199 | - |
| 1.1874 | 4100 | 0.1429 | - |
| 1.2019 | 4150 | 0.1263 | - |
| 1.2163 | 4200 | 0.1385 | - |
| 1.2308 | 4250 | 0.1296 | - |
| 1.2453 | 4300 | 0.1635 | - |
| 1.2598 | 4350 | 0.1022 | - |
| 1.2743 | 4400 | 0.1364 | - |
| 1.2887 | 4450 | 0.1430 | - |
| 1.3032 | 4500 | 0.1327 | - |
| 1.3177 | 4550 | 0.1033 | - |
| 1.3322 | 4600 | 0.1288 | - |
| 1.3467 | 4650 | 0.1503 | - |
| 1.3611 | 4700 | 0.1259 | - |
| 1.3756 | 4750 | 0.1267 | - |
| 1.3901 | 4800 | 0.1509 | - |
| 1.4046 | 4850 | 0.1138 | - |
| 1.4191 | 4900 | 0.1554 | - |
| 1.4335 | 4950 | 0.1412 | - |
| 1.4480 | 5000 | 0.1492 | - |
| 1.4625 | 5050 | 0.1120 | - |
| 1.4770 | 5100 | 0.1609 | - |
| 1.4915 | 5150 | 0.1270 | - |
| 1.4996 | 5178 | - | 0.9206 |
| 1.5059 | 5200 | 0.1155 | - |
| 1.5204 | 5250 | 0.1630 | - |
| 1.5349 | 5300 | 0.1433 | - |
| 1.5494 | 5350 | 0.1237 | - |
| 1.5639 | 5400 | 0.1226 | - |
| 1.5783 | 5450 | 0.1088 | - |
| 1.5928 | 5500 | 0.1360 | - |
| 1.6073 | 5550 | 0.1199 | - |
| 1.6218 | 5600 | 0.0965 | - |
| 1.6363 | 5650 | 0.1386 | - |
| 1.6507 | 5700 | 0.1440 | - |
| 1.6652 | 5750 | 0.1216 | - |
| 1.6797 | 5800 | 0.0983 | - |
| 1.6942 | 5850 | 0.1209 | - |
| 1.7087 | 5900 | 0.1436 | - |
| 1.7231 | 5950 | 0.1353 | - |
| 1.7376 | 6000 | 0.1180 | - |
| 1.7521 | 6050 | 0.1217 | - |
| 1.7666 | 6100 | 0.1300 | - |
| 1.7811 | 6150 | 0.1161 | - |
| 1.7955 | 6200 | 0.1114 | - |
| 1.8100 | 6250 | 0.1353 | - |
| 1.8245 | 6300 | 0.1396 | - |
| 1.8390 | 6350 | 0.1137 | - |
| 1.8535 | 6400 | 0.1261 | - |
| 1.8679 | 6450 | 0.0892 | - |
| 1.8824 | 6500 | 0.1151 | - |
| 1.8969 | 6550 | 0.1347 | - |
| 1.9114 | 6600 | 0.1146 | - |
| 1.9259 | 6650 | 0.1098 | - |
| 1.9403 | 6700 | 0.1188 | - |
| 1.9548 | 6750 | 0.1054 | - |
| 1.9693 | 6800 | 0.1050 | - |
| 1.9838 | 6850 | 0.1217 | - |
| 1.9983 | 6900 | 0.0902 | - |
| 1.9994 | 6904 | - | 0.9257 |
| 2.0127 | 6950 | 0.1090 | - |
| 2.0272 | 7000 | 0.1225 | - |
| 2.0417 | 7050 | 0.0977 | - |
| 2.0562 | 7100 | 0.1116 | - |
| 2.0707 | 7150 | 0.0857 | - |
| 2.0851 | 7200 | 0.0957 | - |
| 2.0996 | 7250 | 0.1063 | - |
| 2.1141 | 7300 | 0.0909 | - |
| 2.1286 | 7350 | 0.0944 | - |
| 2.1431 | 7400 | 0.0980 | - |
| 2.1575 | 7450 | 0.0874 | - |
| 2.1720 | 7500 | 0.1243 | - |
| 2.1865 | 7550 | 0.1098 | - |
| 2.2010 | 7600 | 0.1077 | - |
| 2.2155 | 7650 | 0.0953 | - |
| 2.2299 | 7700 | 0.0885 | - |
| 2.2444 | 7750 | 0.0972 | - |
| 2.2589 | 7800 | 0.0913 | - |
| 2.2734 | 7850 | 0.0968 | - |
| 2.2879 | 7900 | 0.0999 | - |
| 2.3023 | 7950 | 0.1009 | - |
| 2.3168 | 8000 | 0.0611 | - |
| 2.3313 | 8050 | 0.0949 | - |
| 2.3458 | 8100 | 0.1186 | - |
| 2.3603 | 8150 | 0.1064 | - |
| 2.3747 | 8200 | 0.1062 | - |
| 2.3892 | 8250 | 0.0994 | - |
| 2.4037 | 8300 | 0.0855 | - |
| 2.4182 | 8350 | 0.1024 | - |
| 2.4327 | 8400 | 0.1074 | - |
| 2.4471 | 8450 | 0.1248 | - |
| 2.4616 | 8500 | 0.0996 | - |
| 2.4761 | 8550 | 0.1094 | - |
| 2.4906 | 8600 | 0.0873 | - |
| 2.4993 | 8630 | - | 0.9461 |
| 2.5051 | 8650 | 0.1267 | - |
| 2.5195 | 8700 | 0.1145 | - |
| 2.5340 | 8750 | 0.0943 | - |
| 2.5485 | 8800 | 0.0821 | - |
| 2.5630 | 8850 | 0.0998 | - |
| 2.5775 | 8900 | 0.0926 | - |
| 2.5919 | 8950 | 0.0890 | - |
| 2.6064 | 9000 | 0.1106 | - |
| 2.6209 | 9050 | 0.0866 | - |
| 2.6354 | 9100 | 0.0890 | - |
| 2.6499 | 9150 | 0.1020 | - |
| 2.6643 | 9200 | 0.0801 | - |
| 2.6788 | 9250 | 0.1005 | - |
| 2.6933 | 9300 | 0.0986 | - |
| 2.7078 | 9350 | 0.0959 | - |
| 2.7223 | 9400 | 0.0953 | - |
| 2.7368 | 9450 | 0.1198 | - |
| 2.7512 | 9500 | 0.0794 | - |
| 2.7657 | 9550 | 0.0957 | - |
| 2.7802 | 9600 | 0.0808 | - |
| 2.7947 | 9650 | 0.1195 | - |
| 2.8092 | 9700 | 0.0881 | - |
| 2.8236 | 9750 | 0.1044 | - |
| 2.8381 | 9800 | 0.1015 | - |
| 2.8526 | 9850 | 0.0888 | - |
| 2.8671 | 9900 | 0.0680 | - |
| 2.8816 | 9950 | 0.0909 | - |
| 2.8960 | 10000 | 0.1110 | - |
| 2.9105 | 10050 | 0.1137 | - |
| 2.9250 | 10100 | 0.0912 | - |
| 2.9395 | 10150 | 0.0988 | - |
| 2.9540 | 10200 | 0.1028 | - |
| 2.9684 | 10250 | 0.1061 | - |
| 2.9829 | 10300 | 0.1042 | - |
| 2.9974 | 10350 | 0.1226 | - |
| 2.9991 | 10356 | - | 0.9537 |
- The bold row denotes the saved checkpoint.
Training Time
- Training: 3.0 hours
Framework Versions
- Python: 3.12.13
- Sentence Transformers: 5.5.1
- Transformers: 5.0.0
- PyTorch: 2.11.0+cu128
- Accelerate: 1.13.0
- Datasets: 4.0.0
- Tokenizers: 0.22.2
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{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},
}