Edit model card

SentenceTransformer based on keepitreal/vietnamese-sbert

This is a sentence-transformers model finetuned from keepitreal/vietnamese-sbert on the csv 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 Type: Sentence Transformer
  • Base model: keepitreal/vietnamese-sbert
  • Maximum Sequence Length: 256 tokens
  • Output Dimensionality: 768 tokens
  • Similarity Function: Cosine Similarity
  • Training Dataset:
    • csv

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("Cloyne/vietnamese-sbert-v3")
# Run inference
sentences = [
    'Việc ghi nhãn đối_với vàng trang_sức , mỹ_nghệ thể_hiện trực_tiếp trên sản_phẩm bằng những cách nào ?',
    'Công_bố tiêu_chuẩn áp_dụng và ghi nhãn đối_với vàng trang_sức , mỹ_nghệ ... 4 . Ghi nhãn đối_với vàng trang_sức , mỹ_nghệ : a ) Yêu_cầu chung : - Việc ghi nhãn vàng trang_sức , mỹ_nghệ phải được thực_hiện theo quy_định tại Nghị_định số 89/2006 / NĐ-CP ngày 30 tháng 8 năm 2006 của Chính_phủ về nhãn hàng hóa . Vị_trí nhãn vàng trang_sức , mỹ_nghệ được thực_hiện theo quy_định tại Điều 6 Nghị_định số 89/2006 / NĐ-CP ; - Nhãn vàng trang_sức , mỹ_nghệ được thể_hiện trực_tiếp trên sản_phẩm bằng cách khắc cơ_học , khắc_la-de , đục chìm , đúc_chìm , đúc nổi hoặc bằng phương_pháp thích_hợp ( nếu kích_thước và cấu_trúc sản_phẩm đủ để thực_hiện ) hoặc thể_hiện trên tài_liệu đính kèm sản_phẩm ; - Độ tinh_khiết hay hàm_lượng vàng theo phân_hạng quy_định tại Điều 6 Thông_tư này phải được ghi rõ tại vị_trí dễ thấy trên sản_phẩm bằng số Ả_Rập chỉ_số phần vàng trên một nghìn ( 1000 ) phần khối_lượng của sản_phẩm ( ví_dụ : 999 hoặc 916 ... ) hoặc bằng số Ả_Rập thể_hiện chỉ_số Kara kèm theo chữ_cái K ( ví_dụ : 24K hoặc 22K ... ) tương_ứng với phân_hạng theo quy_định tại Điều 6 Thông_tư này . Trường_hợp sản_phẩm có kích_thước không_thể thể_hiện trực_tiếp được thì hàm_lượng vàng công_bố phải được ghi trên nhãn đính kèm . Trường_hợp sản_phẩm có từ hai thành_phần trở lên với hàm_lượng vàng khác nhau , có_thể nhận_biết sự khác nhau qua ngoại_quan thì việc ghi hàm_lượng vàng được thể_hiện trên phần có hàm_lượng vàng thấp hơn ; - Đối_với vàng trang_sức , mỹ_nghệ nhập_khẩu , ngoài nhãn gốc ghi bằng tiếng nước_ngoài , phải có nhãn phụ bằng tiếng Việt thể_hiện các thông_tin ghi nhãn theo quy_định tại điểm b khoản 4 Điều này và xuất_xứ hàng hóa . ...',
    'Kỹ_sư cao_cấp ( hạng I ) - Mã_số : V._05.02.05 ... 2 . Tiêu_chuẩn về trình_độ đào_tạo , bồi_dưỡng : a ) Có trình_độ thạc_sĩ trở lên thuộc lĩnh_vực kỹ_thuật , công_nghệ ; b ) Có chứng_chỉ bồi_dưỡng chức_danh công_nghệ . ...',
]
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]

Training Details

Training Dataset

