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

This is a sentence-transformers model finetuned from 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 Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 256, 'do_lower_case': False, 'architecture': '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("truong1301/bi_encoder_viwiki_1")
# Run inference
sentences = [
    'Có phải số_lượng sinh_viên tốt_nghiệp ngành khoa_học , công_nghệ , kỹ_thuật và toán_học của Mỹ cao gấp đôi so với Trung_Quốc , mặc_dù dân_số Trung_Quốc hơn Mỹ 4,2 lần ? \n',
    'Bên cạnh Huawei , việc công_ty thiết_bị viễn_thông lớn thứ hai Trung_Quốc là ZTE bị đẩy vào tình_trạng khó_khăn sau khi bị Mỹ cấm_vận công_nghệ cho thấy Trung_Quốc vẫn còn phụ_thuộc Mỹ rất lớn về một_số công_nghệ . Trên tạp_chí Forbes , ông Jean_Baptiste Su , Phó_Chủ_tịch công_ty nghiên_cứu thị_trường công_nghệ Atherton_Research ( Mỹ ) cho rằng khó_khăn của ZTE sau lệnh cấm_vận công_nghệ của Mỹ cho thấy hầu_như tất_cả các công_ty lớn của Trung_Quốc hiện đang phụ_thuộc lớn vào các công_nghệ của Mỹ . Các công_ty lớn của Trung_Quốc từ Baidu , Alibaba , Tencent , Xiaomi , Didi Chuxing cho đến Ngân_hàng Trung_Quốc ( BOC ) , Ngân_hàng Công_thương Trung_Quốc ( ICBC ) , các công_ty viễn_thông China_Mobile , China_Telecom , tập_đoàn dầu_khí nhà_nước Trung_Quốc Petro_China , hãng ô_tô nhà_nước SAIC. . . đều dựa vào công_nghệ , linh_kiện , phần_mềm hoặc tài_sản sở_hữu trí_tuệ của các công_ty nước_ngoài như Apple , Google , Intel , Qualcomm , Cisco , Micron , Microsoft ... Tác_giả cho rằng một lệnh cấm bán_công_nghệ Mỹ cho các công_ty Trung_Quốc có_thể làm suy_sụp nền kinh_tế Trung QuốcTheo một bài phân_tích của Bloomberg , bên cạnh một_số lĩnh_vực không sánh được với Mỹ thì Trung_Quốc cũng có những thế mạnh riêng để phát_triển trong tương_lai , như quy_mô dân_số , số người dùng internet , việc Huawei là hãng mạnh nhất về phát_triển của công_nghệ 5G mà các nhà mạng toàn_cầu mới bắt_đầu triển_khai . Năm 2016 , Trung_Quốc có 4,7 triệu sinh_viên tốt_nghiệp các ngành khoa_học , công_nghệ , kỹ_thuật và toán_học gần đây , trong khi Mỹ chỉ có 568.000 ( dân_số Trung_Quốc gấp 4,2 lần dân_số Mỹ , tính theo tỷ_lệ dân_số thì chỉ_số này của Trung_Quốc cao hơn 2 lần so với Mỹ ) . Chuỗi lắp_ráp , sản_xuất tại Trung_Quốc nhìn_chung vẫn nhỉnh hơn Mỹ về mặt tổng_sản_lượng trong nhiều ngành công_nghiệp và luôn có chi_phí thấp hơn Mỹ . Chiến_tranh lạnh về công_nghệ ngày_càng tăng_tiến giữa Trung_Quốc và Mỹ sẽ rất khó tìm bên chiến_thắng rõ_ràng .',
    'Nguyên_tắc chữ Hán_giản thể có_thể truy lên đề_nghị của Tiền Huyền Đồng vào năm 1922 . Tám nguyên_tắc_giản hoá là : chữ vay_mượn , chữ hình thanh , tiêu_chuẩn_hoá Thảo thư , chữ đặc_trưng , chữ vành , chữ hội_ý , chữ phù_hiệu , và chữ bộ thủ . Mặc_dù ra_đời trước Tiền Huyền_Đồng và không được rõ_ràng để bao_hàm các phương_pháp giản_ước chữ Hán_cụ_thể , các nguyên_tắc này đủ điển_hình , chính_sách giản_ước dùng không ít .',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities)
# tensor([[ 1.0000,  0.5257, -0.0753],
#         [ 0.5257,  1.0000, -0.0857],
#         [-0.0753, -0.0857,  1.0000]])

Training Details

Training Dataset

