sentence-transformers safetensors qwen2 sentence-similarity feature-extraction generated_from_trainer dataset_size:693000 loss:MatryoshkaLoss loss:MultipleNegativesRankingLoss custom_code arxiv:1908.10084 arxiv:2205.13147 arxiv:1705.00652 base_model:NovaSearch/stella_en_1.5B_v5 base_model:finetune:NovaSearch/stella_en_1.5B_v5 model-index autotrain_compatible text-embeddings-inference endpoints_compatible region:us
---
base_model: dunzhang/stella_en_1.5B_v5
datasets: []
language: []
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
pipeline_tag: sentence-similarity
tags:
- sentence-transformers
- sentence-similarity
- feature-extraction
- generated_from_trainer
- dataset_size:693000
- loss:MatryoshkaLoss
- loss:MultipleNegativesRankingLoss
widget:
- source_sentence: Paracrystalline materials are defined as having short and medium
    range ordering in their lattice (similar to the liquid crystal phases) but lacking
    crystal-like long-range ordering at least in one direction.
  sentences:
  - 'Instruct: Given a web search query, retrieve relevant passages that answer the
    query.

    Query: Paracrystalline'
  - 'Instruct: Given a web search query, retrieve relevant passages that answer the
    query.

    Query: Øystein Dahle'
  - 'Instruct: Given a web search query, retrieve relevant passages that answer the
    query.

    Query: Makis Belevonis'
- source_sentence: 'Hạ Trạch is a commune ( xã ) and village in Bố Trạch District
    , Quảng Bình Province , in Vietnam .   Category : Populated places in Quang Binh
    Province  Category : Communes of Quang Binh Province'
  sentences:
  - 'Instruct: Given a web search query, retrieve relevant passages that answer the
    query.

    Query: The Taill of how this forsaid Tod maid his Confessioun to Freir Wolf Waitskaith'
  - 'Instruct: Given a web search query, retrieve relevant passages that answer the
    query.

    Query: Hạ Trạch'
  - 'Instruct: Given a web search query, retrieve relevant passages that answer the
    query.

    Query: Tadaxa'
- source_sentence: The Golden Mosque (سنهرى مسجد, Sunehri Masjid) is a mosque in Old
    Delhi. It is located outside the southwestern corner of Delhi Gate of the Red
    Fort, opposite the Netaji Subhash Park.
  sentences:
  - 'Instruct: Given a web search query, retrieve relevant passages that answer the
    query.

    Query: Algorithm'
  - 'Instruct: Given a web search query, retrieve relevant passages that answer the
    query.

    Query: Golden Mosque (Red Fort)'
  - 'Instruct: Given a web search query, retrieve relevant passages that answer the
    query.

    Query: Parnaso Español'
- source_sentence: Unibank, S.A. is one of Haiti's two largest private commercial
    banks. The bank was founded in 1993 by a group of Haitian investors and is the
    main company of "Groupe Financier National (GFN)". It opened its first office
    in July 1993 in downtown Port-au-Prince and has 50 branches throughout the country
    as of the end of 2016.
  sentences:
  - 'Instruct: Given a web search query, retrieve relevant passages that answer the
    query.

    Query: Sky TG24'
  - 'Instruct: Given a web search query, retrieve relevant passages that answer the
    query.

    Query: Ghomijeh'
  - 'Instruct: Given a web search query, retrieve relevant passages that answer the
    query.

    Query: Unibank (Haiti)'
- source_sentence: The Tchaikovsky Symphony Orchestra is a Russian classical music
    orchestra established in 1930. It was founded as the Moscow Radio Symphony Orchestra,
    and served as the official symphony for the Soviet All-Union Radio network. Following
    the dissolution of the, Soviet Union in 1991, the orchestra was renamed in 1993
    by the Russian Ministry of Culture in recognition of the central role the music
    of Tchaikovsky plays in its repertoire. The current music director is Vladimir
    Fedoseyev, who has been in that position since 1974.
  sentences:
  - 'Instruct: Given a web search query, retrieve relevant passages that answer the
    query.

    Query: Harald J.W. Mueller-Kirsten'
  - 'Instruct: Given a web search query, retrieve relevant passages that answer the
    query.

    Query: Sierra del Lacandón'
  - 'Instruct: Given a web search query, retrieve relevant passages that answer the
    query.

    Query: Tchaikovsky Symphony Orchestra'
