SentenceTransformer
This is a sentence-transformers model trained. It maps sentences & paragraphs to a 1024-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
- Maximum Sequence Length: 8192 tokens
- Output Dimensionality: 1024 dimensions
- Similarity Function: Cosine Similarity
Model Sources
- Documentation: Sentence Transformers Documentation
- Repository: Sentence Transformers on GitHub
- Hugging Face: Sentence Transformers on Hugging Face
Full Model Architecture
SentenceTransformer(
(0): Transformer({'max_seq_length': 8192, 'do_lower_case': False}) with Transformer model: XLMRobertaModel
(1): Pooling({'word_embedding_dimension': 1024, 'pooling_mode_cls_token': True, 'pooling_mode_mean_tokens': False, '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("binh230/bge-m3-finetuned-2")
# Run inference
sentences = [
'Người thực hiện việc uỷ thác toàn bộ hoặc một phần việc vận chuyển hàng hoá bằng đường biển được gọi là ai?',
'Điều 72. Các bên liên quan đến hợp đồng vận chuyển hàng hoá bằng đường biển\n1. Người thuê vận chuyển là người tự mình hoặc uỷ quyền cho người khác giao kết hợp đồng vận chuyển hàng hoá bằng đường biển với người vận chuyển. Trong trường hợp hợp đồng vận chuyển theo chứng từ vận chuyển, người thuê vận chuyển được gọi là người gửi hàng.\n2. Người vận chuyển là người tự mình hoặc uỷ quyền cho người khác giao kết hợp đồng vận chuyển hàng hoá bằng đường biển với người thuê vận chuyển.\n3. Người vận chuyển thực tế là người được người vận chuyển uỷ thác thực hiện toàn bộ hoặc một phần việc vận chuyển hàng hoá bằng đường biển.\n4. Người giao hàng là người tự mình hoặc được người khác uỷ thác giao hàng cho người vận chuyển theo hợp đồng vận chuyển hàng hoá bằng đường biển.\n5. Người nhận hàng là người có quyền nhận hàng theo quy định tại Điều 89 và Điều 110 của Bộ luật này.',
'Điều 49. Địa vị pháp lý của thuyền trưởng\n1. Thuyền trưởng là người có quyền chỉ huy cao nhất ở trên tàu biển, chỉ huy tàu theo chế độ thủ trưởng. Mọi người có mặt trên tàu biển phải chấp hành mệnh lệnh của thuyền trưởng.\n2. Thuyền trưởng chịu sự chỉ đạo của chủ tàu hoặc người thuê tàu, người khai thác tàu.',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 1024]
# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Evaluation
Metrics
Information Retrieval
- Evaluated with
InformationRetrievalEvaluator
Metric | Value |
---|---|
cosine_accuracy@1 | 0.2468 |
cosine_accuracy@3 | 0.7418 |
cosine_accuracy@5 | 0.8261 |
cosine_accuracy@10 | 0.9197 |
cosine_precision@1 | 0.2468 |
cosine_precision@3 | 0.2473 |
cosine_precision@5 | 0.1652 |
cosine_precision@10 | 0.092 |
cosine_recall@1 | 0.2468 |
cosine_recall@3 | 0.7418 |
cosine_recall@5 | 0.8261 |
cosine_recall@10 | 0.9197 |
cosine_ndcg@10 | 0.5917 |
cosine_mrr@10 | 0.4847 |
cosine_map@100 | 0.4893 |
Training Details
Training Dataset
Unnamed Dataset
- Size: 68,042 training samples
- Columns:
sentence_0
andsentence_1
- Approximate statistics based on the first 1000 samples:
sentence_0 sentence_1 type string string details - min: 10 tokens
- mean: 26.53 tokens
- max: 142 tokens
- min: 23 tokens
- mean: 225.01 tokens
- max: 634 tokens
- Samples:
sentence_0 sentence_1 Tổ chức phát hành có trách nhiệm gì khi quản lý tài khoản vốn phát hành chứng khoán bằng ngoại tệ?
Điều 8. Trách nhiệm của tổ chức phát hành
1. Thực hiện việc mở, đóng và sử dụng tài khoản vốn phát hành chứng khoán bằng ngoại tệ theo đúng quy định tại Thông tư này và các văn bản pháp luật có liên quan.
2. Kê khai trung thực, đầy đủ nội dung thu, chi trên tài khoản vốn phát hành chứng khoán bằng ngoại tệ; Cung cấp các chứng từ, tài liệu liên quan đến việc mở và sử dụng tài khoản vốn phát hành chứng khoán bằng ngoại tệ theo yêu cầu và hướng dẫn của tổ chức tín dụng được phép.Đơn vị nào có quyền yêu cầu cung cấp chứng từ liên quan đến việc sử dụng tài khoản vốn phát hành chứng khoán bằng ngoại tệ và tổ chức phát hành phải tuân thủ như thế nào?
Điều 8. Trách nhiệm của tổ chức phát hành
1. Thực hiện việc mở, đóng và sử dụng tài khoản vốn phát hành chứng khoán bằng ngoại tệ theo đúng quy định tại Thông tư này và các văn bản pháp luật có liên quan.
2. Kê khai trung thực, đầy đủ nội dung thu, chi trên tài khoản vốn phát hành chứng khoán bằng ngoại tệ; Cung cấp các chứng từ, tài liệu liên quan đến việc mở và sử dụng tài khoản vốn phát hành chứng khoán bằng ngoại tệ theo yêu cầu và hướng dẫn của tổ chức tín dụng được phép.Tổ chức tín dụng có trách nhiệm gì khi liên quan đến tài khoản vốn phát hành chứng khoán bằng ngoại tệ?
Điều 9. Trách nhiệm của tổ chức tín dụng được phép
1. Thực hiện việc mở, đóng và sử dụng tài khoản vốn phát hành chứng khoán bằng ngoại tệ phù hợp với quy định tại Thông tư này và các văn bản pháp luật có liên quan.
2. Kiểm tra, lưu giữ các tài liệu, chứng từ liên quan đến các giao dịch thu, chi được thực hiện trên tài khoản vốn phát hành chứng khoán bằng ngoại tệ của tổ chức phát hành để đảm bảo việc cung ứng dịch vụ ngoại hối được thực hiện đúng mục đích và phù hợp với quy định của pháp luật.
3. Thực hiện chế độ báo cáo theo quy định tại Điều 10 Thông tư này. - Loss:
MultipleNegativesRankingLoss
with these parameters:{ "scale": 20.0, "similarity_fct": "cos_sim" }
Training Hyperparameters
Non-Default Hyperparameters
eval_strategy
: stepsper_device_train_batch_size
: 10per_device_eval_batch_size
: 10num_train_epochs
: 1multi_dataset_batch_sampler
: round_robin
All Hyperparameters
Click to expand
overwrite_output_dir
: Falsedo_predict
: Falseeval_strategy
: stepsprediction_loss_only
: Trueper_device_train_batch_size
: 10per_device_eval_batch_size
: 10per_gpu_train_batch_size
: Noneper_gpu_eval_batch_size
: Nonegradient_accumulation_steps
: 1eval_accumulation_steps
: Nonetorch_empty_cache_steps
: Nonelearning_rate
: 5e-05weight_decay
: 0.0adam_beta1
: 0.9adam_beta2
: 0.999adam_epsilon
: 1e-08max_grad_norm
: 1num_train_epochs
: 1max_steps
: -1lr_scheduler_type
: linearlr_scheduler_kwargs
: {}warmup_ratio
: 0.0warmup_steps
: 0log_level
: passivelog_level_replica
: warninglog_on_each_node
: Truelogging_nan_inf_filter
: Truesave_safetensors
: Truesave_on_each_node
: Falsesave_only_model
: Falserestore_callback_states_from_checkpoint
: Falseno_cuda
: Falseuse_cpu
: Falseuse_mps_device
: Falseseed
: 42data_seed
: Nonejit_mode_eval
: Falseuse_ipex
: Falsebf16
: Falsefp16
: Falsefp16_opt_level
: O1half_precision_backend
: autobf16_full_eval
: Falsefp16_full_eval
: Falsetf32
: Nonelocal_rank
: 0ddp_backend
: Nonetpu_num_cores
: Nonetpu_metrics_debug
: Falsedebug
: []dataloader_drop_last
: Falsedataloader_num_workers
: 0dataloader_prefetch_factor
: Nonepast_index
: -1disable_tqdm
: Falseremove_unused_columns
: Truelabel_names
: Noneload_best_model_at_end
: Falseignore_data_skip
: Falsefsdp
: []fsdp_min_num_params
: 0fsdp_config
: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}fsdp_transformer_layer_cls_to_wrap
: Noneaccelerator_config
: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}deepspeed
: Nonelabel_smoothing_factor
: 0.0optim
: adamw_torchoptim_args
: Noneadafactor
: Falsegroup_by_length
: Falselength_column_name
: lengthddp_find_unused_parameters
: Noneddp_bucket_cap_mb
: Noneddp_broadcast_buffers
: Falsedataloader_pin_memory
: Truedataloader_persistent_workers
: Falseskip_memory_metrics
: Trueuse_legacy_prediction_loop
: Falsepush_to_hub
: Falseresume_from_checkpoint
: Nonehub_model_id
: Nonehub_strategy
: every_savehub_private_repo
: Nonehub_always_push
: Falsegradient_checkpointing
: Falsegradient_checkpointing_kwargs
: Noneinclude_inputs_for_metrics
: Falseinclude_for_metrics
: []eval_do_concat_batches
: Truefp16_backend
: autopush_to_hub_model_id
: Nonepush_to_hub_organization
: Nonemp_parameters
:auto_find_batch_size
: Falsefull_determinism
: Falsetorchdynamo
: Noneray_scope
: lastddp_timeout
: 1800torch_compile
: Falsetorch_compile_backend
: Nonetorch_compile_mode
: Nonedispatch_batches
: Nonesplit_batches
: Noneinclude_tokens_per_second
: Falseinclude_num_input_tokens_seen
: Falseneftune_noise_alpha
: Noneoptim_target_modules
: Nonebatch_eval_metrics
: Falseeval_on_start
: Falseuse_liger_kernel
: Falseeval_use_gather_object
: Falseaverage_tokens_across_devices
: Falseprompts
: Nonebatch_sampler
: batch_samplermulti_dataset_batch_sampler
: round_robin
Training Logs
Epoch | Step | Training Loss | cosine_ndcg@10 |
---|---|---|---|
0.0735 | 500 | 0.0157 | - |
0.1470 | 1000 | 0.0231 | - |
0.2204 | 1500 | 0.0191 | - |
0.2939 | 2000 | 0.0179 | - |
0.3674 | 2500 | 0.0153 | - |
0.4409 | 3000 | 0.017 | - |
0.4702 | 3200 | - | 0.5705 |
0.5143 | 3500 | 0.0181 | - |
0.5878 | 4000 | 0.0131 | - |
0.6613 | 4500 | 0.0129 | - |
0.7348 | 5000 | 0.012 | - |
0.8082 | 5500 | 0.0117 | - |
0.8817 | 6000 | 0.0096 | - |
0.9405 | 6400 | - | 0.5906 |
0.9552 | 6500 | 0.0111 | - |
1.0 | 6805 | - | 0.5917 |
Framework Versions
- Python: 3.10.10
- Sentence Transformers: 3.3.1
- Transformers: 4.47.0
- PyTorch: 2.2.1+cu121
- Accelerate: 1.2.0
- Datasets: 3.1.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",
}
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
- 13
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.
Evaluation results
- Cosine Accuracy@1 on Unknownself-reported0.247
- Cosine Accuracy@3 on Unknownself-reported0.742
- Cosine Accuracy@5 on Unknownself-reported0.826
- Cosine Accuracy@10 on Unknownself-reported0.920
- Cosine Precision@1 on Unknownself-reported0.247
- Cosine Precision@3 on Unknownself-reported0.247
- Cosine Precision@5 on Unknownself-reported0.165
- Cosine Precision@10 on Unknownself-reported0.092
- Cosine Recall@1 on Unknownself-reported0.247
- Cosine Recall@3 on Unknownself-reported0.742