sentence-transformers safetensors bert sentence-similarity feature-extraction generated_from_trainer dataset_size:15002 loss:MultipleNegativesRankingLoss arxiv:1908.10084 arxiv:1705.00652 base_model:BAAI/bge-large-en-v1.5 base_model:finetune:BAAI/bge-large-en-v1.5 model-index autotrain_compatible text-embeddings-inference endpoints_compatible region:us
---
base_model: BAAI/bge-large-en-v1.5
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:15002
- loss:MultipleNegativesRankingLoss
widget:
- source_sentence: what kind of oil and how much do i need for my toyota tacoma truck
    and how do i do it
  sentences:
  - Requests to change the system or application's language settings. Users may ask
    to switch to a specific language, such as English, or adjust the language preferences
    to enhance usability.
  - Requests for step-by-step instructions or guidance on how to change the oil in
    a car. Users seek detailed procedures, tools needed, and tips for performing this
    maintenance task.
  - Requests to make a reservation at a specific restaurant for a specified number
    of people, time, and under a provided name. Users expect confirmation of the booking
    details.
- source_sentence: please double check my reservations for six at mani
  sentences:
  - Requests to verify or confirm existing reservations, typically for dining or events.
    Users provide details about the reservation and ask for confirmation that it is
    correctly recorded.
  - Requests for details about an insurance policy, including coverage, benefits,
    and exclusions. Users may inquire about specific aspects like health benefits
    or policy terms.
  - Requests to create, manage, or customize timers for various tasks or activities.
    Users can define the duration, purpose, or type of the timer and receive notifications
    or alerts when the timer reaches its set time.
- source_sentence: what are some good ethiopian restaurants in queens
  sentences:
  - Requests for the meaning or definition of words. Users may inquire about the definitions
    of uncommon, complex, or unfamiliar terms, aiming to gain a clear understanding
    or contextual usage of the word in question.
  - Requests to assist with paying bills, such as utilities, credit cards, or other
    services. Users may specify the bill type, amount, and source account for the
    payment.
  - Requests for recommendations or suggestions for dining options. Users may ask
    for specific cuisine types, locations, or general ideas on where to eat.
- source_sentence: are there any expected delays for flight dl123
  sentences:
  - Requests for travel time or distance to a specific location. Users typically seek
    estimates based on current traffic, routes, or modes of transportation to determine
    the time needed to reach their destination.
  - Requests for information about flight details, such as boarding times, delays,
    or schedules. Users typically inquire to ensure they are updated about their flight's
    status.
  - Requests for advice or strategies to improve credit scores. Users may seek a detailed
    plan, tips, or insights into financial habits that can lead to a better credit
    rating.
- source_sentence: how do i ask about the weather in chinese
  sentences:
  - Requests related to translating words, phrases, or sentences from one language
    to another. The user may specify the source and target languages, and the goal
    is to provide an accurate and context-appropriate translation.
  - Requests for information about a vehicle's miles per gallon (MPG) rating, either
    in specific conditions like city driving or as an overall performance metric.
    Users may seek guidance on fuel efficiency for their car.
  - Requests for information about a vehicle's miles per gallon (MPG) rating, either
    in specific conditions like city driving or as an overall performance metric.
    Users may seek guidance on fuel efficiency for their car.
model-index:
- name: SentenceTransformer based on BAAI/bge-large-en-v1.5
  results:
  - task:
      type: information-retrieval
      name: Information Retrieval
    dataset:
      name: Unknown
      type: unknown
    metrics:
    - type: cosine_accuracy@1
      value: 0.9706666666666667
      name: Cosine Accuracy@1
    - type: cosine_accuracy@3
      value: 0.9886666666666667
      name: Cosine Accuracy@3
    - type: cosine_accuracy@5
      value: 0.992
      name: Cosine Accuracy@5
    - type: cosine_accuracy@10
      value: 0.9956666666666667
      name: Cosine Accuracy@10
    - type: cosine_precision@1
      value: 0.9706666666666667
      name: Cosine Precision@1
    - type: cosine_precision@3
      value: 0.3295555555555556
      name: Cosine Precision@3
    - type: cosine_precision@5
      value: 0.19840000000000002
      name: Cosine Precision@5
    - type: cosine_precision@10
      value: 0.09956666666666668
      name: Cosine Precision@10
    - type: cosine_recall@1
      value: 0.9706666666666667
      name: Cosine Recall@1
    - type: cosine_recall@3
      value: 0.9886666666666667
      name: Cosine Recall@3
    - type: cosine_recall@5
      value: 0.992
      name: Cosine Recall@5
    - type: cosine_recall@10
      value: 0.9956666666666667
      name: Cosine Recall@10
    - type: cosine_ndcg@10
      value: 0.9841961906084298
      name: Cosine Ndcg@10
    - type: cosine_mrr@10
      value: 0.9804173280423282
      name: Cosine Mrr@10
    - type: cosine_map@100
      value: 0.9806052445247627
      name: Cosine Map@100