model-index:
- name: SentenceTransformer based on dunzhang/stella_en_1.5B_v5
  results:
  - task:
      type: information-retrieval
      name: Information Retrieval
    dataset:
      name: Unknown
      type: unknown
    metrics:
    - type: cosine_accuracy@1
      value: 0.9387205387205387
      name: Cosine Accuracy@1
    - type: cosine_accuracy@3
      value: 0.9646464646464646
      name: Cosine Accuracy@3
    - type: cosine_accuracy@5
      value: 0.9734006734006734
      name: Cosine Accuracy@5
    - type: cosine_accuracy@10
      value: 0.9818181818181818
      name: Cosine Accuracy@10
    - type: cosine_precision@1
      value: 0.9387205387205387
      name: Cosine Precision@1
    - type: cosine_precision@3
      value: 0.32154882154882153
      name: Cosine Precision@3
    - type: cosine_precision@5
      value: 0.19468013468013465
      name: Cosine Precision@5
    - type: cosine_precision@10
      value: 0.09818181818181818
      name: Cosine Precision@10
    - type: cosine_recall@1
      value: 0.9387205387205387
      name: Cosine Recall@1
    - type: cosine_recall@3
      value: 0.9646464646464646
      name: Cosine Recall@3
    - type: cosine_recall@5
      value: 0.9734006734006734
      name: Cosine Recall@5
    - type: cosine_recall@10
      value: 0.9818181818181818
      name: Cosine Recall@10
    - type: cosine_ndcg@10
      value: 0.9604189096111768
      name: Cosine Ndcg@10
    - type: cosine_mrr@10
      value: 0.9535509860509859
      name: Cosine Mrr@10
    - type: cosine_map@100
      value: 0.9540030317604424
      name: Cosine Map@100
    - type: cosine_accuracy@1
      value: 0.938047138047138
      name: Cosine Accuracy@1
    - type: cosine_accuracy@3
      value: 0.9643097643097643
      name: Cosine Accuracy@3
    - type: cosine_accuracy@5
      value: 0.9734006734006734
      name: Cosine Accuracy@5
    - type: cosine_accuracy@10
      value: 0.9801346801346801
      name: Cosine Accuracy@10
    - type: cosine_precision@1
      value: 0.938047138047138
      name: Cosine Precision@1
    - type: cosine_precision@3
      value: 0.3214365881032548
      name: Cosine Precision@3
    - type: cosine_precision@5
      value: 0.19468013468013465
      name: Cosine Precision@5
    - type: cosine_precision@10
      value: 0.09801346801346798
      name: Cosine Precision@10
    - type: cosine_recall@1
      value: 0.938047138047138
      name: Cosine Recall@1
    - type: cosine_recall@3
      value: 0.9643097643097643
      name: Cosine Recall@3
    - type: cosine_recall@5
      value: 0.9734006734006734
      name: Cosine Recall@5
    - type: cosine_recall@10
      value: 0.9801346801346801
      name: Cosine Recall@10
    - type: cosine_ndcg@10
      value: 0.9595228125760605
      name: Cosine Ndcg@10
    - type: cosine_mrr@10
      value: 0.9528592806370585
      name: Cosine Mrr@10
    - type: cosine_map@100
      value: 0.9534396603676074
      name: Cosine Map@100
    - type: cosine_accuracy@1
      value: 0.9387205387205387
      name: Cosine Accuracy@1
    - type: cosine_accuracy@3
      value: 0.9622895622895623
      name: Cosine Accuracy@3
    - type: cosine_accuracy@5
      value: 0.9703703703703703
      name: Cosine Accuracy@5
    - type: cosine_accuracy@10
      value: 0.9787878787878788
      name: Cosine Accuracy@10
    - type: cosine_precision@1
      value: 0.9387205387205387
      name: Cosine Precision@1
    - type: cosine_precision@3
      value: 0.3207631874298541
      name: Cosine Precision@3
    - type: cosine_precision@5
      value: 0.19407407407407404
      name: Cosine Precision@5
    - type: cosine_precision@10
      value: 0.09787878787878787
      name: Cosine Precision@10
    - type: cosine_recall@1
      value: 0.9387205387205387
      name: Cosine Recall@1
    - type: cosine_recall@3
      value: 0.9622895622895623
      name: Cosine Recall@3
    - type: cosine_recall@5
      value: 0.9703703703703703
      name: Cosine Recall@5
    - type: cosine_recall@10
      value: 0.9787878787878788
      name: Cosine Recall@10
    - type: cosine_ndcg@10
      value: 0.9588799906525647
      name: Cosine Ndcg@10
    - type: cosine_mrr@10
      value: 0.9525124258457593
      name: Cosine Mrr@10
    - type: cosine_map@100
      value: 0.9530933506069861
      name: Cosine Map@100
