Edit model card

SentenceTransformer based on intfloat/multilingual-e5-base

This is a sentence-transformers model finetuned from intfloat/multilingual-e5-base. 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: intfloat/multilingual-e5-base
  • Maximum Sequence Length: 512 tokens
  • Output Dimensionality: 768 tokens
  • Similarity Function: Cosine Similarity

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: XLMRobertaModel 
  (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})
  (2): Normalize()
)

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("sentence_transformers_model_id")
# Run inference
sentences = [
    'Sự khác biệt chính giữa hóa đơn điện tử có mã của cơ quan thuế và hóa đơn điện tử không có mã của cơ quan thuế là gì?',
    'Điều 89. Hóa đơn điện tử 1. Hóa đơn điện tử là hóa đơn có mã hoặc không có mã của cơ quan thuế được thể hiện ở dạng dữ liệu điện tử do tổ chức, cá nhân bán hàng hóa, cung cấp dịch vụ lập, ghi nhận thông tin bán hàng hóa, cung cấp dịch vụ theo quy định của pháp luật về kế toán, pháp luật về thuế bằng phương tiện điện tử, bao gồm cả trường hợp hóa đơn được khởi tạo từ máy tính tiền có kết nối chuyển dữ liệu điện tử với cơ quan thuế. \n2. Hóa đơn điện tử bao gồm hóa đơn giá trị gia tăng, hóa đơn bán hàng, tem điện tử, vé điện tử, thẻ điện tử, phiếu thu điện tử, phiếu xuất kho kiêm vận chuyển điện tử hoặc các chứng từ điện tử có tên gọi khác. 3. Hóa đơn điện tử có mã của cơ quan thuế là hóa đơn điện tử được cơ quan thuế cấp mã trước khi tổ chức, cá nhân bán hàng hóa, cung cấp dịch vụ gửi cho người mua. Mã của cơ quan thuế trên hóa đơn điện tử bao gồm số giao dịch là một dãy số duy nhất do hệ thống của cơ quan thuế tạo ra và một chuỗi ký tự được cơ quan thuế mã hóa dựa trên thông tin của người bán lập trên hóa đơn. 4. Hóa đơn điện tử không có mã của cơ quan thuế là hóa đơn điện tử do tổ chức bán hàng hóa, cung cấp dịch vụ gửi cho người mua không có mã của cơ quan thuế. 5. Chính phủ quy định chi tiết Điều này.',
    'Điều 14. Cung cấp dịch vụ hóa đơn điện tử 1. Trường hợp sử dụng hóa đơn điện tử có mã của cơ quan thuế không phải trả tiền dịch vụ trong thời gian 12 tháng kể từ khi bắt đầu sử dụng hóa đơn điện tử gồm: a) Doanh nghiệp nhỏ và vừa, hợp tác xã, hộ, cá nhân kinh doanh tại địa bàn có điều kiện kinh tế - xã hội khó khăn, địa bàn có điều kiện kinh tế - xã hội đặc biệt khó khăn. Địa bàn có điều kiện kinh tế - xã hội khó khăn, địa bàn có điều kiện kinh tế - xã hội đặc biệt khó khăn thực hiện theo Danh mục địa bàn ưu đãi đầu tư ban hành kèm theo Nghị định số 118/2015/NĐ-CP ngày 12 tháng 11 năm 2015 của Chính phủ quy định chi tiết và hướng dẫn thi hành một số điều của Luật Đầu tư và các văn bản sửa đổi, bổ sung hoặc thay thế nếu có. b) Doanh nghiệp nhỏ và vừa khác theo đề nghị của Ủy ban nhân dân tỉnh, thành phố trực thuộc Trung ương gửi Bộ Tài chính trừ doanh nghiệp hoạt động tại các khu kinh tế, khu công nghiệp, khu công nghệ cao. Tổng cục Thuế thực hiện hoặc ủy thác cho tổ chức cung cấp dịch vụ về hóa đơn điện tử thực hiện cung cấp hóa đơn điện tử có mã của cơ quan thuế không phải trả tiền dịch vụ cho các đối tượng nêu trên. 2. Các doanh nghiệp, tổ chức kinh tế, hộ, cá nhân kinh doanh không thuộc trường hợp quy định tại khoản 1 Điều này khi sử dụng hóa đơn điện tử có mã của cơ quan thuế, sử dụng hóa đơn điện tử không có mã của cơ quan thuế thông qua tổ chức cung cấp dịch vụ hóa đơn điện tử thực hiện trả tiền dịch vụ theo Hợp đồng ký giữa các bên',
]
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.9444
cosine_accuracy@3 0.9848
cosine_accuracy@5 1.0
cosine_accuracy@10 1.0
cosine_precision@1 0.9444
cosine_precision@3 0.3283
cosine_precision@5 0.2
cosine_precision@10 0.1
cosine_recall@1 0.9444
cosine_recall@3 0.9848
cosine_recall@5 1.0
cosine_recall@10 1.0
cosine_ndcg@10 0.9756
cosine_mrr@10 0.9673
cosine_map@100 0.9673
dot_accuracy@1 0.9444
dot_accuracy@3 0.9848
dot_accuracy@5 1.0
dot_accuracy@10 1.0
dot_precision@1 0.9444
dot_precision@3 0.3283
dot_precision@5 0.2
dot_precision@10 0.1
dot_recall@1 0.9444
dot_recall@3 0.9848
dot_recall@5 1.0
dot_recall@10 1.0
dot_ndcg@10 0.9756
dot_mrr@10 0.9673
dot_map@100 0.9673

