sentence-transformers safetensors roberta sentence-similarity feature-extraction generated_from_trainer dataset_size:10248 loss:MatryoshkaLoss loss:MultipleNegativesRankingLoss en arxiv:1908.10084 arxiv:2205.13147 arxiv:1705.00652 base_model:bkai-foundation-models/vietnamese-bi-encoder base_model:finetune:bkai-foundation-models/vietnamese-bi-encoder license:apache-2.0 model-index autotrain_compatible endpoints_compatible region:us
---
base_model: bkai-foundation-models/vietnamese-bi-encoder
datasets: []
language:
- en
library_name: sentence-transformers
license: apache-2.0
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:10248
- loss:MatryoshkaLoss
- loss:MultipleNegativesRankingLoss
widget:
- source_sentence: Tại khoản 1, Điều 5. Nghị định số 03/2016/NĐ-CP ngày 05/01/2016
    của Chính phủ quy định Hồ sơ thành lập đơn vị tự vệ trong doanh nghiệp như sau:a)
    Văn bản đề nghị thành lập đơn vị tự vệ của người quản lý doanh nghiệp;b) Kế hoạch
    xây dựng lực lượng tự vệ của doanh nghiệp;c) Danh sách cán bộ, công chức, viên
    chức, người lao động tham gia tổ chức tự vệ của doanh nghiệp;d) Văn bản của cơ
    quan chức năng thẩm định việc thành lập tự vệ của doanh nghiệp.
  sentences:
  - "Căn cứ pháp lý thủ tục thay đổi nội dung đăng ký hoạt động của Văn phòng công\
    \ chứng \nnhận sáp nhập?"
  - Doanh nghiệp muốn thực hiện phân loại trang thiết bị y tế thì phải làm như thế
    nào?
  - Hồ sơ thành lập đơn vị tự vệ trong doanh nghiệp được quy định như thế nào?
- source_sentence: Căn cứ Khoản 2 Điều 11 “Điều kiện về an ninh, trật tự đối với kinh
    doanh dịch vụ bảo vệ” của Nghị định số 96/2016/NĐ-CP ngày 01/7/2016 của Chính
    phủ quy định điều kiện về an ninh, trật tự đối với một số ngành, nghề đầu tư kinh
    doanh có điều kiện “Người chịu trách nhiệm về an ninh, trật tự của cơ sở kinh
    doanh dịch vụ bảo vệ ….. không phải là người chịu trách nhiệm về an ninh, trật
    tự của cơ sở kinh doanh dịch vụ bảo vệ mà trong 24 tháng liền kề trước đó đã bị
    thu hồi không có thời hạn Giấy chứng nhận đủ điều kiện về an ninh, trật tự” .Như
    vậy, anh có thể thành lập công ty mới kinh doanh dịch vụ bảo vệ theo quy định
    của pháp luật.
  sentences:
  - Trong thời hạn bao nhiêu ngày làm việc kể từ ngày nhận được thông báo hoàn tất
    việc mua bán, chuyển nhượng Phần vốn góp của tổ chức tài chính vi mô, Ngân hàng
    Nhà nước ra quyết định sửa đổi, bổ sung Giấy phép của tổ chức tài chính vi mô?
  - Công ty kinh doanh nhân viên bảo vệ của tôi đã từng bị thu hồi không thời hạn
    Giấy chứng nhận đủ điều kiện về an ninh trật tự cách đây 2 năm. Hiện giờ tôi muốn
    thành lập công ty mới thì có được không?
  - 'Thủ tục: Điều chỉnh tên dự án đầu tư, tên và địa chỉ nhà đầu tư trong Giấy chứng
    nhận đăng ký đầu tư gồm các thành phần hồ sơ nào?'
- source_sentence: Quy trình tạo và gửi hồ sơ thủ tục hành chính gồm các bước sau:(i)
    Truy cập và đăng nhập vào trang dịch vụ công bằng tài khoản được cấp(ii) Lựa chọn
    loại TTHC đề nghị khen thưởng(iii) Tải các thành phần hồ sơ của TTHC lên dịch
    vụ công(iv) Xác nhận việc tạo mới hồ sơ và chuyển cho lãnh đạo phê duyệt(v) Lãnh
    đạo đăng nhập bằng tài khoản được cấp và phê duyệt gửi hồ sơ
  sentences:
  - Quy định đối với người nước ngoài và hoạt động kinh tế ở khu vực bảo vệ và vành
    đai an toàn?
  - Hồ sơ đề nghị cấp Giấy chứng nhận doanh nghiệp công nghệ cao gồm những gì và được
    nộp ở đâu?
  - Quy trình tạo và gửi một hồ sơ TTHC trên dịch vụ công gồm những bước nào?
