Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks
Paper • 1908.10084 • Published • 14
How to use Maluong/my-retriever-model with sentence-transformers:
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("Maluong/my-retriever-model")
sentences = [
"Tại phiên tòa phúc thẩm, bị cáo Phan Đình Q tiếp tục kêu oan về tội danh gì?",
"[26] Do vậy để có cơ sở xác định vị trí chỗ để xe ô tô, xe máy, sau khi nghe các đương sự trình bày tại phiên toà; xem xét văn bản giải thích của phía nguyên đơn kèm theo bản vẽ chi tiết, Hội đồng xét xử thấy phù hợp với bản vẽ thiết kế thi công và bản vẽ hoàn công do phía nguyên đơn cung cấp tại giai đoạn sơ thẩm, trên cơ sở đó xác định vị trí và diện tích chỗ để xe ô tô, xe máy tại hai tầng hầm toà nhà này làm căn cứ giải quyết vụ án.",
"[2] Phan Thành H và Từ Công T còn có hành vi phạm tội như sau: Bị cáo Từ Công T biết rõ bị cáo Phan Thành H chưa có giấy phép lái xe hạng FC và chưa đủ tuổi để được cấp giấy phép lái xe hạng FC, nhưng Từ Công T đã thuê một người ở Hải Phòng (T không biết rõ họ tên và địa chỉ) làm giấy phép lái xe hạng FC giả, số 520144004729 có ảnh của Phan Thành H, nhưng mang tên Lưu Văn C đưa cho Phan Thành H sử dụng nhằm lừa dối cơ quan chức năng khi điều khiển xe trên đường. Khi có giấy phép lái xe giả do Từ Công T cung cấp, Phan Thành H đã hai lần sử dụng giấy phép lái xe giả để lừa dối cảnh sát giao thông tỉnh Quảng Ngãi và Công an huyện L, tỉnh Hà Tĩnh. Hành vi sử dụng giấy phép lái xe giả lừa dối cơ quan chức năng nêu trên của Phan Thành H, thì Từ Công T đều biết.",
"Tại phiên tòa phúc thẩm, bị cáo Phan Đình Q tiếp tục kêu oan về tội danh, bị cáo cho rằng bị cáo không phạm tội giết người, mà chỉ phạm tội “Vi phạm quy định về điều khiển phương tiện giao thông đường bộ”, vì bị cáo không phạm tội giết người, nhưng có khi bị cáo lại khai sau khi xuống xem thì bị cáo thấy nạn nhân đã chết."
]
embeddings = model.encode(sentences)
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [4, 4]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.
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})
)
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 = [
'Tên chính thức của Án lệ số 57/2023/AL1 là gì?',
'ÁN LỆ SỐ 57/2023/AL1 Về hành vi gian dối nhằm tiếp cận tài sản trong tội “Cướp giật tài sản” Được Hội đồng Thẩm phán Tòa án nhân dân tối cao thông qua vào các ngày 01, 02, 03 tháng 02 năm 2023 và được công bố theo Quyết định số 39/QĐ-CA ngày 24 tháng 02 năm 2023 của Chánh án Tòa án nhân dân tối cao. Nguồn án lệ: Bản án hình sự phúc thẩm số 590/2020/HS-PT ngày 18/12/2020 của Toà án nhân dân Thành phố Hồ Chí Minh về vụ án “Cướp giật tài sản” đối với bị cáo Nguyễn Thành Quốc B. Vị trí nội dung án lệ: Đoạn 4 phần “Nhận định của Tòa án”. Khái quát nội dung của án lệ: - Tình huống án lệ: Bị cáo dùng thủ đoạn gian dối để người quản lý tài sản chuyển giao tài sản cho bị cáo, sau đó lợi dụng sơ hở để nhanh chóng tẩu thoát. - Giải pháp pháp lý: Trường hợp này, bị cáo phải bị truy cứu trách nhiệm hình sự về tội “Cướp giật tài sản”. Quy định của pháp luật liên quan đến án lệ: Điều 171 Bộ luật Hình sự năm 2015 (sửa đổi, bổ sung năm 2017). Từ khoá của án lệ: “Cướp giật tài sản”; “Thủ đoạn gian dối để tiếp cận tài sản”.',
'Vật chứng thu giữ gồm: - 01 (một) xe ô tô đầu kéo nhãn hiệu FREIGHTLINER, BKS: 77C-016.47, số loại: CL 120064S, sơn màu đỏ, số máy: 0933U0841843, số khung: 6CV36LX06844 cùng các giấy tờ liên quan đến xe; - 01 (một) giấy phép lái xe (thẻ nhựa) số: 520144004729, hạng FC giả mang tên Lưu Văn C; - 01 (một) giấy phép lái xe (thẻ nhựa) số: 5201600087, hạng C mang tên Phan Thành H do Sở GTVT tỉnh Bình Định cấp; - 01 (một) giấy chứng minh nhân dân số: 215341305, mang tên Phan Thành H do Công an tỉnh Bình Định cấp; - 01 (một) chiếc điện thoại di động hiệu ARBUTUS màu vàng, màn hình cảm ứng, số IMEI: 355052654004631, 355052654004649, máy đã qua sử dụng; - 01 (một) USB nhãn hiệu Kingston, dung lượng 8GB, trên bề mặt có chữ DT101 G2 có lưu trữ tập tin Video: IMG-1245.MOV thời lượng 00 phút 37 giây. - 01 (một) USB nhãn hiệu Apacer dung lượng 8GB lưu trữ 02 tập tin Video: IMG-0507.MOV thời lượng 02 phút 58 giây và Video: IMG-0509.MOV thời lượng 03 phút 04 giây. - 01 (một) USB nhãn hiệu Kingston, dung lượng 8GB, trên bề mặt có chữ DT101.G2 có lưu trữ tập tin Video: IMG-1689.MOV thời lượng 05 phút 10 giây. Cơ quan CSĐT Công an tỉnh Hà Tĩnh đã trả lại chiếc xe ô tô đầu kéo BKS: 77C-016.47 và các giấy tờ liên quan cho chủ sở hữu là Công ty TNHH vận tải và Thương mại tổng hợp T; 03 (ba) chiếc USB đang được lưu giữ theo hồ sơ vụ án, còn các vật chứng khác được chuyển đến Cục thi hành án dân sự tỉnh Hà Tĩnh để quản lý.',
]
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.7021, 0.0674],
# [0.7021, 1.0000, 0.0045],
# [0.0674, 0.0045, 1.0000]])
sentence_0 and sentence_1| sentence_0 | sentence_1 | |
|---|---|---|
| type | string | string |
| details |
|
|
| sentence_0 | sentence_1 |
|---|---|
Điều 15 Bộ luật Hình sự quy định về vấn đề gì? |
[5] Theo Kết luận giám định pháp y thương tích số 68/TTPY ngày 16/01/2019 của Trung tâm Pháp y Sở Y tế H: “Anh Hồng Quốc A bị chấn thương sọ não, hiện sống thực vật... Tỷ lệ tổn hại sức khoẻ là 100%”. Như vậy, trong vụ án này, các bị cáo đã cố ý thực hiện hành vi nhằm tước đoạt đoạt tính mạng của bị hại nhưng hậu quả chết người không xảy ra, thuộc trường hợp phạm tội chưa đạt quy định tại Điều 15 Bộ luật Hình sự.” |
Năm 1981, Quân khu 7 đã cấp 'Giấy phép quyền sở hữu sử dụng' cho ai đối với căn nhà số 63 đường B? |
[1] Nguồn gốc căn nhà số 63 (tầng 2) đường V, phường X, quận I (nay là đường B, phường H, quận I, Thành phố Hồ Chí Minh) là do Bộ tư lệnh Quân khu 7 tiếp quản, sử dụng từ sau ngày giải phóng Miền Nam. Năm 1981, Quân khu 7 cấp “Giấy phép quyền sở hữu sử dụng” số 092/QĐ ngày 16-4-1981 cho cụ Nguyễn Thanh T. Theo nội dung giấy phép, việc cấp nhà cho cụ T là “để tạo mọi điều kiện chỗ ăn, ở cho gia đình cán bộ, ổn định lâu dài và cấp do hoàn cảnh gia đình cán bộ không có nhà ở ”, tại thời điểm cấp bà Nguyễn Thị H và ông Nguyễn Văn T1 (con cụ T) sống chung với cụ T, có hộ khẩu thường trú tại căn nhà trên. Đến năm 1982, hai chị em bà Nguyễn Thị Kim L và ông Nguyễn Thanh H1 mới chuyển hộ khẩu về sống cùng cụ T. Như vậy, cụ T là người có công với cách mạng, nên được Quân khu 7 xét cấp nhà số 63 đường B nêu trên theo tiêu chuẩn của sĩ quan quân đội. Đến thời điểm cụ T chết năm 1995, cụ chưa làm thủ tục mua hóa giá nhà đối với nhà số 63 nêu trên. Theo quy định tại Điều 188 và Điều 634 Bộ luật Dân... |
Theo Đại diện Viện kiểm sát, hành vi phạm tội của bị cáo có tính chất, động cơ gì? |
Đại diện Viện kiểm sát nhân dân cấp cao tại Hà Nội: Sau khi kiểm tra tính có căn cứ pháp luật của bản án sơ thẩm và xét hỏi làm rõ tại phiên tòa, thì thấy: Tòa án cấp sơ thẩm kết án bị cáo Q về tội: “Giết người” là hoàn toàn có căn cứ pháp luật, bị cáo không nhận tội giết người chỉ là nhằm trốn tránh trách nhiệm hình sự về tội nặng hơn mà thôi. Hành vi phạm tội của bị cáo có tính chất, động cơ đê hèn, vì bị cáo muốn nạn nhân chết hẳn thì bị cáo mới cho xe đi tiếp. Vì vậy, đề nghị Hội đồng xét xử không áp dụng điểm n khoản 1 Điều 93 như nội dung kháng nghị mà cần áp dụng điểm q khoản 1 Điều 93 Bộ luật Hình sự để xét xử bị cáo và đề nghị Hội đồng xét xử của Tòa án cấp phúc thẩm chấp nhận nội dung kháng nghị, để xử tăng mức hình phạt tù đối với bị cáo Q. |
MultipleNegativesRankingLoss with these parameters:{
"scale": 20.0,
"similarity_fct": "cos_sim",
"gather_across_devices": false
}
per_device_train_batch_size: 16per_device_eval_batch_size: 16multi_dataset_batch_sampler: round_robinoverwrite_output_dir: Falsedo_predict: Falseeval_strategy: noprediction_loss_only: Trueper_device_train_batch_size: 16per_device_eval_batch_size: 16per_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: 3max_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: 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}parallelism_config: Nonedeepspeed: Nonelabel_smoothing_factor: 0.0optim: adamw_torch_fusedoptim_args: Noneadafactor: Falsegroup_by_length: Falselength_column_name: lengthproject: huggingfacetrackio_space_id: trackioddp_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: Falsehub_revision: Nonegradient_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: Noneinclude_tokens_per_second: Falseinclude_num_input_tokens_seen: noneftune_noise_alpha: Noneoptim_target_modules: Nonebatch_eval_metrics: Falseeval_on_start: Falseuse_liger_kernel: Falseliger_kernel_config: Noneeval_use_gather_object: Falseaverage_tokens_across_devices: Trueprompts: Nonebatch_sampler: batch_samplermulti_dataset_batch_sampler: round_robinrouter_mapping: {}learning_rate_mapping: {}| Epoch | Step | Training Loss |
|---|---|---|
| 1.5723 | 500 | 0.2665 |
@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",
}
@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}
}
Base model
bkai-foundation-models/vietnamese-bi-encoder