Training Details

Training Dataset

Unnamed Dataset

  • Size: 786 training samples
  • Columns: sentence_0 and sentence_1
  • Approximate statistics based on the first 786 samples:
    sentence_0 sentence_1
    type string string
    details
    • min: 13 tokens
    • mean: 38.75 tokens
    • max: 141 tokens
    • min: 7 tokens
    • mean: 245.64 tokens
    • max: 512 tokens
  • Samples:
    sentence_0 sentence_1
    Theo Điều 67 của Luật Bảo hiểm xã hội, những trường hợp nào được hưởng trợ cấp tuất hằng tháng? Điều 67. Các trường hợp hưởng trợ cấp tuất hằng tháng 1. Những người quy định tại khoản 1 và khoản 3 Điều 66 của Luật này thuộc một trong các trường hợp sau đây khi chết thì thân nhân được hưởng tiền tuất hằng tháng: a) Đã đóng bảo hiểm xã hội đủ 15 năm trở lên nhưng chưa hưởng bảo hiểm xã hội một lần; b) Đang hưởng lương hưu; c) Chết do tai nạn lao động, bệnh nghề nghiệp; d) Đang hưởng trợ cấp tai nạn lao động, bệnh nghề nghiệp hằng tháng với mức suy giảm khả năng lao động từ 61% trở lên. 2. Thân nhân của những người quy định tại khoản 1 Điều này được hưởng trợ cấp tuất hằng tháng, bao gồm: a) Con chưa đủ 18 tuổi; con từ đủ 18 tuổi trở lên nếu bị suy giảm khả năng lao

    động từ 81% trở lên; con được sinh khi người bố chết mà người mẹ đang mang thai; b) Vợ từ đủ 55 tuổi trở lên hoặc chồng từ đủ 60 tuổi trở lên; vợ dưới 55 tuổi, chồng dưới 60 tuổi nếu bị suy giảm khả năng lao động từ 81% trở lên; c) Cha đẻ, mẹ đẻ, cha đẻ của vợ hoặc cha đẻ của chồng, mẹ đẻ của vợ hoặc mẹ đẻ của chồng, thành viên khác trong gia đình mà người tham gia bảo hiểm xã hội đang có nghĩa vụ nuôi dưỡng theo quy định của pháp luật về hôn nhân và gia đình nếu từ đủ 60 tuổi trở lên đối với nam, từ đủ 55 tuổi trở lên đối với nữ; d) Cha đẻ, mẹ đẻ, cha đẻ của vợ hoặc cha đẻ của chồng, mẹ đẻ của vợ hoặc mẹ đẻ của chồng, thành viên khác trong gia đình mà người tham gia bảo hiểm xã hội đang có nghĩa vụ nuôi dưỡng theo quy định của pháp luật về hôn nhân và gia đình nếu dưới 60 tuổi đối với nam, dưới 55 tuổi đối với nữ và bị suy giảm khả năng lao động từ 81% trở lên. 3. Thân nhân quy định tại các điểm b, c và d khoản 2 Điều này phải không có thu nhập hoặc có thu nhập hằng tháng nhưng thấp hơn mức lương cơ sở. Thu nhập theo quy định tại Luật này không bao gồm khoản trợ cấp theo quy định của pháp luật về ưu đãi người có công. 4.
    Thân nhân của người lao động được hưởng trợ cấp tuất hằng tháng bao gồm những ai và điều kiện để được hưởng là gì? Điều 67. Các trường hợp hưởng trợ cấp tuất hằng tháng 1. Những người quy định tại khoản 1 và khoản 3 Điều 66 của Luật này thuộc một trong các trường hợp sau đây khi chết thì thân nhân được hưởng tiền tuất hằng tháng: a) Đã đóng bảo hiểm xã hội đủ 15 năm trở lên nhưng chưa hưởng bảo hiểm xã hội một lần; b) Đang hưởng lương hưu; c) Chết do tai nạn lao động, bệnh nghề nghiệp; d) Đang hưởng trợ cấp tai nạn lao động, bệnh nghề nghiệp hằng tháng với mức suy giảm khả năng lao động từ 61% trở lên. 2. Thân nhân của những người quy định tại khoản 1 Điều này được hưởng trợ cấp tuất hằng tháng, bao gồm: a) Con chưa đủ 18 tuổi; con từ đủ 18 tuổi trở lên nếu bị suy giảm khả năng lao

    động từ 81% trở lên; con được sinh khi người bố chết mà người mẹ đang mang thai; b) Vợ từ đủ 55 tuổi trở lên hoặc chồng từ đủ 60 tuổi trở lên; vợ dưới 55 tuổi, chồng dưới 60 tuổi nếu bị suy giảm khả năng lao động từ 81% trở lên; c) Cha đẻ, mẹ đẻ, cha đẻ của vợ hoặc cha đẻ của chồng, mẹ đẻ của vợ hoặc mẹ đẻ của chồng, thành viên khác trong gia đình mà người tham gia bảo hiểm xã hội đang có nghĩa vụ nuôi dưỡng theo quy định của pháp luật về hôn nhân và gia đình nếu từ đủ 60 tuổi trở lên đối với nam, từ đủ 55 tuổi trở lên đối với nữ; d) Cha đẻ, mẹ đẻ, cha đẻ của vợ hoặc cha đẻ của chồng, mẹ đẻ của vợ hoặc mẹ đẻ của chồng, thành viên khác trong gia đình mà người tham gia bảo hiểm xã hội đang có nghĩa vụ nuôi dưỡng theo quy định của pháp luật về hôn nhân và gia đình nếu dưới 60 tuổi đối với nam, dưới 55 tuổi đối với nữ và bị suy giảm khả năng lao động từ 81% trở lên. 3. Thân nhân quy định tại các điểm b, c và d khoản 2 Điều này phải không có thu nhập hoặc có thu nhập hằng tháng nhưng thấp hơn mức lương cơ sở. Thu nhập theo quy định tại Luật này không bao gồm khoản trợ cấp theo quy định của pháp luật về ưu đãi người có công. 4.
    Theo quy định tại Luật Bảo hiểm xã hội, thân nhân được hưởng trợ cấp tuất hằng tháng khi nào? 3. Thân nhân quy định tại các điểm b, c và d khoản 2 Điều này phải không có thu nhập hoặc có thu nhập hằng tháng nhưng thấp hơn mức lương cơ sở. Thu nhập theo quy định tại Luật này không bao gồm khoản trợ cấp theo quy định của pháp luật về ưu đãi người có công. 4. Thời hạn đề nghị khám giám định mức suy giảm khả năng lao động để hưởng trợ cấp tuất hằng tháng như sau: a) Trong thời hạn 04 tháng kể từ ngày người tham gia bảo hiểm xã hội chết thì thân nhân có nguyện vọng phải nộp đơn đề nghị; b) Trong thời hạn 04 tháng trước hoặc sau thời điểm thân nhân quy định tại điểm a khoản 2 Điều này hết thời hạn hưởng trợ cấp theo quy định thì thân nhân có nguyện vọng phải nộp đơn đề nghị.
  • 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: 10
  • per_device_eval_batch_size: 10
  • num_train_epochs: 4
  • multi_dataset_batch_sampler: round_robin

All Hyperparameters

Click to expand
  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: steps
  • prediction_loss_only: True
  • per_device_train_batch_size: 10
  • per_device_eval_batch_size: 10
  • 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
  • num_train_epochs: 4
  • max_steps: -1
  • lr_scheduler_type: linear
  • lr_scheduler_kwargs: {}
  • warmup_ratio: 0.0
  • 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: 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: False
  • use_liger_kernel: False
  • eval_use_gather_object: False
  • batch_sampler: batch_sampler
  • multi_dataset_batch_sampler: round_robin

Training Logs

Epoch Step cosine_map@100
1.0 40 0.9505
1.25 50 0.9562
2.0 80 0.9602
2.5 100 0.9673

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
248
Safetensors
Model size
278M 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 bachngo/int-e5-base-5tv5

Finetuned
(27)
this model

Evaluation results