- source_sentence: Mẫu số 02 Thông tư số 02/2013/TT-BNV.
  sentences:
  - Thời gian xử lý các thủ tục chứng thư số là bao lâu?
  - Tố cáo cán bộ, công chức, viên chức trong cơ quan mà hiện nay cơ quan đó đã giải
    thể thì ai là người giải quyết?
  - Điều lệ mẫu của quỹ xã hội, quỹ từ thiện được quy định ở văn bản nào?
- source_sentence: '<p style="margin-top:6.0pt;text-align:justify;text-indent:36.0pt;line-height:16.0pt;background:white;"><span
    style="color:black;">Căn cứ Điều 108, Luật Thú y số 79/2015/QH 13 ngày 19/6/2015
    của Quốc hội và Điều 21 Nghị định số 35/2016/NĐ-CP ngày 15/5/2016 của Chính phủ
    quy định về hành nghề thú y như sau;</span></p>


    <p style="margin-top:6.0pt;text-align:justify;text-indent:36.0pt;line-height:16.0pt;background:white;"><strong><span
    style="color:black;">1. Điều kiện hành nghề thú y:</span></strong></p>


    <p style="margin-top:6.0pt;text-align:justify;text-indent:36.0pt;line-height:16.0pt;background:white;"><span
    style="color:black;">- Có đạo đức nghề nghiệp;</span></p>


    <p style="margin-top:6.0pt;text-align:justify;text-indent:36.0pt;line-height:16.0pt;background:white;"><span
    style="color:black;">- Có đủ sức khỏe hành nghề.</span></p>


    <p style="margin-top:6.0pt;text-align:justify;text-indent:36.0pt;line-height:16.0pt;background:white;"><span
    style="letter-spacing:-.2pt;"><span style="color:black;">- Có Chứng chỉ hành nghề
    thú y phù hợp với từng loại hình hành nghề thú y.</span></span></p>


    <p style="margin-top:6.0pt;text-align:justify;text-indent:36.0pt;line-height:16.0pt;background:white;"><strong><span
    style="color:black;">2. Điều kiện để cấp chứng chỉ hành nghề thú y:</span></strong></p>


    <p style="margin-top:6.0pt;text-align:justify;text-indent:36.0pt;line-height:16.0pt;background:white;"><span
    style="color:black;">a.&nbsp;</span><span style="color:black;">Người hành nghề
    chẩn đoán, chữa bệnh, phẫu thuật động vật, tư vấn các hoạt động liên quan đến
    lĩnh vực thú y tối thiểu phải có bằng trung cấp chuyên ngành thú y, chăn nuôi
    thú y hoặc trung cấp nuôi&nbsp;</span><span style="color:black;">tr</span><span
    style="color:black;">ồng thủy sản, bệnh&nbsp;học thủy sản đối với hành nghề thú
    y thủy sản. Người hành nghề tiêm phòng cho động vật phải có chứng chỉ tốt nghiệp
    lớp đào tạo về kỹ thuật do cơ quan quản lý nhà nước có thẩm quyền cấp tỉnh cấp.</span></p>


    <p style="margin-top:6.0pt;text-align:justify;text-indent:36.0pt;line-height:16.0pt;background:white;"><span
    style="color:black;">b.&nbsp;Người phụ&nbsp;trách kỹ thuật của cơ sở phẫu thuật
    động vật, khám bệnh, chẩn đoán bệnh, xét nghiệm bệnh động vật phải có bằng đại
    học&nbsp;trở lên chuyên ngành thú y, chăn nuôi thú y hoặc nuôi&nbsp;trồng thủy
    sản, bệnh học thủy sản đối với hành nghề thú y thủy sản.</span></p>


    <p style="margin-top:6.0pt;text-align:justify;text-indent:36.0pt;line-height:16.0pt;background:white;"><span
    style="color:black;">c.&nbsp;Người buôn bán thuốc thú y phải có bằng trung cấp
    trở&nbsp;lên chuyên ngành thú y, chăn nuôi thú y hoặc trung cấp nuôi trồng thủy
    sản, bệnh học thủy sản đối với hành nghề thú y thủy sản.</span></p>'
  sentences:
  - Căn cứ pháp lý thủ tục cấp Giấy chứng nhận tổ chức đủ điều kiện hoạt động
    giám định sở hữu công nghiệp
  - 'Điều kiện để hành nghề và cấp chứng chỉ hành nghề thú y đối với các loại hình:
    Tiêm phòng, chữa bệnh, phẫu thuật động vật; tư vấn các hoạt động liên quan đến
    lĩnh vực thú y; khám bệnh, chẩn đoán bệnh, xét nghiệm bệnh động vật; buôn bán
    thuốc thú y?'
  - Trường hợp đã có chứng thư số ký duyệt nghiệp vụ dịch vụ công liên quan đến chứng
    thư số, nếu người sử dụng muốn đăng ký để ký duyệtnghiệp vụ dịch vụ công khác
    như Mã ngân hàng, Thanh toán liên ngân hàng (TTLNH), Thi đua – Khen thưởng, Thanh
    toán thì cần phải làm thủ tục gì?