csv

  • Dataset: csv
  • Size: 132,997 training samples
  • Columns: anchor and positive
  • Approximate statistics based on the first 1000 samples:
    anchor positive
    type string string
    details
    • min: 6 tokens
    • mean: 16.75 tokens
    • max: 34 tokens
    • min: 17 tokens
    • mean: 172.75 tokens
    • max: 256 tokens
  • Samples:
    anchor positive
    Điều_kiện cần có của Văn_phòng công_chứng là gì ? " Điều 22 . Văn_phòng công_chứng 3 . Tên gọi của Văn_phòng công_chứng phải bao_gồm cụm_từ “ Văn_phòng công_chứng ” kèm theo họ tên của Trưởng Văn_phòng hoặc họ tên của một công_chứng_viên hợp_danh khác của Văn_phòng công_chứng do các công_chứng_viên hợp_danh thỏa_thuận , không được trùng hoặc gây nhầm_lẫn với tên của tổ_chức hành_nghề công_chứng khác , không được vi_phạm truyền_thống lịch_sử , văn_hóa , đạo_đức và thuần_phong mỹ_tục của dân_tộc . "
    Thứ_trưởng , Phó Thủ_trưởng cơ_quan ngang Bộ thực_hiện nhiệm_vụ theo sự phân_công của ai ? " Điều 3 . Bộ_trưởng 1 . Bộ_trưởng là thành_viên Chính_phủ và là người đứng đầu Bộ , lãnh_đạo công_tác của Bộ ; chịu trách_nhiệm quản_lý_nhà_nước về ngành , lĩnh_vực được phân_công ; tổ_chức thi_hành và theo_dõi việc thi_hành pháp_luật liên_quan đến ngành , lĩnh_vực được giao trong phạm_vi toàn_quốc . 2 . Bộ_trưởng làm_việc theo chế_độ thủ_trưởng và Quy_chế làm_việc của Chính_phủ , bảo_đảm nguyên_tắc tập_trung_dân_chủ . Điều 4 . Thứ_trưởng , Phó Thủ_trưởng cơ_quan ngang Bộ 1 . Thứ_trưởng , Phó Thủ_trưởng cơ_quan ngang Bộ ( sau đây gọi chung là Thứ_trưởng ) giúp Bộ_trưởng thực_hiện một hoặc một_số nhiệm_vụ cụ_thể do Bộ_trưởng phân_công và chịu trách_nhiệm trước Bộ_trưởng và trước pháp_luật về nhiệm_vụ được phân_công . Thứ_trưởng không kiêm người đứng đầu tổ_chức , đơn_vị thuộc Bộ , trừ trường_hợp đặc_biệt . Khi Bộ_trưởng vắng_mặt , một Thứ_trưởng được Bộ_trưởng ủy_nhiệm thay Bộ_trưởng điều_hành và giải_quyết công_việc của Bộ . 2 . Số_lượng Thứ_trưởng thực_hiện theo quy_định của Luật_Tổ_chức Chính_phủ . "
    Việc lựa_chọn xuất_bản_phẩm tham_khảo dùng chung trong các cơ_sở giáo_dục được quy_định thế_nào ? Lựa_chọn xuất_bản_phẩm tham_khảo dùng chung trong các cơ_sở giáo_dục 1 . Tổ / nhóm chuyên_môn , căn_cứ vào mục_tiêu , nội_dung chương_trình giáo_dục , sách_giáo_khoa , kế_hoạch thực_hiện nhiệm_vụ năm_học , các hoạt_động giáo_dục và đề_xuất của giáo_viên để lựa_chọn , đề_xuất danh_mục xuất_bản_phẩm tham_khảo tối_thiểu liên_quan đến môn_học / lớp_học , hoạt_động giáo_dục . 2 . Định_kì vào đầu năm_học , thủ_trưởng cơ_sở giáo_dục thành_lập Hội_đồng để xem_xét , lựa_chọn , đề_xuất danh_mục xuất_bản_phẩm tham_khảo trên cơ_sở đề_xuất của các tổ / nhóm chuyên_môn . Thành_phần tối_thiểu của Hội_đồng gồm : Lãnh_đạo cơ_sở giáo_dục phụ_trách chuyên_môn , tổ / nhóm trưởng chuyên_môn và viên_chức phụ_trách thư_viện trong cơ_sở giáo_dục . 3 . Thủ_trưởng cơ_sở giáo_dục quyết_định phê_duyệt danh_mục xuất_bản_phẩm tham_khảo tối_thiểu để có kế_hoạch mua_sắm và sử_dụng hằng năm trong cơ_sở giáo_dục trên cơ_sở đề_xuất của Hội_đồng lựa_chọn xuất_bản_phẩm tham_khảo , cân_đối nguồn kinh_phí , quy_mô của cơ_sở giáo_dục , số_lượng và chất_lượng xuất_bản_phẩm tham_khảo đã có tại cơ_sở giáo_dục .
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim"
    }
    

