SentenceTransformer based on bkai-foundation-models/vietnamese-bi-encoder

This is a sentence-transformers model finetuned from bkai-foundation-models/vietnamese-bi-encoder on the dataset_full_fixed dataset. 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 Sources

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:

pip install -U sentence-transformers

Then you can load this model and run inference.

from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("vietnamese-bi-encoder-v2")
# Run inference
sentences = [
    'Nguy cơ đau bụng Những ai có nguy cơ mắc phải đau bụng? Nữ giới có nguy cơ mắc đau bụng theo chu kỳ kinh nguyệt. Ngoài ra, vì đau bụng là dấu hiệu của bệnh khác nên các đối tượng mắc phải thường là người lớn, người cao tuổi có chức năng tim, thận suy giảm. Yếu tố làm tăng nguy cơ mắc phải đau bụng Một số yếu tố làm tăng nguy cơ mắc đau bụng, bao gồm: Tổn thương đường tiêu hóa (loét dạ dày). Tổn thương gan.',
    'Nguy cơ đau bụng',
    'Xin BS cho biết, việc phẫu thuật để đưa 2 tinh hoàn ở ổ bụng xuống bìu cho trẻ có phức tạp không? Trẻ 7 tháng tuổi có thể phẫu thuật được chưa? BV địa phương (Bệnh viện Hội An - Quảng Nam) có thể tiến hành phẫu thuật này được không? Xin chân thành cảm ơn. (Phan Quốc Bảo - Hội An, Quảng Nam)',
]
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]

Evaluation

Metrics

Information Retrieval

Metric Value
cosine_accuracy@1 0.6225
cosine_accuracy@3 0.7436
cosine_accuracy@5 0.7947
cosine_accuracy@10 0.8486
cosine_precision@1 0.6225
cosine_precision@3 0.2479
cosine_precision@5 0.1589
cosine_precision@10 0.0849
cosine_recall@1 0.6225
cosine_recall@3 0.7436
cosine_recall@5 0.7947
cosine_recall@10 0.8486
cosine_ndcg@10 0.7323
cosine_mrr@10 0.6953
cosine_map@100 0.7008

Training Details

Training Dataset