model-index:
- name: vietnamese-bi-encoder Financial Matryoshka
  results:
  - task:
      type: information-retrieval
      name: Information Retrieval
    dataset:
      name: dim 768
      type: dim_768
    metrics:
    - type: cosine_accuracy@1
      value: 0.4881474978050922
      name: Cosine Accuracy@1
    - type: cosine_accuracy@3
      value: 0.6453028972783144
      name: Cosine Accuracy@3
    - type: cosine_accuracy@5
      value: 0.7093942054433714
      name: Cosine Accuracy@5
    - type: cosine_accuracy@10
      value: 0.7682177348551361
      name: Cosine Accuracy@10
    - type: cosine_precision@1
      value: 0.4881474978050922
      name: Cosine Precision@1
    - type: cosine_precision@3
      value: 0.21510096575943807
      name: Cosine Precision@3
    - type: cosine_precision@5
      value: 0.14187884108867427
      name: Cosine Precision@5
    - type: cosine_precision@10
      value: 0.07682177348551361
      name: Cosine Precision@10
    - type: cosine_recall@1
      value: 0.4881474978050922
      name: Cosine Recall@1
    - type: cosine_recall@3
      value: 0.6453028972783144
      name: Cosine Recall@3
    - type: cosine_recall@5
      value: 0.7093942054433714
      name: Cosine Recall@5
    - type: cosine_recall@10
      value: 0.7682177348551361
      name: Cosine Recall@10
    - type: cosine_ndcg@10
      value: 0.6246868752133345
      name: Cosine Ndcg@10
    - type: cosine_mrr@10
      value: 0.5790145909109916
      name: Cosine Mrr@10
    - type: cosine_map@100
      value: 0.5837247571988151
      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.485513608428446
      name: Cosine Accuracy@1
    - type: cosine_accuracy@3
      value: 0.6435469710272168
      name: Cosine Accuracy@3
    - type: cosine_accuracy@5
      value: 0.7050043898156277
      name: Cosine Accuracy@5
    - type: cosine_accuracy@10
      value: 0.7603160667251976
      name: Cosine Accuracy@10
    - type: cosine_precision@1
      value: 0.485513608428446
      name: Cosine Precision@1
    - type: cosine_precision@3
      value: 0.21451565700907227
      name: Cosine Precision@3
    - type: cosine_precision@5
      value: 0.14100087796312555
      name: Cosine Precision@5
    - type: cosine_precision@10
      value: 0.07603160667251975
      name: Cosine Precision@10
    - type: cosine_recall@1
      value: 0.485513608428446
      name: Cosine Recall@1
    - type: cosine_recall@3
      value: 0.6435469710272168
      name: Cosine Recall@3
    - type: cosine_recall@5
      value: 0.7050043898156277
      name: Cosine Recall@5
    - type: cosine_recall@10
      value: 0.7603160667251976
      name: Cosine Recall@10
    - type: cosine_ndcg@10
      value: 0.6200942646328695
      name: Cosine Ndcg@10
    - type: cosine_mrr@10
      value: 0.575313558259125
      name: Cosine Mrr@10
    - type: cosine_map@100
      value: 0.5804505395524789
      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.48375768217734855
      name: Cosine Accuracy@1
    - type: cosine_accuracy@3
      value: 0.6321334503950834
      name: Cosine Accuracy@3
    - type: cosine_accuracy@5
      value: 0.6883230904302019
      name: Cosine Accuracy@5
    - type: cosine_accuracy@10
      value: 0.7532923617208077
      name: Cosine Accuracy@10
    - type: cosine_precision@1
      value: 0.48375768217734855
      name: Cosine Precision@1
    - type: cosine_precision@3
      value: 0.21071115013169445
      name: Cosine Precision@3
    - type: cosine_precision@5
      value: 0.13766461808604036
      name: Cosine Precision@5
    - type: cosine_precision@10
      value: 0.07532923617208077
      name: Cosine Precision@10
    - type: cosine_recall@1
      value: 0.48375768217734855
      name: Cosine Recall@1
    - type: cosine_recall@3
      value: 0.6321334503950834
      name: Cosine Recall@3
    - type: cosine_recall@5
      value: 0.6883230904302019
      name: Cosine Recall@5
    - type: cosine_recall@10
      value: 0.7532923617208077
      name: Cosine Recall@10
    - type: cosine_ndcg@10
      value: 0.6151049165729878
      name: Cosine Ndcg@10
    - type: cosine_mrr@10
      value: 0.5712714439009434
      name: Cosine Mrr@10
    - type: cosine_map@100
      value: 0.5765252937739955
      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.46707638279192276
      name: Cosine Accuracy@1
    - type: cosine_accuracy@3
      value: 0.6136962247585601
      name: Cosine Accuracy@3
    - type: cosine_accuracy@5
      value: 0.6602282704126426
      name: Cosine Accuracy@5
    - type: cosine_accuracy@10
      value: 0.7243195785776997
      name: Cosine Accuracy@10
    - type: cosine_precision@1
      value: 0.46707638279192276
      name: Cosine Precision@1
    - type: cosine_precision@3
      value: 0.20456540825285338
      name: Cosine Precision@3
    - type: cosine_precision@5
      value: 0.13204565408252852
      name: Cosine Precision@5
    - type: cosine_precision@10
      value: 0.07243195785776997
      name: Cosine Precision@10
    - type: cosine_recall@1
      value: 0.46707638279192276
      name: Cosine Recall@1
    - type: cosine_recall@3
      value: 0.6136962247585601
      name: Cosine Recall@3
    - type: cosine_recall@5
      value: 0.6602282704126426
      name: Cosine Recall@5
    - type: cosine_recall@10
      value: 0.7243195785776997
      name: Cosine Recall@10
    - type: cosine_ndcg@10
      value: 0.5926057080690043
      name: Cosine Ndcg@10
    - type: cosine_mrr@10
      value: 0.5507514946277018
      name: Cosine Mrr@10
    - type: cosine_map@100
      value: 0.5570293009289279
      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.4170324846356453
      name: Cosine Accuracy@1
    - type: cosine_accuracy@3
      value: 0.5618964003511853
      name: Cosine Accuracy@3
    - type: cosine_accuracy@5
      value: 0.6215978928884986
      name: Cosine Accuracy@5
    - type: cosine_accuracy@10
      value: 0.6777875329236172
      name: Cosine Accuracy@10
    - type: cosine_precision@1
      value: 0.4170324846356453
      name: Cosine Precision@1
    - type: cosine_precision@3
      value: 0.18729880011706174
      name: Cosine Precision@3
    - type: cosine_precision@5
      value: 0.12431957857769974
      name: Cosine Precision@5
    - type: cosine_precision@10
      value: 0.06777875329236172
      name: Cosine Precision@10
    - type: cosine_recall@1
      value: 0.4170324846356453
      name: Cosine Recall@1
    - type: cosine_recall@3
      value: 0.5618964003511853
      name: Cosine Recall@3
    - type: cosine_recall@5
      value: 0.6215978928884986
      name: Cosine Recall@5
    - type: cosine_recall@10
      value: 0.6777875329236172
      name: Cosine Recall@10
    - type: cosine_ndcg@10
      value: 0.5449373922257321
      name: Cosine Ndcg@10
    - type: cosine_mrr@10
      value: 0.5027000850091284
      name: Cosine Mrr@10
    - type: cosine_map@100
      value: 0.5096979047896044
      name: Cosine Map@100