Evaluation Dataset

csv

  • Dataset: csv
  • Size: 132,997 evaluation samples
  • Columns: anchor and positive
  • Approximate statistics based on the first 1000 samples:
    anchor positive
    type string string
    details
    • min: 6 tokens
    • mean: 17.13 tokens
    • max: 57 tokens
    • min: 7 tokens
    • mean: 173.11 tokens
    • max: 256 tokens
  • Samples:
    anchor positive
    Hoàn lại số tiền lừa_đảo thì có được nhẹ_tội hơn không ? " Điều 51 . Các tình_tiết giảm nhẹ trách_nhiệm hình_sự 1 . Các tình_tiết sau đây là tình_tiết giảm nhẹ trách_nhiệm hình_sự : a ) Người phạm_tội đã ngăn_chặn hoặc làm giảm bớt tác_hại của tội_phạm ; b ) Người phạm_tội tự_nguyện sửa_chữa , bồi_thường thiệt_hại hoặc khắc_phục hậu_quả ; c ) Phạm_tội trong trường_hợp vượt quá giới_hạn phòng_vệ chính_đáng ; d ) Phạm_tội trong trường_hợp vượt quá yêu_cầu của tình_thế cấp_thiết ; đ ) Phạm_tội trong trường_hợp vượt quá mức cần_thiết khi bắt_giữ người phạm_tội ; e ) Phạm_tội trong trường_hợp bị kích_động về tinh_thần do hành_vi trái pháp_luật của nạn_nhân gây ra ; g ) Phạm_tội vì hoàn_cảnh đặc_biệt khó_khăn mà không phải do mình tự gây ra ; h ) Phạm_tội nhưng chưa gây thiệt_hại hoặc gây thiệt_hại không lớn ; i ) Phạm_tội lần đầu và thuộc trường_hợp ít nghiêm_trọng ; k ) Phạm_tội vì bị người khác đe_dọa hoặc cưỡng_bức ; l ) Phạm_tội trong trường_hợp bị hạn_chế khả_năng nhận_thức mà không phải do lỗi của mình gây ra ; m ) Phạm_tội do lạc_hậu ; n ) Người phạm_tội là phụ_nữ có_thai ; o ) Người phạm_tội là người đủ 70 tuổi trở lên ; p ) Người phạm_tội là người khuyết_tật nặng hoặc khuyết_tật đặc_biệt nặng ; q ) Người phạm_tội là người có bệnh bị hạn_chế khả_năng nhận_thức hoặc khả_năng điều_khiển hành_vi của mình ; r ) Người phạm_tội tự_thú ; s ) Người phạm_tội thành_khẩn khai_báo , ăn_năn hối_cải ; t ) Người phạm_tội tích_cực hợp_tác với cơ_quan có trách_nhiệm trong việc phát_hiện tội_phạm hoặc trong quá_trình giải_quyết vụ án ; u ) Người phạm_tội đã lập_công chuộc tội ; v ) Người phạm_tội là người có thành_tích xuất_sắc trong sản_xuất , chiến_đấu , học_tập hoặc công_tác ; x ) Người phạm_tội là người có công với cách_mạng hoặc là cha , mẹ , vợ , chồng , con của liệt_sĩ . 2 . Khi quyết_định hình_phạt , Tòa_án có_thể coi đầu_thú hoặc tình_tiết khác là tình_tiết giảm nhẹ , nhưng phải ghi rõ lý_do giảm nhẹ trong bản_án . 3 . Các tình_tiết giảm nhẹ đã được Bộ_luật này quy_định là dấu_hiệu định_tội hoặc định_khung thì không được coi là tình_tiết giảm nhẹ trong khi quyết_định hình_phạt . "
    Quy_trình phát_mại tài_sản bao_gồm các bước nào ? “ Điều 307 . Thanh_toán số tiền có được từ việc xử_lý tài_sản cầm_cố , thế_chấp 1 . Số tiền có được từ việc xử_lý tài_sản cầm_cố , thế_chấp sau khi thanh_toán chi_phí bảo_quản , thu_giữ và xử_lý tài_sản cầm_cố , thế_chấp được thanh_toán theo thứ_tự ưu_tiên quy_định tại Điều 308 của Bộ_luật này . 2 . Trường_hợp số tiền có được từ việc xử_lý tài_sản cầm_cố , thế_chấp sau khi thanh_toán chi_phí bảo_quản , thu_giữ và xử_lý tài_sản cầm_cố , thế_chấp lớn hơn giá_trị nghĩa_vụ được bảo_đảm thì số tiền chênh_lệch phải được trả cho bên bảo_đảm . 3 . Trường_hợp số tiền có được từ việc xử_lý tài_sản cầm_cố , thế_chấp sau khi thanh_toán chi_phí bảo_quản , thu_giữ và xử_lý tài_sản cầm_cố , thế_chấp nhỏ hơn giá_trị nghĩa_vụ được bảo_đảm thì phần nghĩa_vụ chưa được thanh_toán được xác_định là nghĩa_vụ không có bảo_đảm , trừ trường_hợp các bên có thỏa_thuận bổ_sung tài_sản bảo_đảm . Bên nhận bảo_đảm có quyền yêu_cầu bên có nghĩa_vụ được bảo_đảm phải thực_hiện phần nghĩa_vụ chưa được thanh_toán . ”
    Người lao_động đang trong thời_gian nghỉ thai_sản thì có đóng đoàn phí công_đoàn không ? " Điều 23 . Đối_tượng , mức đóng , tiền_lương làm căn_cứ đóng đoàn phí [ ... ] 6 . Đoàn_viên công_đoàn hưởng trợ_cấp Bảo_hiểm_xã_hội từ 01 tháng trở lên , trong thời_gian hưởng trợ_cấp không phải đóng đoàn phí ; đoàn_viên công_đoàn không có việc_làm , không có thu_nhập , nghỉ_việc riêng từ 01 tháng trở lên không hưởng tiền_lương , trong thời_gian đó không phải đóng đoàn phí ” .
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim"
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: steps
  • per_device_train_batch_size: 32
  • per_device_eval_batch_size: 32
  • num_train_epochs: 5
  • warmup_ratio: 0.1
  • fp16: True
  • eval_on_start: 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: 5e-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: 5
  • max_steps: -1
  • lr_scheduler_type: linear
  • 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: 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: False
  • ignore_data_skip: False
  • fsdp: []
  • fsdp_min_num_params: 0
  • fsdp_config: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}
  • fsdp_transformer_layer_cls_to_wrap: None
  • accelerator_config: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}
  • deepspeed: None
  • label_smoothing_factor: 0.0
  • optim: adamw_torch
  • 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
  • eval_on_start: True
  • use_liger_kernel: False
  • eval_use_gather_object: False
  • batch_sampler: no_duplicates
  • multi_dataset_batch_sampler: proportional