dataset_full_fixed

  • Dataset: dataset_full_fixed at ef2e7fd
  • Size: 54,755 training samples
  • Columns: positive and query
  • Approximate statistics based on the first 1000 samples:
    positive query
    type string string
    details
    • min: 30 tokens
    • mean: 185.16 tokens
    • max: 256 tokens
    • min: 5 tokens
    • mean: 78.78 tokens
    • max: 256 tokens
  • Samples:
    positive query
    Điều trị viêm loét dạ dày đơn thuần mà không tiệt trừ Hp Chào em, Kết quả này là em bị viêm hang vị dạ dày do nhiễm Hp rồi, em nhé. Hp là vi khuẩn gây viêm loét dạ dày thường gặp. Nhiễm Hp kèm có triệu chứng đau dạ dày thì cần phải điều trị tiệt trừ Hp, nếu chỉ điều trị viêm loét dạ dày đơn thuần mà không tiệt trừ Hp thì bệnh sẽ không hết và Hp có thể gây ra viêm loét kéo dài, viêm mạn và dẫn đến chuyển sản rồi ung thư dạ dày. Trị Hp thì BS sẽ phải dùng kháng sinh, vì đây là vi khuẩn, và phải dùng 2 loại kháng sinh phối hợp với thuốc ức chế tiết dạ dày 14 ngày mới diệt được Hp (phác đồ chuẩn của hội tiêu hóa gan mật Việt Nam và thế giới), vì chúng trú ẩn sâu trong thành của dạ dày. Em nên đến khám chuyên khoa Tiêu hóa để được kê thuốc phù hợp (BS không được phép kê thuốc khi không trực tiếp khám cho người bệnh). Sau đợt điều trị thì em cần tái khám lại để BS đánh giá và điều chỉnh thuốc cho em, có thể là sẽ tiếp tục điều trị thêm vài tuần để kiểm soát hẳn triệu chứng khó chịu rồi mới n... Bác sĩ cho em hỏi phiếu kết quả như vậy là có bị nhiễm Hp không ạ?Thực quản: trơn láng, không viêm loét. Tâm vị, góc bờ cong nhỏ: không viêm loét. Đáy vị, thân vị: mềm, không viêm loét. Hang vị: viêm sung huyết mức độ nhẹ. Môn vị: tròn đều. Hành tá tràng: không viêm loét, thông thoáng. Clo test: dương tính.
    Chào bạn, Bạn có tình trạng xuất huyết tiêu hóa dưới mức độ nhẹ. Nếu xuất huyết do nứt kẽ hậu môn sẽ không thể có hiện tượng máu tươi chảy ra nhiều và loãng, máu loãng nghĩa là có trộn với dịch đại trực tràng. Bạn nên đến khoa nội soi tiêu hóa để được thăm khám và tiến hành nội soi đại tràng để khảo sát tổn thương nhằm loại trừ các bệnh lý nguy hiểm nhé. Thân ái chào bạn. Em chào bác sĩ.Trong vòng 1 tuần vừa rồi em có 2 lần đi đại tiện với triệu chứng máu tươi chảy ra rất nhiều và loãng (không dính nhầy), có điểm chung trước khi bị là em thường ăn cay đến rất cay và hút thuốc lá (em không thường xuyên hút thuốc).Trước đây khoảng 1 năm thì em đi khám được bác sĩ nói là em bị nứt kẽ hậu môn và cũng có đi ngoài ra máu nhưng ít, không đáng kể. Còn bây giờ chảy ra rất nhiều như vậy thì có liên quan đến ung thư không ạ? Em xin cảm ơn bác sĩ.
    Chào Kim Vân, là những ký sinh trùng nhỏ thường gặp và phổ biến trên thế giới, thường ký sinh ở động vật có vú, có 2 loài gây bệnh ở người là D.folliculorum và D.brevis. Ở người, chúng có thể ký sinh mọi nơi trên cơ thể nơi có nang lông và tuyến bã, nhiều nhất ở mặt đặc biệt ở mũi, trán, cằm và má gây ra triệu chứng viêm chân tóc, viêm mí mắt bởi sự kích ứng vùng lông mi, và hiện diện trong nhiều sang thương da ở vùng mặt như: mụn, viêm da quanh miệng, mụn trứng cá đỏ hoặc viêm nang lông,.. đặc biệt trên những người có cơ địa suy giảm miễn dịch. Các đường lây có thể do tiếp xúc trực tiếp, hoặc do bụi bẩn có chứa trứng của ký sinh trùng bám vào da,… Các yếu tố thuận lợi gây bệnh: - Da tiết nhiều chất nhờn hoặc vệ sinh kém. - Tổn thương trên da. - Điều kiện môi trường thuận lợi như độ ẩm. - Sử dụng mỹ phẩm hoặc thuốc gây kích ứng da, làm da tổn thương,... Điều trị Demodex được hướng dẫn như sau: - Thuốc thoa tại chỗ trong trường hợp viêm mi mắt: Oxyde thủy ngân 1% thoa 2 lần/ngày trong ... Chào BS ạ,


    BS ơi cho con hỏi tháng trước con có đi điều trị BS nói con bị demodex và sau đó kê thuốc uống và bôi 2 tuần, ban đầu nó đỡ ngứa, giờ con đang ở Nhật thì nó lại tái phát ngứa và da nổi mẩn đỏ.


    Giờ ở xa nên con không điều trị được. Có cách nào khác giúp con được không BS? Con cảm ơn!


    (Nguyên Thị Kim Vân - Đà Nẵng)
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim"
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: epoch
  • per_device_train_batch_size: 60
  • per_device_eval_batch_size: 1
  • learning_rate: 1e-06
  • lr_scheduler_type: constant_with_warmup
  • warmup_ratio: 0.1
  • bf16: True
  • tf32: False
  • load_best_model_at_end: True
  • optim: adamw_torch_fused
  • batch_sampler: no_duplicates

All Hyperparameters

Click to expand
  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: epoch
  • prediction_loss_only: True
  • per_device_train_batch_size: 60
  • per_device_eval_batch_size: 1
  • 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-06
  • 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
  • max_steps: -1
  • lr_scheduler_type: constant_with_warmup
  • 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: True
  • fp16: False
  • 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: None
  • 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: no_duplicates
  • multi_dataset_batch_sampler: proportional

Training Logs