---

# vietnamese-bi-encoder Financial Matryoshka

This is a [sentence-transformers](https://www.SBERT.net) model finetuned from [bkai-foundation-models/vietnamese-bi-encoder](https://huggingface.co/bkai-foundation-models/vietnamese-bi-encoder). 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:** [bkai-foundation-models/vietnamese-bi-encoder](https://huggingface.co/bkai-foundation-models/vietnamese-bi-encoder) <!-- at revision 84f9d9ada0d1a3c37557398b9ae9fcedcdf40be0 -->
- **Maximum Sequence Length:** 256 tokens
- **Output Dimensionality:** 768 tokens
- **Similarity Function:** Cosine Similarity
<!-- - **Training Dataset:** Unknown -->
- **Language:** en
- **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': 256, 'do_lower_case': False}) with Transformer model: RobertaModel 
  (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})
)
```

## 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("anhtuansh/vietnamese-bi-encoder-financial-matryoshka")
# Run inference
sentences = [
    '<p style="margin-top:6.0pt;text-align:justify;text-indent:36.0pt;line-height:16.0pt;background:white;"><span style="color:black;">Căn cứ Điều 108, Luật Thú y số 79/2015/QH 13 ngày 19/6/2015 của Quốc hội và Điều 21 Nghị định số 35/2016/NĐ-CP ngày 15/5/2016 của Chính phủ quy định về hành nghề thú y như sau;</span></p>\n\n<p style="margin-top:6.0pt;text-align:justify;text-indent:36.0pt;line-height:16.0pt;background:white;"><strong><span style="color:black;">1. Điều kiện hành nghề thú y:</span></strong></p>\n\n<p style="margin-top:6.0pt;text-align:justify;text-indent:36.0pt;line-height:16.0pt;background:white;"><span style="color:black;">- Có đạo đức nghề nghiệp;</span></p>\n\n<p style="margin-top:6.0pt;text-align:justify;text-indent:36.0pt;line-height:16.0pt;background:white;"><span style="color:black;">- Có đủ sức khỏe hành nghề.</span></p>\n\n<p style="margin-top:6.0pt;text-align:justify;text-indent:36.0pt;line-height:16.0pt;background:white;"><span style="letter-spacing:-.2pt;"><span style="color:black;">- Có Chứng chỉ hành nghề thú y phù hợp với từng loại hình hành nghề thú y.</span></span></p>\n\n<p style="margin-top:6.0pt;text-align:justify;text-indent:36.0pt;line-height:16.0pt;background:white;"><strong><span style="color:black;">2. Điều kiện để cấp chứng chỉ hành nghề thú y:</span></strong></p>\n\n<p style="margin-top:6.0pt;text-align:justify;text-indent:36.0pt;line-height:16.0pt;background:white;"><span style="color:black;">a.&nbsp;</span><span style="color:black;">Người hành nghề chẩn đoán, chữa bệnh, phẫu thuật động vật, tư vấn các hoạt động liên quan đến lĩnh vực thú y tối thiểu phải có bằng trung cấp chuyên ngành thú y, chăn nuôi thú y hoặc trung cấp nuôi&nbsp;</span><span style="color:black;">tr</span><span style="color:black;">ồng thủy sản, bệnh&nbsp;học thủy sản đối với hành nghề thú y thủy sản. Người hành nghề tiêm phòng cho động vật phải có chứng chỉ tốt nghiệp lớp đào tạo về kỹ thuật do cơ quan quản lý nhà nước có thẩm quyền cấp tỉnh cấp.</span></p>\n\n<p style="margin-top:6.0pt;text-align:justify;text-indent:36.0pt;line-height:16.0pt;background:white;"><span style="color:black;">b.&nbsp;Người phụ&nbsp;trách kỹ thuật của cơ sở phẫu thuật động vật, khám bệnh, chẩn đoán bệnh, xét nghiệm bệnh động vật phải có bằng đại học&nbsp;trở lên chuyên ngành thú y, chăn nuôi thú y hoặc nuôi&nbsp;trồng thủy sản, bệnh học thủy sản đối với hành nghề thú y thủy sản.</span></p>\n\n<p style="margin-top:6.0pt;text-align:justify;text-indent:36.0pt;line-height:16.0pt;background:white;"><span style="color:black;">c.&nbsp;Người buôn bán thuốc thú y phải có bằng trung cấp trở&nbsp;lên chuyên ngành thú y, chăn nuôi thú y hoặc trung cấp nuôi trồng thủy sản, bệnh học thủy sản đối với hành nghề thú y thủy sản.</span></p>',
    'Điều kiện để hành nghề và cấp chứng chỉ hành nghề thú y đối với các loại hình: Tiêm phòng, chữa bệnh, phẫu thuật động vật; tư vấn các hoạt động liên quan đến lĩnh vực thú y; khám bệnh, chẩn đoán bệnh, xét nghiệm bệnh động vật; buôn bán thuốc thú y?',
    'Trường hợp đã có chứng thư số ký duyệt nghiệp vụ dịch vụ công liên quan đến chứng thư số, nếu người sử dụng muốn đăng ký để ký duyệtnghiệp vụ dịch vụ công khác như Mã ngân hàng, Thanh toán liên ngân hàng (TTLNH), Thi đua – Khen thưởng, Thanh toán thì cần phải làm thủ tục gì?',
]
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]
```