---

# SentenceTransformer based on BAAI/bge-large-en-v1.5

This is a [sentence-transformers](https://www.SBERT.net) model finetuned from [BAAI/bge-large-en-v1.5](https://huggingface.co/BAAI/bge-large-en-v1.5). 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-large-en-v1.5](https://huggingface.co/BAAI/bge-large-en-v1.5) <!-- at revision d4aa6901d3a41ba39fb536a557fa166f842b0e09 -->
- **Maximum Sequence Length:** 512 tokens
- **Output Dimensionality:** 1024 dimensions
- **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': 512, 'do_lower_case': True}) with Transformer model: BertModel 
  (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("chinchilla04/bge-finetuned-train")
# Run inference
sentences = [
    'how do i ask about the weather in chinese',
    'Requests related to translating words, phrases, or sentences from one language to another. The user may specify the source and target languages, and the goal is to provide an accurate and context-appropriate translation.',
    "Requests for information about a vehicle's miles per gallon (MPG) rating, either in specific conditions like city driving or as an overall performance metric. Users may seek guidance on fuel efficiency for their car.",
]
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.9707     |
| cosine_accuracy@3   | 0.9887     |
| cosine_accuracy@5   | 0.992      |
| cosine_accuracy@10  | 0.9957     |
| cosine_precision@1  | 0.9707     |
| cosine_precision@3  | 0.3296     |
| cosine_precision@5  | 0.1984     |
| cosine_precision@10 | 0.0996     |
| cosine_recall@1     | 0.9707     |
| cosine_recall@3     | 0.9887     |
| cosine_recall@5     | 0.992      |
| cosine_recall@10    | 0.9957     |
| **cosine_ndcg@10**  | **0.9842** |
| cosine_mrr@10       | 0.9804     |
| cosine_map@100      | 0.9806     |

<!--
## 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 Dataset

#### Unnamed Dataset


* Size: 15,002 training samples
* Columns: <code>anchor</code>, <code>positive</code>, and <code>negative</code>
* Approximate statistics based on the first 1000 samples:
  |         | anchor                                                                            | positive                                                                          | negative                                                                           |
  |:--------|:----------------------------------------------------------------------------------|:----------------------------------------------------------------------------------|:-----------------------------------------------------------------------------------|
  | type    | string                                                                            | string                                                                            | string                                                                             |
  | details | <ul><li>min: 4 tokens</li><li>mean: 10.66 tokens</li><li>max: 28 tokens</li></ul> | <ul><li>min: 25 tokens</li><li>mean: 42.6 tokens</li><li>max: 58 tokens</li></ul> | <ul><li>min: 29 tokens</li><li>mean: 41.95 tokens</li><li>max: 58 tokens</li></ul> |
* Samples:
  | anchor                                                                            | positive                                                                                                                                                                                                                                  | negative                                                                                                                                                                                                                                                                                             |
  |:----------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
  | <code>what expression would i use to say i love you if i were an italian</code>   | <code>Requests related to translating words, phrases, or sentences from one language to another. The user may specify the source and target languages, and the goal is to provide an accurate and context-appropriate translation.</code> | <code>Requests involving financial operations, such as transferring money between bank accounts, credit cards, or other financial instruments. Users typically specify the amount, the source account, and the target account, ensuring that the transfer is executed correctly and securely.</code> |
  | <code>can you tell me how to say 'i do not speak much spanish', in spanish</code> | <code>Requests related to translating words, phrases, or sentences from one language to another. The user may specify the source and target languages, and the goal is to provide an accurate and context-appropriate translation.</code> | <code>Requests involving financial operations, such as transferring money between bank accounts, credit cards, or other financial instruments. Users typically specify the amount, the source account, and the target account, ensuring that the transfer is executed correctly and securely.</code> |
  | <code>what is the equivalent of, 'life is good' in french</code>                  | <code>Requests related to translating words, phrases, or sentences from one language to another. The user may specify the source and target languages, and the goal is to provide an accurate and context-appropriate translation.</code> | <code>Requests involving financial operations, such as transferring money between bank accounts, credit cards, or other financial instruments. Users typically specify the amount, the source account, and the target account, ensuring that the transfer is executed correctly and securely.</code> |
* Loss: [<code>MultipleNegativesRankingLoss</code>](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#multiplenegativesrankingloss) with these parameters:
  ```json
  {
      "scale": 20.0,
      "similarity_fct": "cos_sim"
  }
  ```

### Evaluation Dataset

#### Unnamed Dataset


* Size: 3,000 evaluation samples
* Columns: <code>anchor</code> and <code>positive</code>
* Approximate statistics based on the first 1000 samples:
  |         | anchor                                                                            | positive                                                                           |
  |:--------|:----------------------------------------------------------------------------------|:-----------------------------------------------------------------------------------|
  | type    | string                                                                            | string                                                                             |
  | details | <ul><li>min: 3 tokens</li><li>mean: 11.06 tokens</li><li>max: 29 tokens</li></ul> | <ul><li>min: 26 tokens</li><li>mean: 36.16 tokens</li><li>max: 58 tokens</li></ul> |
* Samples:
  | anchor                                                | positive                                                                                                                                                                                                                                  |
  |:------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
  | <code>in spanish, meet me tomorrow is said how</code> | <code>Requests related to translating words, phrases, or sentences from one language to another. The user may specify the source and target languages, and the goal is to provide an accurate and context-appropriate translation.</code> |
  | <code>in french, how do i say, see you later</code>   | <code>Requests related to translating words, phrases, or sentences from one language to another. The user may specify the source and target languages, and the goal is to provide an accurate and context-appropriate translation.</code> |
  | <code>how do you say hello in japanese</code>         | <code>Requests related to translating words, phrases, or sentences from one language to another. The user may specify the source and target languages, and the goal is to provide an accurate and context-appropriate translation.</code> |
* Loss: [<code>MultipleNegativesRankingLoss</code>](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#multiplenegativesrankingloss) with these parameters:
  ```json
  {
      "scale": 20.0,
      "similarity_fct": "cos_sim"
  }
  ```

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

- `eval_strategy`: steps
- `per_device_train_batch_size`: 32
- `learning_rate`: 1e-05
- `num_train_epochs`: 4
- `lr_scheduler_type`: cosine
- `warmup_ratio`: 0.2
- `load_best_model_at_end`: True
- `optim`: adamw_torch_fused

#### 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`: 32
- `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.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.2
- `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`: 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
- `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
- `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
- `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

</details>

### Training Logs
| Epoch      | Step     | Training Loss | Validation Loss | cosine_ndcg@10 |
|:----------:|:--------:|:-------------:|:---------------:|:--------------:|
| None       | 0        | -             | 0.2730          | 0.9055         |
| 0.3198     | 150      | -             | 0.0698          | 0.9633         |
| 0.6397     | 300      | -             | 0.0642          | 0.9683         |
| 0.9595     | 450      | -             | 0.0603          | 0.9763         |
| 1.0661     | 500      | 1.0338        | -               | -              |
| 1.2793     | 600      | -             | 0.0612          | 0.9762         |
| 1.5991     | 750      | -             | 0.0602          | 0.9802         |
| 1.9190     | 900      | -             | 0.0571          | 0.9820         |
| 2.1322     | 1000     | 0.787         | -               | -              |
| 2.2388     | 1050     | -             | 0.0585          | 0.9819         |
| **2.5586** | **1200** | **-**         | **0.0565**      | **0.9842**     |
| 2.8785     | 1350     | -             | 0.0578          | 0.9837         |
| 3.1983     | 1500     | 0.6768        | 0.0570          | 0.9844         |
| 3.5181     | 1650     | -             | 0.0587          | 0.9837         |
| 3.8380     | 1800     | -             | 0.0584          | 0.9837         |
| None       | 0        | -             | 0.0565          | 0.9842         |

* The bold row denotes the saved checkpoint.

### Framework Versions
- Python: 3.10.14
- Sentence Transformers: 3.3.1
- Transformers: 4.46.3
- PyTorch: 2.4.0
- Accelerate: 1.1.1
- Datasets: 3.1.0
- Tokenizers: 0.20.3

## 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",
}
```

#### 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.*
-->