Click to expand
Epoch Step Training Loss dim_768_cosine_ndcg@10
-1 -1 - 0.5868
0.0137 10 0.7769 -
0.0274 20 0.6614 -
0.0410 30 0.6582 -
0.0547 40 0.6593 -
0.0684 50 0.6192 -
0.0821 60 0.609 -
0.0958 70 0.6601 -
0.1094 80 0.5605 -
0.1231 90 0.5544 -
0.1368 100 0.5244 -
0.1505 110 0.5677 -
0.1642 120 0.558 -
0.1778 130 0.4303 -
0.1915 140 0.4571 -
0.2052 150 0.4458 -
0.2189 160 0.4667 -
0.2326 170 0.4993 -
0.2462 180 0.4401 -
0.2599 190 0.4302 -
0.2736 200 0.3303 -
0.2873 210 0.5247 -
0.3010 220 0.4284 -
0.3146 230 0.3622 -
0.3283 240 0.3828 -
0.3420 250 0.3081 -
0.3557 260 0.3399 -
0.3694 270 0.3976 -
0.3830 280 0.3853 -
0.3967 290 0.3211 -
0.4104 300 0.3749 -
0.4241 310 0.3872 -
0.4378 320 0.4299 -
0.4514 330 0.3693 -
0.4651 340 0.361 -
0.4788 350 0.3499 -
0.4925 360 0.331 -
0.5062 370 0.3347 -
0.5198 380 0.4189 -
0.5335 390 0.2712 -
0.5472 400 0.3279 -
0.5609 410 0.3683 -
0.5746 420 0.3622 -
0.5882 430 0.3649 -
0.6019 440 0.2657 -
0.6156 450 0.3198 -
0.6293 460 0.3694 -
0.6430 470 0.3528 -
0.6566 480 0.3294 -
0.6703 490 0.3061 -
0.6840 500 0.2706 -
0.6977 510 0.3315 -
0.7114 520 0.3176 -
0.7250 530 0.2956 -
0.7387 540 0.309 -
0.7524 550 0.3411 -
0.7661 560 0.274 -
0.7798 570 0.3595 -
0.7934 580 0.3327 -
0.8071 590 0.3116 -
0.8208 600 0.3034 -
0.8345 610 0.3413 -
0.8482 620 0.2802 -
0.8618 630 0.3482 -
0.8755 640 0.332 -
0.8892 650 0.2532 -
0.9029 660 0.282 -
0.9166 670 0.3493 -
0.9302 680 0.3188 -
0.9439 690 0.3071 -
0.9576 700 0.3046 -
0.9713 710 0.3401 -
0.9850 720 0.3253 -
0.9986 730 0.338 -
1.0 731 - 0.6992
1.0123 740 0.2686 -
1.0260 750 0.3092 -
1.0397 760 0.2775 -
1.0534 770 0.2734 -
1.0670 780 0.3027 -
1.0807 790 0.3033 -
1.0944 800 0.3061 -
1.1081 810 0.3094 -
1.1218 820 0.305 -
1.1354 830 0.2466 -
1.1491 840 0.2374 -
1.1628 850 0.2557 -
1.1765 860 0.2734 -
1.1902 870 0.239 -
1.2038 880 0.3073 -
1.2175 890 0.2321 -
1.2312 900 0.3573 -
1.2449 910 0.327 -
1.2585 920 0.2732 -
1.2722 930 0.3167 -
1.2859 940 0.2833 -
1.2996 950 0.2913 -
1.3133 960 0.2193 -
1.3269 970 0.2817 -
1.3406 980 0.2213 -
1.3543 990 0.2611 -
1.3680 1000 0.2913 -
1.3817 1010 0.2369 -
1.3953 1020 0.2611 -
1.4090 1030 0.3141 -
1.4227 1040 0.2663 -
1.4364 1050 0.2526 -
1.4501 1060 0.2961 -
1.4637 1070 0.293 -
1.4774 1080 0.282 -
1.4911 1090 0.2804 -
1.5048 1100 0.2555 -
1.5185 1110 0.3018 -
1.5321 1120 0.2282 -
1.5458 1130 0.2769 -
1.5595 1140 0.2809 -
1.5732 1150 0.2391 -
1.5869 1160 0.2558 -
1.6005 1170 0.2622 -
1.6142 1180 0.2814 -
1.6279 1190 0.2924 -
1.6416 1200 0.2675 -
1.6553 1210 0.2536 -
1.6689 1220 0.2467 -
1.6826 1230 0.1978 -
1.6963 1240 0.2682 -
1.7100 1250 0.25 -
1.7237 1260 0.2825 -
1.7373 1270 0.219 -
1.7510 1280 0.2909 -
1.7647 1290 0.2453 -
1.7784 1300 0.2449 -
1.7921 1310 0.2645 -
1.8057 1320 0.225 -
1.8194 1330 0.27 -
1.8331 1340 0.276 -
1.8468 1350 0.1919 -
1.8605 1360 0.3561 -
1.8741 1370 0.2486 -
1.8878 1380 0.2921 -
1.9015 1390 0.2944 -
1.9152 1400 0.2936 -
1.9289 1410 0.2781 -
1.9425 1420 0.2261 -
1.9562 1430 0.2052 -
1.9699 1440 0.2291 -
1.9836 1450 0.2198 -
1.9973 1460 0.2258 -
2.0 1462 - 0.7209
2.0109 1470 0.1798 -
2.0246 1480 0.2846 -
2.0383 1490 0.2029 -
2.0520 1500 0.1989 -
2.0657 1510 0.2261 -
2.0793 1520 0.2346 -
2.0930 1530 0.2752 -
2.1067 1540 0.2621 -
2.1204 1550 0.2586 -
2.1341 1560 0.2654 -
2.1477 1570 0.2609 -
2.1614 1580 0.185 -
2.1751 1590 0.2091 -
2.1888 1600 0.2126 -
2.2025 1610 0.1876 -
2.2161 1620 0.2469 -
2.2298 1630 0.2717 -
2.2435 1640 0.2717 -
2.2572 1650 0.1966 -
2.2709 1660 0.2164 -
2.2845 1670 0.2629 -
2.2982 1680 0.222 -
2.3119 1690 0.1893 -
2.3256 1700 0.2144 -
2.3393 1710 0.2713 -
2.3529 1720 0.2584 -
2.3666 1730 0.1478 -
2.3803 1740 0.1898 -
2.3940 1750 0.2534 -
2.4077 1760 0.1685 -
2.4213 1770 0.2521 -
2.4350 1780 0.2252 -
2.4487 1790 0.2248 -
2.4624 1800 0.2763 -
2.4761 1810 0.2409 -
2.4897 1820 0.2368 -
2.5034 1830 0.2809 -
2.5171 1840 0.2325 -
2.5308 1850 0.2191 -
2.5445 1860 0.2703 -
2.5581 1870 0.2235 -
2.5718 1880 0.2345 -
2.5855 1890 0.2403 -
2.5992 1900 0.219 -
2.6129 1910 0.2296 -
2.6265 1920 0.2157 -
2.6402 1930 0.2633 -
2.6539 1940 0.2351 -
2.6676 1950 0.2007 -
2.6813 1960 0.2612 -
2.6949 1970 0.1873 -
2.7086 1980 0.2457 -
2.7223 1990 0.2549 -
2.7360 2000 0.2243 -
2.7497 2010 0.2469 -
2.7633 2020 0.229 -
2.7770 2030 0.2171 -
2.7907 2040 0.1711 -
2.8044 2050 0.268 -
2.8181 2060 0.2336 -
2.8317 2070 0.252 -
2.8454 2080 0.2239 -
2.8591 2090 0.1627 -
2.8728 2100 0.2154 -
2.8865 2110 0.2381 -
2.9001 2120 0.2411 -
2.9138 2130 0.2245 -
2.9275 2140 0.1878 -
2.9412 2150 0.2159 -
2.9549 2160 0.2224 -
2.9685 2170 0.2118 -
2.9822 2180 0.2302 -
2.9959 2190 0.2013 -
3.0 2193 - 0.7323
  • The bold row denotes the saved checkpoint.

Framework Versions

  • Python: 3.10.16
  • Sentence Transformers: 3.4.1
  • Transformers: 4.49.0
  • PyTorch: 2.6.0+cu124
  • Accelerate: 1.5.2
  • Datasets: 3.3.2
  • Tokenizers: 0.21.0

Citation

BibTeX

Sentence Transformers

@inproceedings{reimers-2019-sentence-bert,
    title = "Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks",
    author = "Reimers, Nils and Gurevych, Iryna",
    booktitle = "Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing",
    month = "11",
    year = "2019",
    publisher = "Association for Computational Linguistics",
    url = "https://arxiv.org/abs/1908.10084",
}

MultipleNegativesRankingLoss

@misc{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}
}
Downloads last month
5
Safetensors
Model size
135M params
Tensor type
F32
·
Inference Providers NEW
This model is not currently available via any of the supported Inference Providers.

Model tree for thang1943/vietnamese-bi-encoder-v2

Finetuned
(29)
this model

Dataset used to train thang1943/vietnamese-bi-encoder-v2

Evaluation results