<!--
### 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
* Dataset: `dim_768`
* 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.4881     |
| cosine_accuracy@3   | 0.6453     |
| cosine_accuracy@5   | 0.7094     |
| cosine_accuracy@10  | 0.7682     |
| cosine_precision@1  | 0.4881     |
| cosine_precision@3  | 0.2151     |
| cosine_precision@5  | 0.1419     |
| cosine_precision@10 | 0.0768     |
| cosine_recall@1     | 0.4881     |
| cosine_recall@3     | 0.6453     |
| cosine_recall@5     | 0.7094     |
| cosine_recall@10    | 0.7682     |
| cosine_ndcg@10      | 0.6247     |
| cosine_mrr@10       | 0.579      |
| **cosine_map@100**  | **0.5837** |

#### Information Retrieval
* Dataset: `dim_512`
* 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.4855     |
| cosine_accuracy@3   | 0.6435     |
| cosine_accuracy@5   | 0.705      |
| cosine_accuracy@10  | 0.7603     |
| cosine_precision@1  | 0.4855     |
| cosine_precision@3  | 0.2145     |
| cosine_precision@5  | 0.141      |
| cosine_precision@10 | 0.076      |
| cosine_recall@1     | 0.4855     |
| cosine_recall@3     | 0.6435     |
| cosine_recall@5     | 0.705      |
| cosine_recall@10    | 0.7603     |
| cosine_ndcg@10      | 0.6201     |
| cosine_mrr@10       | 0.5753     |
| **cosine_map@100**  | **0.5805** |