Training Logs

Epoch Step Training Loss Validation Loss
0 0 - 0.4612
0.2424 500 0.1944 -
0.4847 1000 0.1022 0.0650
0.7271 1500 0.0883 -
0.9695 2000 0.0762 0.0594
1.2118 2500 0.0686 -
1.4542 3000 0.0407 0.0508
1.6966 3500 0.0275 -
1.9389 4000 0.0209 0.0487
2.1813 4500 0.0209 -
2.4237 5000 0.013 0.0495
2.6660 5500 0.0103 -
2.9084 6000 0.0072 0.0416
3.1508 6500 0.0086 -
3.3931 7000 0.005 0.0387
3.6355 7500 0.0038 -
3.8778 8000 0.0032 0.0314
4.1202 8500 0.0037 -
4.3626 9000 0.0027 0.0381
4.6049 9500 0.0018 -
4.8473 10000 0.0017 0.0360

Framework Versions

  • Python: 3.10.14
  • Sentence Transformers: 3.2.1
  • Transformers: 4.45.1
  • PyTorch: 2.4.0
  • Accelerate: 0.34.2
  • Datasets: 3.0.1
  • Tokenizers: 0.20.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
1,063
Safetensors
Model size
135M params
Tensor type
F32
·
Inference Examples
This model does not have enough activity to be deployed to Inference API (serverless) yet. Increase its social visibility and check back later, or deploy to Inference Endpoints (dedicated) instead.

Model tree for Cloyne/vietnamese-sbert-v3

Finetuned
(2)
this model