Unnamed Dataset

  • Size: 16,581 training samples
  • Columns: anchor and positive
  • Approximate statistics based on the first 1000 samples:
    anchor positive
    type string string
    details
    • min: 8 tokens
    • mean: 21.71 tokens
    • max: 68 tokens
    • min: 28 tokens
    • mean: 140.28 tokens
    • max: 256 tokens
  • Samples:
    anchor positive
    Vì sao chế_độ quân_chủ chuyên_chế nhà Thanh không_thể bảo_vệ Trung_Quốc trước sự xâm_lược của phương Tây và chủ_nghĩa tư_bản ?
    Cuối thời nhà Thanh , do sự lạc_hậu về khoa_học công_nghệ , Trung_Quốc bị các nước phương Tây ( Anh , Đức , Nga , Pháp , Bồ_Đào_Nha ) và cả Nhật_Bản xâu_xé lãnh_thổ . Các nhà sử_học Trung_Quốc gọi thời_kỳ này là Bách_niên quốc sỉ ( 100 năm đất_nước bị làm_nhục ) . Chế_độ quân_chủ chuyên_chế đã tỏ ra quá già_cỗi , hoàn_toàn bất_lực trong việc bảo_vệ đất_nước chống lại chủ_nghĩa tư_bản phương Tây . Điều này gây bất_bình trong đội_ngũ trí_thức Trung_Quốc , một bộ_phận kêu_gọi tiến_hành cách_mạng lật_đổ chế_độ quân_chủ chuyên_chế của nhà Thanh , thành_lập một kiểu nhà_nước mới để canh tân đất_nước . Năm 1911 , cách_mạng Tân_Hợi nổ ra , hoàng đế cuối_cùng của Trung_Quốc là Phổ_Nghi buộc phải thoái_vị .
    Cuộc đảo_chính lật_đổ nền quân_chủ Yemen và thành_lập Cộng_hòa Ả_Rập Yemen có phải là nguyên_nhân dẫn đến nội_chiến ở nước này không ?
    1962 : Khủng_hoảng tên_lửa Cuba . Algérie giành độc_lập . Cái chết của Marilyn_Monroe . Chiến_tranh Indonesia - Malaysia . Một cuộc đảo_chính lật_đổ nền quân_chủ và thành_lập nước Cộng_hòa Ả_Rập Yemen dẫn tới cuộc nội_chiến tại nước này . Chiến_tranh Trung - Ấn .
    Năm 1956 , sau khi Pháp rút quân khỏi Việt_Nam , ai là người lãnh_đạo Quốc_gia Việt_Nam ?
    Năm 1954 - Hiệp_định Genève quy_định lấy vĩ_tuyến 17 làm ranh_giới quân_sự tạm_thời ( bao_gồm cả trên đất_liền và trên biển ) . Quần_đảo Hoàng_Sa nằm ở phía Nam vĩ_tuyến 17 , được giao cho chính_quyền Liên_Hiệp Pháp quản_lý . Năm 1956 , sau khi Pháp hoàn_tất rút quân khỏi Việt_Nam , Quốc_gia Việt_Nam ( quốc_trưởng Bảo Đại đứng đầu ) đứng ra quản_lý .
  • Loss: CachedMultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim",
        "mini_batch_size": 1024,
        "gather_across_devices": false
    }
    

Evaluation Dataset