#### Information Retrieval
* Dataset: `dim_256`
* 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.4838     |
| cosine_accuracy@3   | 0.6321     |
| cosine_accuracy@5   | 0.6883     |
| cosine_accuracy@10  | 0.7533     |
| cosine_precision@1  | 0.4838     |
| cosine_precision@3  | 0.2107     |
| cosine_precision@5  | 0.1377     |
| cosine_precision@10 | 0.0753     |
| cosine_recall@1     | 0.4838     |
| cosine_recall@3     | 0.6321     |
| cosine_recall@5     | 0.6883     |
| cosine_recall@10    | 0.7533     |
| cosine_ndcg@10      | 0.6151     |
| cosine_mrr@10       | 0.5713     |
| **cosine_map@100**  | **0.5765** |

#### Information Retrieval
* Dataset: `dim_128`
* 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.4671    |
| cosine_accuracy@3   | 0.6137    |
| cosine_accuracy@5   | 0.6602    |
| cosine_accuracy@10  | 0.7243    |
| cosine_precision@1  | 0.4671    |
| cosine_precision@3  | 0.2046    |
| cosine_precision@5  | 0.132     |
| cosine_precision@10 | 0.0724    |
| cosine_recall@1     | 0.4671    |
| cosine_recall@3     | 0.6137    |
| cosine_recall@5     | 0.6602    |
| cosine_recall@10    | 0.7243    |
| cosine_ndcg@10      | 0.5926    |
| cosine_mrr@10       | 0.5508    |
| **cosine_map@100**  | **0.557** |

