---
language:
- ru
license: apache-2.0
tags:
- sentence-transformers
- sentence-similarity
- feature-extraction
- generated_from_trainer
- dataset_size:904
- loss:MatryoshkaLoss
- loss:MultipleNegativesRankingLoss
base_model: BAAI/bge-m3
widget:
- source_sentence: Какой у тебя план на будущее?
sentences:
- Работа — это скучно, если не считать, что Уголовный розыск считает меня своим
работником.
- Я дам вам парабеллум, если дружба станет слишком серьезной!
- План? Из Васюков полетят сигналы на Марс, а я буду на Земле собирать деньги на
билет.
- source_sentence: Какой у тебя любимый фильм?
sentences:
- Может быть, тебе дать еще список фильмов, где много денег?
- Вам нужно путешествовать так, чтобы потом не забыть, где памятник.
- А доисторические спортсмены в матрацах не тренируются?
- source_sentence: Как ты проводишь свободное время?
sentences:
- Напиток? Командовать парадом буду я!
- Нас топят — мы выплываем, а свободное время — это для плавания!
- От мертвого осла уши получишь у Пушкина, а от фильмов — только кадры.
- source_sentence: Как ты проводишь свободное время?
sentences:
- Картина битвы мне ясна, но я предпочитаю не сражаться с скукой.
- Спорт — это для тех, кто не знает, что они произошли от коровы!
- Тайный союз меча и орала! Свободное время — это когда можно ничего не делать и
не переживать!
- source_sentence: Какой у тебя любимый фильм?
sentences:
- А что, разве я похож на человека, который не любит читать между строк?
- У нас хотя и не Париж, но кино у нас всегда с интригой!
- Фильм? Знойная женщина, мечта поэта — вот мой любимый сюжет!
pipeline_tag: sentence-similarity
library_name: sentence-transformers
metrics:
- cosine_accuracy@1
- cosine_accuracy@3
- cosine_accuracy@5
- cosine_accuracy@10
- cosine_precision@1
- cosine_precision@3
- cosine_precision@5
- cosine_precision@10
- cosine_recall@1
- cosine_recall@3
- cosine_recall@5
- cosine_recall@10
- cosine_ndcg@10
- cosine_mrr@10
- cosine_map@100
model-index:
- name: BGE m3 for Ostap project
results:
- task:
type: information-retrieval
name: Information Retrieval
dataset:
name: dim 1024
type: dim_1024
metrics:
- type: cosine_accuracy@1
value: 0.14933628318584072
name: Cosine Accuracy@1
- type: cosine_accuracy@3
value: 0.2665929203539823
name: Cosine Accuracy@3
- type: cosine_accuracy@5
value: 0.34292035398230086
name: Cosine Accuracy@5
- type: cosine_accuracy@10
value: 0.4856194690265487
name: Cosine Accuracy@10
- type: cosine_precision@1
value: 0.14933628318584072
name: Cosine Precision@1
- type: cosine_precision@3
value: 0.08886430678466074
name: Cosine Precision@3
- type: cosine_precision@5
value: 0.06858407079646017
name: Cosine Precision@5
- type: cosine_precision@10
value: 0.04856194690265486
name: Cosine Precision@10
- type: cosine_recall@1
value: 0.14933628318584072
name: Cosine Recall@1
- type: cosine_recall@3
value: 0.2665929203539823
name: Cosine Recall@3
- type: cosine_recall@5
value: 0.34292035398230086
name: Cosine Recall@5
- type: cosine_recall@10
value: 0.4856194690265487
name: Cosine Recall@10
- type: cosine_ndcg@10
value: 0.2942645243659726
name: Cosine Ndcg@10
- type: cosine_mrr@10
value: 0.23620329400196635
name: Cosine Mrr@10
- type: cosine_map@100
value: 0.2600956714540916
name: Cosine Map@100
- task:
type: information-retrieval
name: Information Retrieval
dataset:
name: dim 768
type: dim_768
metrics:
- type: cosine_accuracy@1
value: 0.14601769911504425
name: Cosine Accuracy@1
- type: cosine_accuracy@3
value: 0.26548672566371684
name: Cosine Accuracy@3
- type: cosine_accuracy@5
value: 0.3473451327433628
name: Cosine Accuracy@5
- type: cosine_accuracy@10
value: 0.48672566371681414
name: Cosine Accuracy@10
- type: cosine_precision@1
value: 0.14601769911504425
name: Cosine Precision@1
- type: cosine_precision@3
value: 0.08849557522123894
name: Cosine Precision@3
- type: cosine_precision@5
value: 0.06946902654867257
name: Cosine Precision@5
- type: cosine_precision@10
value: 0.048672566371681415
name: Cosine Precision@10
- type: cosine_recall@1
value: 0.14601769911504425
name: Cosine Recall@1
- type: cosine_recall@3
value: 0.26548672566371684
name: Cosine Recall@3
- type: cosine_recall@5
value: 0.3473451327433628
name: Cosine Recall@5
- type: cosine_recall@10
value: 0.48672566371681414
name: Cosine Recall@10
- type: cosine_ndcg@10
value: 0.2931785163867407
name: Cosine Ndcg@10
- type: cosine_mrr@10
value: 0.2343512958280655
name: Cosine Mrr@10
- type: cosine_map@100
value: 0.2581995173126666
name: Cosine Map@100
- task:
type: information-retrieval
name: Information Retrieval
dataset:
name: dim 512
type: dim_512
metrics:
- type: cosine_accuracy@1
value: 0.14823008849557523
name: Cosine Accuracy@1
- type: cosine_accuracy@3
value: 0.26548672566371684
name: Cosine Accuracy@3
- type: cosine_accuracy@5
value: 0.34513274336283184
name: Cosine Accuracy@5
- type: cosine_accuracy@10
value: 0.4944690265486726
name: Cosine Accuracy@10
- type: cosine_precision@1
value: 0.14823008849557523
name: Cosine Precision@1
- type: cosine_precision@3
value: 0.08849557522123894
name: Cosine Precision@3
- type: cosine_precision@5
value: 0.06902654867256636
name: Cosine Precision@5
- type: cosine_precision@10
value: 0.04944690265486726
name: Cosine Precision@10
- type: cosine_recall@1
value: 0.14823008849557523
name: Cosine Recall@1
- type: cosine_recall@3
value: 0.26548672566371684
name: Cosine Recall@3
- type: cosine_recall@5
value: 0.34513274336283184
name: Cosine Recall@5
- type: cosine_recall@10
value: 0.4944690265486726
name: Cosine Recall@10
- type: cosine_ndcg@10
value: 0.2965536225707287
name: Cosine Ndcg@10
- type: cosine_mrr@10
value: 0.23654261483354377
name: Cosine Mrr@10
- type: cosine_map@100
value: 0.2597641504609653
name: Cosine Map@100
- task:
type: information-retrieval
name: Information Retrieval
dataset:
name: dim 256
type: dim_256
metrics:
- type: cosine_accuracy@1
value: 0.14491150442477876
name: Cosine Accuracy@1
- type: cosine_accuracy@3
value: 0.2688053097345133
name: Cosine Accuracy@3
- type: cosine_accuracy@5
value: 0.34845132743362833
name: Cosine Accuracy@5
- type: cosine_accuracy@10
value: 0.4911504424778761
name: Cosine Accuracy@10
- type: cosine_precision@1
value: 0.14491150442477876
name: Cosine Precision@1
- type: cosine_precision@3
value: 0.08960176991150441
name: Cosine Precision@3
- type: cosine_precision@5
value: 0.06969026548672566
name: Cosine Precision@5
- type: cosine_precision@10
value: 0.049115044247787606
name: Cosine Precision@10
- type: cosine_recall@1
value: 0.14491150442477876
name: Cosine Recall@1
- type: cosine_recall@3
value: 0.2688053097345133
name: Cosine Recall@3
- type: cosine_recall@5
value: 0.34845132743362833
name: Cosine Recall@5
- type: cosine_recall@10
value: 0.4911504424778761
name: Cosine Recall@10
- type: cosine_ndcg@10
value: 0.2942530832557106
name: Cosine Ndcg@10
- type: cosine_mrr@10
value: 0.2342999367888746
name: Cosine Mrr@10
- type: cosine_map@100
value: 0.2580055991240585
name: Cosine Map@100
- task:
type: information-retrieval
name: Information Retrieval
dataset:
name: dim 128
type: dim_128
metrics:
- type: cosine_accuracy@1
value: 0.14712389380530974
name: Cosine Accuracy@1
- type: cosine_accuracy@3
value: 0.2665929203539823
name: Cosine Accuracy@3
- type: cosine_accuracy@5
value: 0.34623893805309736
name: Cosine Accuracy@5
- type: cosine_accuracy@10
value: 0.4944690265486726
name: Cosine Accuracy@10
- type: cosine_precision@1
value: 0.14712389380530974
name: Cosine Precision@1
- type: cosine_precision@3
value: 0.08886430678466076
name: Cosine Precision@3
- type: cosine_precision@5
value: 0.06924778761061946
name: Cosine Precision@5
- type: cosine_precision@10
value: 0.04944690265486726
name: Cosine Precision@10
- type: cosine_recall@1
value: 0.14712389380530974
name: Cosine Recall@1
- type: cosine_recall@3
value: 0.2665929203539823
name: Cosine Recall@3
- type: cosine_recall@5
value: 0.34623893805309736
name: Cosine Recall@5
- type: cosine_recall@10
value: 0.4944690265486726
name: Cosine Recall@10
- type: cosine_ndcg@10
value: 0.2963702071144291
name: Cosine Ndcg@10
- type: cosine_mrr@10
value: 0.2362221695462843
name: Cosine Mrr@10
- type: cosine_map@100
value: 0.25976571809408944
name: Cosine Map@100
- task:
type: information-retrieval
name: Information Retrieval
dataset:
name: dim 64
type: dim_64
metrics:
- type: cosine_accuracy@1
value: 0.14601769911504425
name: Cosine Accuracy@1
- type: cosine_accuracy@3
value: 0.26991150442477874
name: Cosine Accuracy@3
- type: cosine_accuracy@5
value: 0.3473451327433628
name: Cosine Accuracy@5
- type: cosine_accuracy@10
value: 0.497787610619469
name: Cosine Accuracy@10
- type: cosine_precision@1
value: 0.14601769911504425
name: Cosine Precision@1
- type: cosine_precision@3
value: 0.08997050147492625
name: Cosine Precision@3
- type: cosine_precision@5
value: 0.06946902654867257
name: Cosine Precision@5
- type: cosine_precision@10
value: 0.049778761061946904
name: Cosine Precision@10
- type: cosine_recall@1
value: 0.14601769911504425
name: Cosine Recall@1
- type: cosine_recall@3
value: 0.26991150442477874
name: Cosine Recall@3
- type: cosine_recall@5
value: 0.3473451327433628
name: Cosine Recall@5
- type: cosine_recall@10
value: 0.497787610619469
name: Cosine Recall@10
- type: cosine_ndcg@10
value: 0.29684044099735196
name: Cosine Ndcg@10
- type: cosine_mrr@10
value: 0.23588767734232302
name: Cosine Mrr@10
- type: cosine_map@100
value: 0.2592174386566743
name: Cosine Map@100
---
# BGE m3 for Ostap project
This is a [sentence-transformers](https://www.SBERT.net) model finetuned from [BAAI/bge-m3](https://huggingface.co/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](https://huggingface.co/BAAI/bge-m3)
- **Maximum Sequence Length:** 8192 tokens
- **Output Dimensionality:** 1024 dimensions
- **Similarity Function:** Cosine Similarity
- **Language:** ru
- **License:** apache-2.0
### Model Sources
- **Documentation:** [Sentence Transformers Documentation](https://sbert.net)
- **Repository:** [Sentence Transformers on GitHub](https://github.com/UKPLab/sentence-transformers)
- **Hugging Face:** [Sentence Transformers on Hugging Face](https://huggingface.co/models?library=sentence-transformers)
### Full Model Architecture
```
SentenceTransformer(
(0): Transformer({'max_seq_length': 8192, 'do_lower_case': False}) with Transformer model: 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:
```bash
pip install -U sentence-transformers
```
Then you can load this model and run inference.
```python
from sentence_transformers import SentenceTransformer
# Download from the 🤗 Hub
model = SentenceTransformer("fitlemon/bge-m3-ru-ostap")
# Run inference
sentences = [
'Какой у тебя любимый фильм?',
'У нас хотя и не Париж, но кино у нас всегда с интригой!',
'Фильм? Знойная женщина, мечта поэта — вот мой любимый сюжет!',
]
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]
```
## Evaluation
### Metrics
#### Information Retrieval
* Datasets: `dim_1024`, `dim_768`, `dim_512`, `dim_256`, `dim_128` and `dim_64`
* Evaluated with [InformationRetrievalEvaluator
](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.InformationRetrievalEvaluator)
| Metric | dim_1024 | dim_768 | dim_512 | dim_256 | dim_128 | dim_64 |
|:--------------------|:-----------|:-----------|:-----------|:-----------|:-----------|:-----------|
| cosine_accuracy@1 | 0.1493 | 0.146 | 0.1482 | 0.1449 | 0.1471 | 0.146 |
| cosine_accuracy@3 | 0.2666 | 0.2655 | 0.2655 | 0.2688 | 0.2666 | 0.2699 |
| cosine_accuracy@5 | 0.3429 | 0.3473 | 0.3451 | 0.3485 | 0.3462 | 0.3473 |
| cosine_accuracy@10 | 0.4856 | 0.4867 | 0.4945 | 0.4912 | 0.4945 | 0.4978 |
| cosine_precision@1 | 0.1493 | 0.146 | 0.1482 | 0.1449 | 0.1471 | 0.146 |
| cosine_precision@3 | 0.0889 | 0.0885 | 0.0885 | 0.0896 | 0.0889 | 0.09 |
| cosine_precision@5 | 0.0686 | 0.0695 | 0.069 | 0.0697 | 0.0692 | 0.0695 |
| cosine_precision@10 | 0.0486 | 0.0487 | 0.0494 | 0.0491 | 0.0494 | 0.0498 |
| cosine_recall@1 | 0.1493 | 0.146 | 0.1482 | 0.1449 | 0.1471 | 0.146 |
| cosine_recall@3 | 0.2666 | 0.2655 | 0.2655 | 0.2688 | 0.2666 | 0.2699 |
| cosine_recall@5 | 0.3429 | 0.3473 | 0.3451 | 0.3485 | 0.3462 | 0.3473 |
| cosine_recall@10 | 0.4856 | 0.4867 | 0.4945 | 0.4912 | 0.4945 | 0.4978 |
| **cosine_ndcg@10** | **0.2943** | **0.2932** | **0.2966** | **0.2943** | **0.2964** | **0.2968** |
| cosine_mrr@10 | 0.2362 | 0.2344 | 0.2365 | 0.2343 | 0.2362 | 0.2359 |
| cosine_map@100 | 0.2601 | 0.2582 | 0.2598 | 0.258 | 0.2598 | 0.2592 |
## Training Details
### Training Dataset
#### Unnamed Dataset
* Size: 904 training samples
* Columns: question
and answer
* Approximate statistics based on the first 904 samples:
| | question | answer |
|:--------|:----------------------------------------------------------------------------------|:----------------------------------------------------------------------------------|
| type | string | string |
| details |
Как ты проводишь свободное время?
| Любителя бьют, а время — не ждет!
|
| Какой у тебя план на будущее?
| План на будущее? Широкие массы миллиардеров уже составили его за меня.
|
| Какой у тебя любимый цвет?
| Вы мне в конце концов не художник, не дизайнер и не стилист.
|
* Loss: [MatryoshkaLoss
](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#matryoshkaloss) with these parameters:
```json
{
"loss": "MultipleNegativesRankingLoss",
"matryoshka_dims": [
1024,
768,
512,
256,
128,
64
],
"matryoshka_weights": [
1,
1,
1,
1,
1,
1
],
"n_dims_per_step": -1
}
```
### Training Hyperparameters
#### Non-Default Hyperparameters
- `eval_strategy`: epoch
- `learning_rate`: 2e-05
- `num_train_epochs`: 4
- `lr_scheduler_type`: cosine
- `warmup_ratio`: 0.1
- `fp16`: True
- `tf32`: False
- `load_best_model_at_end`: True
- `optim`: adamw_torch_fused
- `batch_sampler`: no_duplicates
#### All Hyperparameters