SentenceTransformer
This is a sentence-transformers model trained. 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
- Maximum Sequence Length: 256 tokens
- Output Dimensionality: 768 tokens
- 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': 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("tanbinh2210/onl_contrastive_onl_contrastive_mlm_phobert-base-v2_v2")
# Run inference
sentences = [
'Phiếu lương bao_gồm những nội_dung gì và cho biết_điều gì ?',
'PHÂN HỆ BẢNG LƯƠNG\nPhân hệ bảng lương giải_quyết bài_toán gì\nBảng lương là một trong những chứng_từ quan_trọng của doanh_nghiệp và là cơ_sở để các doanh_nghiệp tiến_hành thanh_toán tiền_lương cho nhân_viên ( bao_gồm lương cơ_bản , các loại phụ_cấp , tiền thưởng , các loại thu_nhập thêm khác , khấu_trừ ... )\nTrong hoạt_động của một doanh_nghiệp , tiền_lương luôn là vấn_đề phức_tạp khiến nhà_quản_lý đau_đầu , mệt_mỏi .\nBởi trong một doanh_nghiệp , mức lương của từng nhân_viên không giống nhau , đòi_hỏi sự tính_toán chi_tiết , chính_xác tiền_lương cho từng nhân_sự .\nĐồng_thời , vì tính cẩn_trọng cao nên yêu_cầu người thực_hiện cần phải có kỹ_năng phần_mềm tốt .\nCó_thể thấy , việc quản_lý tiền_lương không khoa_học dẫn tới nhiều hậu_quả khác nhau và khiến nhà_quản_lý mất nhiều thời_gian , công_sức vào mỗi kỳ tính lương .\nPhân hệ này sẽ giúp doanh_nghiệp giải_quyết các bài_toán , các nỗi đau :\nThực_hiện công_tác tính lương , bảo_hiểm , phí công_đoàn , làm thêm ngoài giờ ... cho người lao_động theo chính_sách và chế_độ hiện_hành .\nThanh_toán tiền_lương cho người lao_động chính_xác , kịp_thời theo quy_định đã cam_kết .\nPhân_tích tình_hình sử_dụng quỹ lương , bảo_hiểm_xã_hội , bảo_hiểm_y_tế , công_đoàn ...\nTheo_dõi quyết_toán thuế .',
'Thủ_tục 630c - Giải_quyết hưởng trợ_cấp dưỡng_sức , phục_hồi sức_khoẻ sau ốm_đau , thai_sản , tai_nạn lao_động , bệnh_nghề_nghiệp\nBạn muốn truy_cập nhanh đến phân hệ Bảo_hiểm 1 - IVAN ?\nTruy_cập vào phân hệ 1 - IVAN\nNội_dung\nTrường_hợp áp_dụng\nHướng_dẫn kê_khai\nTrường_hợp áp_dụng\nThủ_tục 630c được sử_dụng để kê_khai và giải_quyết chế_độ dưỡng_sức phục_hồi sức_khoẻ cho người lao_động .\nChế_độ này được áp_dụng cho những trường_hợp người lao_động đã trải qua một thời_gian ốm_đau , thai_sản , hoặc tai_nạn lao_động , cần thời_gian để hồi_phục sức_khoẻ trước khi quay trở_lại làm_việc .\nCác trường_hợp được hưởng chế_độ dưỡng_sức như sau :\nTrong 30 ngày đầu trở_lại làm_việc mà sức_khoẻ của người lao_động chưa phục_hồi , cụ_thể :\nSau thời_gian nghỉ hưởng chế_độ ốm_đau ( Ốm_đau dài ngày , ốm khác , phẫu_thuật ) .\nSau thời_gian hưởng chế_độ thai_sản ( Sinh_từ 02 con trở lên , sinh phẫu_thuật , sinh khác , sẩy_thai , nạo_thai ) .\nSau thời_gian điều_trị ổn_định thương_tật do TNLĐ hoặc bệnh_tật do BNN bị suy_giảm KNLĐ từ 15% trở lê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]
Training Details
Training Dataset
Unnamed Dataset
- Size: 71,432 training samples
- Columns:
question,passage, andlabel - Approximate statistics based on the first 1000 samples:
question passage label type string string int details - min: 8 tokens
- mean: 20.2 tokens
- max: 40 tokens
- min: 29 tokens
- mean: 182.13 tokens
- max: 256 tokens
- 0: ~90.90%
- 1: ~9.10%
- Samples:
question passage label Có_thể tạo mới hợp_đồng bán hàng từ phiếu thu_không ?Đơn hàng mua
Các tác_vụ trên đơn hàng mua
Người dùng có_thể thực_hiện các tác_vụ đối_với 1 đơn hàng mua chi_tiết theo 1 trong 2 cách sau :
Truy_cập vào 1 đơn hàng mua chi_tiết và thực_hiện các tác_vụ trên góc phải thanh header
Tại màn danh_sách , click chuột phải vào 1 đơn hàng mua và thực_hiện các tác_vụ
Các tác_vụ tại một đơn hàng mua chi_tiết
Bảng mô_tả các tác_vụ tại trang chi_tiết 1 đơn hàng mua :
Tên trường : Duyệt / Hoàn duyệt , Mô_tả : Người được cài_đặt là người duyệt đơn hàng mua / người có quyền quản_lý tất_cả sẽ có quyền thực_hiện tác_vụ Duyệt / Hoàn duyệt .
Tên trường : Phiếu chi , Mô_tả : Khi cần ghi_nhận các chi_phí hoặc thanh_toán với nhà_cung_cấp liên_quan đến đơn hàng .
Phiếu chi chỉ được tạo khi đơn hàng mua có trạng_thái đã duyệt .
Tên trường : Người theo_dõi , Mô_tả : Thêm người theo_dõi đơn hàng mua
Tên trường : Người phụ_trách , Mô_tả : Thêm người phụ_trách đơn hàng mua
Tên trường : Tình_trạng , Mô_tả : Cập_nhật tình_trạng đơn hàng mua : Đã thanh_toán , chưa thanh_toán , đã đi ngân_hàng ...
Lưu_ý : Tạo mới tình_trạng đơn hàng mua trong cài_đặt phân hệ Mua hàng
Tên trường : Xuất nhập kho , Mô_tả : Người dùng có_thể chọn : Phiếu nhập kho : Thực_hiện đưa sản_phẩm từ đơn hàng đã được duyệt vào trong kho .0Làm thế_nào để liên_kết một phiếu chuyển tiền với một công_việc đã tồn_tại trong hệ_thống ?Thực_hiện công_việc
Thực_hiện công_việc
Tác_vụ : Thực_hiện Cho_phép cập_nhật thêm người liên_quan đến công_việc , Người sử_dụng : Người thực_hiện .
Tác_vụ : Đầu việc Cho_phép tạo mới một checklist các đầu việc nhỏ liên_quan đến công_việc , Người sử_dụng : Người thực_hiện .
Tác_vụ : Chuyển công_việc Chuyển công_việc vào 1 dự_án hoặc công_việc cha đã tạo , Người sử_dụng : Người_quản_lý
Tác_vụ : Cập_nhật mô_tả công_việc Cho_phép cập_nhật mô_tả cho công_việc , Người sử_dụng : Ngưởi thực_hiện
Tác_vụ : Thêm tài_liệu Cho_phép thêm mới các file đính kém liên_quan đến công_việc , Người sử_dụng : Ngưởi thực_hiện / Người theo_dõi phối_hợp thực_hiện
Tác_vụ : Thêm sự_kiện Cho_phép tạo mới Sự_kiện liên_quan tại tab lịch biểu , Người sử_dụng : Ngưởi thực_hiện
Tác_vụ : Liên_kết Tạo liên_kết tới một đối_tượng khác trên 1Office , Người sử_dụng : Ngưởi thực_hiện0Trong màn_hình xác_thực bảo_mật 2 lớp khi đăng_nhập , nếu tôi chọn ' Không hỏi lại trên thiết_bị này ' thì điều này có nghĩa là gì ?Làm_sao để sử_dụng tính_năng xác_thực thiết_bị sử_dụng GPS ?
Bước 3 : Admin xác_thực thiết_bị
1 - Đăng_nhập tài_khoản admin
2 - Chọn_Cài đặt hệ_thống > Tài_khoản người dùng > Tab_Xác thực thiết_bị
3 - Admin thực_hiện tác_vụ Xác_thực hoặc Không xác_thực thiết_bị trong danh_sách
Sau khi thiết_bị đã được xác_thực , bạn sẽ có_thể sử_dụng tính_năng chấm công GPS trên hệ_thống 1 Office !
Lưu_ý : Nếu sau khi đã xác_thực thiết_bị thành_công mà không_thể chấm công_bằng GPS trên thiết_bị di_động thì bạn cần : Bước 1 : Đăng xuất khỏi tài_khoản và đóng app
Bước 2 : Vào cài_đặt điện_thoại > Chọn app 1Office > Bật nhận thông_báo
Bước 3 : Mở app và đăng_nhập tài_khoản
Bước 4 : Truy_cập màn GPS > Chọn_Gửi xác_thực thiết_bị ( Tại Bước 4 , hệ_thống sẽ lấy được mã thiết_bị và bạn có_thể chấm công GPS )0 - Loss:
OnlineContrastiveLoss
Evaluation Dataset
Unnamed Dataset
- Size: 7,937 evaluation samples
- Columns:
question,passage, andlabel - Approximate statistics based on the first 1000 samples:
question passage label type string string int details - min: 8 tokens
- mean: 20.14 tokens
- max: 38 tokens
- min: 24 tokens
- mean: 181.7 tokens
- max: 256 tokens
- 0: ~91.30%
- 1: ~8.70%
- Samples:
question passage label Sau khi import hồ_sơ nhân_sự hoàn_tất , 1Office có gửi thông_báo cho người dùng hay không ?Hồ_sơ nhân_sự
Bước 2 : Tạo mới và quản_lý hồ_sơ nhân_sự
2.1 . Tạo mới hồ_sơ nhân_sự
Sau khi hoàn_thành các cài_đặt Hồ_sơ nhân_sự , thực_hiện thêm mới đối_tượng Hồ_sơ nhân sựBước 2 : Tạo mới và quản_lý hồ_sơ nhân_sự
Có 02 cách để thêm mới đối_tượng Hồ_sơ nhân_sự :
Cách 1 : Tạo mới
Tạo mới là cách để thêm mới từng đối_tượng hồ_sơ nhân_sự .
Cách này thường sử_dụng khi cần thêm một_vài nhân_sự ( số_lượng ít )
Các bước cụ_thể :
Chọn biểu_tượng Tạo mới tại góc trên bên trái màn_hình > Chọn_Hồ sơ nhân_sự
tạo mới hồ_sơ nhân_sự
Nhập vào các thông_tin nhân_sự cần quản_lý tại màn_hình tạo mới .
Chọn các tab Sơ_yếu lý_lịch , Hợp_đồng , Bảo_hiểm , Sức_khoẻ , Tiếp_nhận , Đính kèm , Đối_tượng liên_quan để cập_nhật thông_tin tương_ứng
màn_hình tạo mới hồ_sơ nhân_sự
Lưu_ý : Các trường thông_tin có dấu * đỏ cạnh tên trường là bắt_buộc điền
Sau khi điền đầy_đủ các thông_tin , nhấn Cập_nhật để lưu lại thông_tin hồ_sơ nhân_sự
Cách 2 : Import dữ_liệu
Import là cách để thêm mới nhiều đối_tượng hồ_sơ nhân_sự trong 1 lần cập_nhật dựa theo dữ_liệu có sẵn thông_qua upload file Excel dữ_liệu có sẵn .
Cách này được sử_dụng để cập_nhật số_lượng nhiều hồ_sơ nhân_sự .
Các bước cụ_thể xem tại Hướng_dẫn Import_Hồ sơ nhân_sự0Sau khi tạo lịch cho toàn công_ty thành_công , ai sẽ là người nhận được thông_báo về lịch này ?Tôi muốn book phòng họp và quản_lý lịch phòng họp trên hệ_thống
1 . Để book phòng họp , bạn có_thể thực_hiện bằng cách :
Tạo mới Lịch biểu
Tại form tạo mới , mục Địa_điểm , phòng họp , phương_tiện , chọn đối_tượng Phòng họp và chọn Phòng họp cần book
tạo mới lịch có đặt phòng họp
Lưu_ý : Chỉ book được những phòng họp chưa có lịch trước đó , nếu phòng họp đó đã có lịch trùng với thời_gian bạn tạo , hệ_thống sẽ hiển_thị thông_báo
Chỉ book được những phòng họp đã được thêm mới vào hệ_thống và bạn có quyền sử_dụng .
2 . Để xem và quản_lý các lịch phòng họp , bạn thực_hiện các bước sau :
Truy_cập module Lịch biểu > > Chọn đối_tượng Phòng họp tại menu trái .
Hệ_thống hiển_thị danh_sách các lịch tương_ứng với các phòng họp .
Tại đây , bạn có_thể click vào bộ lọc tuỳ chỉnh để lọc theo tất_cả phòng họp hoặc phòng họp chờ duyệt .
màn danh_sách lịch phòng họp0Để xem báo_cáo chấm công theo từng phòng_ban , tôi có_thể lọc thông_tin này ở đâu trên màn_hình báo_cáo ?Quản_lý nghỉ bù
Bảng quản_lý nghỉ bù
1 . Mở phân hệ Chấm công
2 . Tại menu trái , chọn Ngày nghỉ > Bảng tổng_hợp bù
bảng quản_lý nghỉ bù
Bảng tác_vụ quản_lý nghỉ bù :
Tên tác_vụ và trường dữ_liệu : Chọn năm / chọn tháng , Mô_tả : Hiển_thị Lịch cho_phép lọc dữ_liệu nghỉ bù theo năm hoặc theo tháng .
Tên tác_vụ và trường dữ_liệu : Xem theo tháng / xem theo năm , Mô_tả : Chuyển chế_độ xem màn_hình quản_lý nghỉ bù theo tháng hoặc theo năm .
Bảng mô_tả các trường dữ_liệu quản_lý nghỉ bù :
Trường dữ_liệu : Tồn thực_tế , Mô_tả : Số giờ nghỉ bù còn tồn
Trường dữ_liệu : Sử_dụng , Mô_tả : Số giờ nghỉ bù đã sử_dụng
Trường dữ_liệu : Giờ làm thêm , Mô_tả : Tổng_số giờ làm thêm từ đơn làm thêm
Trường dữ_liệu : Hết hạn , Mô_tả : Số giờ nghỉ bù đã hết hạn
Trường dữ_liệu :
Ứng , Mô_tả : Số giờ nghỉ bù đã ứng0 - Loss:
OnlineContrastiveLoss
Training Hyperparameters
Non-Default Hyperparameters
overwrite_output_dir: Trueper_device_train_batch_size: 88per_device_eval_batch_size: 128gradient_accumulation_steps: 2learning_rate: 2e-05weight_decay: 0.01num_train_epochs: 15lr_scheduler_type: cosinewarmup_ratio: 0.1fp16: True
All Hyperparameters
Click to expand
overwrite_output_dir: Truedo_predict: Falseeval_strategy: noprediction_loss_only: Trueper_device_train_batch_size: 88per_device_eval_batch_size: 128per_gpu_train_batch_size: Noneper_gpu_eval_batch_size: Nonegradient_accumulation_steps: 2eval_accumulation_steps: Nonetorch_empty_cache_steps: Nonelearning_rate: 2e-05weight_decay: 0.01adam_beta1: 0.9adam_beta2: 0.999adam_epsilon: 1e-08max_grad_norm: 1.0num_train_epochs: 15max_steps: -1lr_scheduler_type: cosinelr_scheduler_kwargs: {}warmup_ratio: 0.1warmup_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: Truefp16_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: Falsehub_always_push: Falsegradient_checkpointing: Falsegradient_checkpointing_kwargs: Noneinclude_inputs_for_metrics: Falseeval_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: Falseeval_use_gather_object: Falsebatch_sampler: batch_samplermulti_dataset_batch_sampler: proportional
Training Logs
| Epoch | Step | Training Loss |
|---|---|---|
| 0.2463 | 100 | 0.1122 |
| 0.4926 | 200 | 0.1161 |
| 0.7389 | 300 | 0.0757 |
| 0.9852 | 400 | 0.0937 |
| 1.2315 | 500 | 0.1058 |
| 1.4778 | 600 | 0.1002 |
| 1.7241 | 700 | 0.1312 |
| 1.9704 | 800 | 0.1266 |
| 2.2167 | 900 | 0.095 |
| 2.4631 | 1000 | 0.1024 |
| 2.7094 | 1100 | 0.1073 |
| 2.9557 | 1200 | 0.1066 |
| 3.2020 | 1300 | 0.0893 |
| 3.4483 | 1400 | 0.0658 |
| 3.6946 | 1500 | 0.0632 |
| 3.9409 | 1600 | 0.076 |
| 4.1872 | 1700 | 0.0733 |
| 4.4335 | 1800 | 0.0525 |
| 4.6798 | 1900 | 0.0526 |
| 4.9261 | 2000 | 0.0615 |
| 5.1724 | 2100 | 0.0384 |
| 5.4187 | 2200 | 0.046 |
| 5.6650 | 2300 | 0.0498 |
| 5.9113 | 2400 | 0.0477 |
| 6.1576 | 2500 | 0.0401 |
| 6.4039 | 2600 | 0.0289 |
| 6.6502 | 2700 | 0.0396 |
| 6.8966 | 2800 | 0.0287 |
| 7.1429 | 2900 | 0.034 |
| 7.3892 | 3000 | 0.0243 |
| 7.6355 | 3100 | 0.0151 |
| 7.8818 | 3200 | 0.0226 |
| 8.1281 | 3300 | 0.0208 |
| 8.3744 | 3400 | 0.0157 |
| 8.6207 | 3500 | 0.0135 |
| 8.8670 | 3600 | 0.0189 |
| 9.1133 | 3700 | 0.0162 |
| 9.3596 | 3800 | 0.0117 |
| 9.6059 | 3900 | 0.0104 |
| 9.8522 | 4000 | 0.012 |
| 10.0985 | 4100 | 0.0147 |
| 10.3448 | 4200 | 0.0085 |
| 10.5911 | 4300 | 0.0085 |
| 10.8374 | 4400 | 0.007 |
| 11.0837 | 4500 | 0.0072 |
| 11.3300 | 4600 | 0.0064 |
| 11.5764 | 4700 | 0.0075 |
| 11.8227 | 4800 | 0.0022 |
| 12.0690 | 4900 | 0.0047 |
| 12.3153 | 5000 | 0.0091 |
| 12.5616 | 5100 | 0.0049 |
| 12.8079 | 5200 | 0.0048 |
| 13.0542 | 5300 | 0.002 |
| 13.3005 | 5400 | 0.004 |
| 13.5468 | 5500 | 0.002 |
| 13.7931 | 5600 | 0.0085 |
| 14.0394 | 5700 | 0.0079 |
| 14.2857 | 5800 | 0.0031 |
| 14.5320 | 5900 | 0.0052 |
| 14.7783 | 6000 | 0.006 |
Framework Versions
- Python: 3.8.10
- Sentence Transformers: 3.2.1
- Transformers: 4.44.2
- PyTorch: 2.4.1+cu124
- Accelerate: 1.0.1
- Datasets: 2.19.0
- Tokenizers: 0.19.1
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",
}
- Downloads last month
- 6