---

# SentenceTransformer based on dunzhang/stella_en_1.5B_v5

This is a [sentence-transformers](https://www.SBERT.net) model finetuned from [dunzhang/stella_en_1.5B_v5](https://huggingface.co/dunzhang/stella_en_1.5B_v5). 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:** [dunzhang/stella_en_1.5B_v5](https://huggingface.co/dunzhang/stella_en_1.5B_v5) <!-- at revision 129dc50d3ca5f0f5ee0ce8944f65a8553c0f26e0 -->
- **Maximum Sequence Length:** 8096 tokens
- **Output Dimensionality:** 1024 tokens
- **Similarity Function:** Cosine Similarity
<!-- - **Training Dataset:** Unknown -->
<!-- - **Language:** Unknown -->
<!-- - **License:** Unknown -->

### 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': 8096, 'do_lower_case': False}) with Transformer model: Qwen2Model 
  (1): Pooling({'word_embedding_dimension': 1536, '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): Dense({'in_features': 1536, 'out_features': 1024, 'bias': True, 'activation_function': 'torch.nn.modules.linear.Identity'})
)
```

## 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("sentence_transformers_model_id")
# Run inference
sentences = [
    'The Tchaikovsky Symphony Orchestra is a Russian classical music orchestra established in 1930. It was founded as the Moscow Radio Symphony Orchestra, and served as the official symphony for the Soviet All-Union Radio network. Following the dissolution of the, Soviet Union in 1991, the orchestra was renamed in 1993 by the Russian Ministry of Culture in recognition of the central role the music of Tchaikovsky plays in its repertoire. The current music director is Vladimir Fedoseyev, who has been in that position since 1974.',
    'Instruct: Given a web search query, retrieve relevant passages that answer the query.\nQuery: Tchaikovsky Symphony Orchestra',
    'Instruct: Given a web search query, retrieve relevant passages that answer the query.\nQuery: Sierra del Lacandón',
]
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]
```

<!--
### Direct Usage (Transformers)

<details><summary>Click to see the direct usage in Transformers</summary>

</details>
-->

<!--
### Downstream Usage (Sentence Transformers)

You can finetune this model on your own dataset.

<details><summary>Click to expand</summary>

</details>
-->

<!--
### Out-of-Scope Use

*List how the model may foreseeably be misused and address what users ought not to do with the model.*
-->

## Evaluation

### Metrics

#### Information Retrieval

* Evaluated with [<code>InformationRetrievalEvaluator</code>](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.InformationRetrievalEvaluator)

| Metric              | Value     |
|:--------------------|:----------|
| cosine_accuracy@1   | 0.9387    |
| cosine_accuracy@3   | 0.9646    |
| cosine_accuracy@5   | 0.9734    |
| cosine_accuracy@10  | 0.9818    |
| cosine_precision@1  | 0.9387    |
| cosine_precision@3  | 0.3215    |
| cosine_precision@5  | 0.1947    |
| cosine_precision@10 | 0.0982    |
| cosine_recall@1     | 0.9387    |
| cosine_recall@3     | 0.9646    |
| cosine_recall@5     | 0.9734    |
| cosine_recall@10    | 0.9818    |
| cosine_ndcg@10      | 0.9604    |
| cosine_mrr@10       | 0.9536    |
| **cosine_map@100**  | **0.954** |

#### Information Retrieval

* Evaluated with [<code>InformationRetrievalEvaluator</code>](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.InformationRetrievalEvaluator)

| Metric              | Value      |
|:--------------------|:-----------|
| cosine_accuracy@1   | 0.938      |
| cosine_accuracy@3   | 0.9643     |
| cosine_accuracy@5   | 0.9734     |
| cosine_accuracy@10  | 0.9801     |
| cosine_precision@1  | 0.938      |
| cosine_precision@3  | 0.3214     |
| cosine_precision@5  | 0.1947     |
| cosine_precision@10 | 0.098      |
| cosine_recall@1     | 0.938      |
| cosine_recall@3     | 0.9643     |
| cosine_recall@5     | 0.9734     |
| cosine_recall@10    | 0.9801     |
| cosine_ndcg@10      | 0.9595     |
| cosine_mrr@10       | 0.9529     |
| **cosine_map@100**  | **0.9534** |

#### Information Retrieval

* Evaluated with [<code>InformationRetrievalEvaluator</code>](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.InformationRetrievalEvaluator)

| Metric              | Value      |
|:--------------------|:-----------|
| cosine_accuracy@1   | 0.9387     |
| cosine_accuracy@3   | 0.9623     |
| cosine_accuracy@5   | 0.9704     |
| cosine_accuracy@10  | 0.9788     |
| cosine_precision@1  | 0.9387     |
| cosine_precision@3  | 0.3208     |
| cosine_precision@5  | 0.1941     |
| cosine_precision@10 | 0.0979     |
| cosine_recall@1     | 0.9387     |
| cosine_recall@3     | 0.9623     |
| cosine_recall@5     | 0.9704     |
| cosine_recall@10    | 0.9788     |
| cosine_ndcg@10      | 0.9589     |
| cosine_mrr@10       | 0.9525     |
| **cosine_map@100**  | **0.9531** |

<!--
## Bias, Risks and Limitations

*What are the known or foreseeable issues stemming from this model? You could also flag here known failure cases or weaknesses of the model.*
-->

<!--
### Recommendations

*What are recommendations with respect to the foreseeable issues? For example, filtering explicit content.*
-->

## Training Details

### Training Hyperparameters
#### Non-Default Hyperparameters

- `eval_strategy`: steps
- `per_device_eval_batch_size`: 4
- `gradient_accumulation_steps`: 4
- `learning_rate`: 2e-05
- `max_steps`: 1500
- `lr_scheduler_type`: cosine
- `warmup_ratio`: 0.1
- `warmup_steps`: 5
- `bf16`: True
- `tf32`: True
- `optim`: adamw_torch_fused
- `gradient_checkpointing`: True
- `gradient_checkpointing_kwargs`: {'use_reentrant': False}
- `batch_sampler`: no_duplicates

#### All Hyperparameters
<details><summary>Click to expand</summary>

- `overwrite_output_dir`: False
- `do_predict`: False
- `eval_strategy`: steps
- `prediction_loss_only`: True
- `per_device_train_batch_size`: 8
- `per_device_eval_batch_size`: 4
- `per_gpu_train_batch_size`: None
- `per_gpu_eval_batch_size`: None
- `gradient_accumulation_steps`: 4
- `eval_accumulation_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`: 3.0
- `max_steps`: 1500
- `lr_scheduler_type`: cosine
- `lr_scheduler_kwargs`: {}
- `warmup_ratio`: 0.1
- `warmup_steps`: 5
- `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`: 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`: False
- `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`: True
- `gradient_checkpointing_kwargs`: {'use_reentrant': False}
- `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
- `batch_sampler`: no_duplicates
- `multi_dataset_batch_sampler`: proportional

</details>

### Training Logs
| Epoch  | Step | Training Loss | loss   | cosine_map@100 |
|:------:|:----:|:-------------:|:------:|:--------------:|
| 0.0185 | 100  | 0.4835        | 0.0751 | 0.9138         |
| 0.0369 | 200  | 0.0646        | 0.0590 | 0.9384         |
| 0.0554 | 300  | 0.0594        | 0.0519 | 0.9462         |
| 0.0739 | 400  | 0.0471        | 0.0483 | 0.9514         |
| 0.0924 | 500  | 0.0524        | 0.0455 | 0.9531         |


### Framework Versions
- Python: 3.10.12
- Sentence Transformers: 3.0.1
- Transformers: 4.41.2
- PyTorch: 2.2.0+cu121
- Accelerate: 0.33.0
- Datasets: 2.20.0
- Tokenizers: 0.19.1

## Citation

### BibTeX

#### Sentence Transformers
```bibtex
@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
```bibtex
@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
```bibtex
@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}
}
```

<!--
## Glossary

*Clearly define terms in order to be accessible across audiences.*
-->

<!--
## Model Card Authors

*Lists the people who create the model card, providing recognition and accountability for the detailed work that goes into its construction.*
-->

<!--
## Model Card Contact

*Provides a way for people who have updates to the Model Card, suggestions, or questions, to contact the Model Card authors.*
-->