Unnamed Dataset

  • Size: 2,090 evaluation samples
  • Columns: anchor and positive
  • Approximate statistics based on the first 1000 samples:
    anchor positive
    type string string
    details
    • min: 8 tokens
    • mean: 21.69 tokens
    • max: 58 tokens
    • min: 28 tokens
    • mean: 138.56 tokens
    • max: 256 tokens
  • Samples:
    anchor positive
    Liệu sự bất_bình_đẳng giới giữa con_trai và con_gái có phải là một vấn_đề nghiêm_trọng , đặc_biệt là ở Ấn_Độ không ?
    Phá_thai nếu sinh con gáiNhiều gia_đình ở Ấn_Độ bị áp_lực bởi truyền_thống trao của hồi_môn cho con_gái trước khi về nhà chồng , hoặc bị mất danh_dự do con_gái xấu_xí , hoặc đã bị hãm_hiếp mà không lấy được chồng , bởi_vậy họ không hề muốn sinh con_gái . Ngược_lại , con_trai là người duy_trì dòng tộc và mang lại tiền_bạc từ của hồi_môn của vợ . Kết_quả là , việc phá_thai nếu chẩn_đoán là con_gái xảy ra phổ_biến ở khắp nơi , kể_cả ở thành_phố và các gia_đình có giáo_dục . Cách phá_thai phổ_biến nhất là ăn một_số loại thảo_dược . Nếu sinh con rồi , họ có_thể dìm con trong sữa cho chết ngạt , hoặc cho con ăn thức_ăn quá lớn để chết vì nghẹn , thậm_chí chôn sống con .
    Sự_kiện ly_khai của họ Nguyễn và việc chúa Trịnh đem quân đánh vào năm 1627 đã dẫn đến thời_kỳ Trịnh - Nguyễn phân tranh kéo_dài hơn 40 năm phải không ?
    Biết rằng họ Nguyễn ly_khai , không chịu thần phục nữa , tháng 3 năm 1627 , chúa Trịnh mang quân đi đánh họ Nguyễn . Sự_kiện này đánh_dấu sự chia tách hoàn_toàn cả về lý_thuyết và thực_tế của xứ Thuận_Quảng_tức Đàng_Trong của Chúa Nguyễn với Đàng_Ngoài của Chúa_Trịnh . Nó cũng tạo ra thời_kỳ Trịnh - Nguyễn phân tranh kéo_dài 45 năm , từ 1627 đến 1672 , với 7 cuộc đại_chiến của 2 bên . Dân_tình quá_khổ_cực , chán_nản , hai họ Trịnh , Nguyễn phải ngừng chiến , lấy sông Gianh làm ranh_giới chia_cắt lãnh_thổ , miền Nam sông Gianh – Rào_Nan thuộc quyền chúa Nguyễn , được gọi là Đàng Trong .
    Kiến_trúc ở Kyoto , Uji có phải là một trong những công_trình mang đậm_nét sử_thi về lịch_sử cố_đô Kyoto không ?
    Các công_trình kiến_trúc lịch_sử cố_đô Kyoto nằm rải_rác 17 địa_điểm trong đó ba công_trình ở Kyoto , Ujin thuộc phủ Kyoto và Otsu ở huyện Shiga . Gồm có 3 chùa phật_giáo , 3 đền Thần_đạo và một lâu đài . Riêng 38 cơ_sở kiến_trúc được chính_phủ liệt vào danh_sách Di_sản quốc_gia , 160 kiến_trúc khác vào danh_sách Các công_trình văn_hóa quan_trọng . Tám khu vườn thắng_cảnh đặc_biệt và bốn với Thắng_cảnh đẹp . Công_nhận năm 1994 .
  • Loss: CachedMultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim",
        "mini_batch_size": 1024,
        "gather_across_devices": false
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: steps
  • per_device_train_batch_size: 32
  • per_device_eval_batch_size: 32
  • learning_rate: 2e-05
  • weight_decay: 0.01
  • num_train_epochs: 5
  • warmup_ratio: 0.1
  • warmup_steps: 50
  • fp16: True
  • load_best_model_at_end: True
  • batch_sampler: no_duplicates

All Hyperparameters

Click to expand
  • 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: 32
  • 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: 2e-05
  • weight_decay: 0.01
  • adam_beta1: 0.9
  • adam_beta2: 0.999
  • adam_epsilon: 1e-08
  • max_grad_norm: 1.0
  • num_train_epochs: 5
  • max_steps: -1
  • lr_scheduler_type: linear
  • lr_scheduler_kwargs: {}
  • warmup_ratio: 0.1
  • warmup_steps: 50
  • 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: 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}
  • tp_size: 0
  • 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
  • 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
  • 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
  • router_mapping: {}
  • learning_rate_mapping: {}

Training Logs

Epoch Step Training Loss Validation Loss
0.1927 100 0.2414 -
0.3854 200 0.1753 -
0.5780 300 0.1559 0.1387
0.7707 400 0.1442 -
0.9634 500 0.129 -
1.1561 600 0.1205 0.1092
1.3487 700 0.0987 -
1.5414 800 0.0966 -
1.7341 900 0.0995 0.0950
1.9268 1000 0.0874 -
2.1195 1100 0.0719 -
2.3121 1200 0.0588 0.0854
2.5048 1300 0.0609 -
2.6975 1400 0.0605 -
2.8902 1500 0.0612 0.0838
3.0829 1600 0.0458 -
3.2755 1700 0.0409 -
3.4682 1800 0.0359 0.0786
3.6609 1900 0.0392 -
3.8536 2000 0.041 -
4.0462 2100 0.0355 0.0712
4.2389 2200 0.0245 -
4.4316 2300 0.0238 -
4.6243 2400 0.0244 0.0704
4.8170 2500 0.0265 -
  • The bold row denotes the saved checkpoint.

Framework Versions

  • Python: 3.11.11
  • Sentence Transformers: 5.1.0
  • Transformers: 4.51.1
  • PyTorch: 2.5.1+cu124
  • Accelerate: 1.3.0
  • Datasets: 3.5.0
  • 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",
}

CachedMultipleNegativesRankingLoss

@misc{gao2021scaling,
    title={Scaling Deep Contrastive Learning Batch Size under Memory Limited Setup},
    author={Luyu Gao and Yunyi Zhang and Jiawei Han and Jamie Callan},
    year={2021},
    eprint={2101.06983},
    archivePrefix={arXiv},
    primaryClass={cs.LG}
}
Downloads last month
4
Safetensors
Model size
135M params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for truong1301/bi_encoder_viwiki_1

Finetuned
(40)
this model