#### Information Retrieval
* Dataset: `dim_64`
* 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.417      |
| cosine_accuracy@3   | 0.5619     |
| cosine_accuracy@5   | 0.6216     |
| cosine_accuracy@10  | 0.6778     |
| cosine_precision@1  | 0.417      |
| cosine_precision@3  | 0.1873     |
| cosine_precision@5  | 0.1243     |
| cosine_precision@10 | 0.0678     |
| cosine_recall@1     | 0.417      |
| cosine_recall@3     | 0.5619     |
| cosine_recall@5     | 0.6216     |
| cosine_recall@10    | 0.6778     |
| cosine_ndcg@10      | 0.5449     |
| cosine_mrr@10       | 0.5027     |
| **cosine_map@100**  | **0.5097** |

<!--
## 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: 10,248 training samples
* Columns: <code>positive</code> and <code>anchor</code>
* Approximate statistics based on the first 1000 samples:
  |         | positive                                                                            | anchor                                                                             |
  |:--------|:------------------------------------------------------------------------------------|:-----------------------------------------------------------------------------------|
  | type    | string                                                                              | string                                                                             |
  | details | <ul><li>min: 4 tokens</li><li>mean: 150.46 tokens</li><li>max: 256 tokens</li></ul> | <ul><li>min: 6 tokens</li><li>mean: 37.63 tokens</li><li>max: 210 tokens</li></ul> |
* Samples:
  | positive                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | anchor                                                                                                                                                                                                                                                                                                  |
  |:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
  | <code>Theo quy định tại Điều 7, Nghị định số 15/2018/NĐ-CP của Chính phủ về hướng dẫn Luật ATTP. Đối với sản phẩm sản xuất trong nước Hồ sơ đăng ký bản công bố sản phẩm gồm:a) Bản công bố sản phẩm được quy định tại Mẫu số 02 Phụ lục I ban hành kèm theo Nghị định số 15/2018/NĐ-CP của Chính phủ;b) Phiếu kết quả kiểm nghiệm an toàn thực phẩm của sản phẩm trong thời hạn 12 tháng tính đến ngày nộp hồ sơ được cấp bởi phòng kiểm nghiệm được chỉ định hoặc phòng kiểm nghiệm được công nhận phù hợp ISO 17025 gồm các chỉ tiêu an toàn do Bộ Y tế ban hành theo nguyên tắc quản lý rủi ro phù hợp với quy định của quốc tế hoặc các chỉ tiêu an toàn theo các quy chuẩn, tiêu chuẩn tương ứng do tổ chức, cá nhân công bố trong trường hợp chưa có quy định của Bộ Y tế (bản chính hoặc bản sao chứng thực);c) Bằng chứng khoa học chứng minh công dụng của sản phẩm hoặc của thành phần tạo nên công dụng đã công bố (bản chính hoặc bản sao có xác nhận của tổ chức, cá nhân). Khi sử dụng bằng chứng khoa học về công dụng thành phần của sản phẩm để làm công dụng cho sản phẩm thì liều sử dụng hàng ngày của sản phẩm tối thiểu phải lớn hơn hoặc bằng 15% lượng sử dụng thành phần đó đã nêu trong tài liệu;d) Giấy chứng nhận cơ sở đủ điều kiện an toàn thực phẩm trong trường hợp cơ sở thuộc đối tượng phải cấp giấy chứng nhận cơ sở đủ điều kiện an toàn thực phẩm theo quy định (bản sao có xác nhận của tổ chức, cá nhân);đ) Giấy chứng nhận cơ sở đủ điều kiện an toàn thực phẩm đạt yêu cầu Thực hành sản xuất tốt (GMP) trong trường hợp sản phẩm sản xuất trong nước là thực phẩm bảo vệ sức khỏe áp dụng từ ngày 01 tháng 7 năm 2019 (bản sao có xác nhận của tổ chức, cá nhân).</code> | <code>Hồ sơ công bố đối với nhóm thực phẩm bảo vệ sức khỏe sản xuất trong nước gồm những nội dung gì.</code>                                                                                                                                                                                            |
  | <code>Điểm ưu tiên về đối tượng, khu vực của thí sinh phải đúng quy chế của Bộ Giáo dục và Đào tạo, thống nhất và trùng khớp giữa hồ sơ sơ tuyển và hồ sơ xét tuyển. Khi phát hiện có sự sai sót về chế độ ưu tiên, thí sinh phải liên hệ với cơ quan đăng ký hồ sơ để điều chỉnh, cụ thể:- Về hồ sơ sơ tuyển: Thí sinh phải liên hệ với Ban Chỉ huy Quân sự huyện (trung đoàn hoặc tương đương) để được điều chỉnh, xác nhận và gửi về trường mình đăng ký.- Về hồ sơ xét tuyển: Thí sinh phải liên hệ với Sở Giáo dục và Đào tạo nơi thí sinh đăng ký dự Kỳ thi trung học phổ thông quốc gia để được điều chỉnh.</code>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | <code>Nếu sai sót về chế độ ưu tiên theo đối tượng hoặc chế độ ưu tiên theo khu vực trong quá trình kê khai hồ sơ sơ tuyển, xét tuyển thí sinh phải liên hệ ở đâu để được điều chỉnh?</code>                                                                                                            |
  | <code>Theo quy định tại Nghị định số 88/2014/NĐ-CP, Tổng Giám đốc, thành viên Hội đồng xếp hạng tín nhiệm, chuyên viên phân tích phải có trình độ từ đại học trở lên thuộc chuyên ngành kinh tế, tài chính, ngân hàng, kế toán, kiểm toán, thống kê, quản trị kinh doanh hoặc chuyên ngành thuộc lĩnh vực kinh doanh của tổ chức được xếp hạng tín nhiệm. Theo đó, khi cung cấp hồ sơ về Tổng Giám đốc, thành viên Hội đồng xếp hạng tín nhiệm, chuyên viên phân tích, doanh nghiệp cần cung cấp bằng cấp đáp ứng điều kiện quy định tại Nghị định số 88/2014/NĐ-CP.</code>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | <code>Về hồ sơ của Tổng Giám đốc, thành viên Hội đồng xếp hạng tín nhiệm, chuyên viên phân tích, trường hợp đã cung cấp bằng đại học của người lao động đáp ứng chuyên ngành theo quy định tại Nghị định số 88/2014/NĐ-CP có cần cung cấp các bằng cấp khác như bằng thạc sĩ, tiến sĩ hay không?</code> |
* Loss: [<code>MatryoshkaLoss</code>](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#matryoshkaloss) with these parameters:
  ```json
  {
      "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`: 32
- `learning_rate`: 2e-05
- `num_train_epochs`: 2
- `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
<details><summary>Click to expand</summary>

- `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`: 32
- `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`: 2
- `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`: False
- `fp16`: True
- `fp16_opt_level`: O1
- `half_precision_backend`: auto
- `bf16_full_eval`: False
- `fp16_full_eval`: False
- `tf32`: False
- `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
- `batch_sampler`: no_duplicates
- `multi_dataset_batch_sampler`: proportional

</details>

### Training Logs
| Epoch      | Step   | Training Loss | dim_128_cosine_map@100 | dim_256_cosine_map@100 | dim_512_cosine_map@100 | dim_64_cosine_map@100 | dim_768_cosine_map@100 |
|:----------:|:------:|:-------------:|:----------------------:|:----------------------:|:----------------------:|:---------------------:|:----------------------:|
| 0.9969     | 10     | 2.9792        | 0.5372                 | 0.5551                 | 0.5615                 | 0.4906                | 0.5663                 |
| **1.9938** | **20** | **1.7978**    | **0.557**              | **0.5765**             | **0.5805**             | **0.5097**            | **0.5837**             |

* The bold row denotes the saved checkpoint.

### Framework Versions
- Python: 3.10.13
- Sentence Transformers: 3.0.1
- Transformers: 4.41.2
- PyTorch: 2.1.2
- Accelerate: 0.29.3
- Datasets: 2.19.1
- 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.*
-->