--- datasets: [] language: [] library_name: sentence-transformers pipeline_tag: sentence-similarity tags: - sentence-transformers - sentence-similarity - feature-extraction - generated_from_trainer - dataset_size:1312839 - loss:TripletLoss widget: - source_sentence: Đã bao nhiêu giờ trôi qua kể từ khi bệnh nhân 006-172277 nhập viện? sentences: - CREATE TABLE chi phí(chi phí number,duy nhất text,bệnh nhânhệ thống sức khỏelưu trúid number,loại sự kiện text,id sự kiện number,thời gian tính phí time,chi phí number) - CREATE TABLE chuyến bay fare(flight id int,fare id int) - CREATE TABLE disease(uniquepid text, Patienthealthsystemstayid number, bệnh nhân đơn vị lưu trú number, giới tính text, tuổi text, dân tộc text, bệnh viện number, khu bệnh number, chiều cao nhập viện number, cân nặng nhập viện number, cân nặng xuất viện number, thời gian nhập viện time, nguồn nhập viện text, thời gian xuất viện time, trạng thái xuất viện text) - source_sentence: tôi cần một chuyến bay từ NEWARK đến LOS ANGELES khởi hành vào tối mai sentences: - CREATE TABLE time zone(time zone code text,time zone name text,hours from gmt int) - CREATE TABLE city(city code varchar,city name varchar,state code varchar,tên quốc gia varchar,múi thời gian varchar); - CREATE TABLE sân bay(airport code varchar,airport name text,airport location text,state code varchar,country name varchar,time zone code varchar,minimum connect time int); - source_sentence: có bao nhiêu giám đốc từ năm 2000 đến năm 2009? sentences: - CREATE TABLE Bài viết(Id number,PostTypeId number,AcceptedAnswerId number,ParentId number,CreationDate time,DeletionDate time,Score number,ViewCount number,Body text,OwnerUserId number,OwnerDisplayName text,LastEditorUserId number,LastEditorDisplayName text,LastEditDate time,LastActivityDate time,Tiêu đề text,Thẻ text,Đếm trả lời number,Đếm bình luận number,Đếm yêu thích number,Ngày đóng time,Ngày sở hữu cộng đồng time,Giấy phép nội dung text) - CREATE TABLE table 11239("Ngày" text,"Đội thăm quan" text,"Tỷ số cuối cùng" text,"Đội đăng cai" text,"Sân vận động" text) - CREATE TABLE table 203 141(id number,"sr.no." number,"tên" text,"từ" text,"cho đến" text,"nghề nghiệp" text) - source_sentence: Tên đầy đủ, các phòng ban, thành phố, tỉnh của từng nhân viên là gì? sentences: - CREATE TABLE phòng ban(department id number,department name text,manager id number,location id number) - CREATE TABLE khu vực(khu vực id number,tên khu vực text) - CREATE TABLE tuyển sinh(row id number,subject id number,hadm id number,admittime time,dischtime time,admission type text,admission location text,discharge location text,bảo hiểm text,ngôn ngữ text,hôn nhân status text,dân tộc text,age number); - source_sentence: Năm 2011 là bao nhiêu khi năm 2009 là 'MỘT'? sentences: - CREATE TABLE table name 27(điểm VARCHAR,đội khách VARCHAR,date VARCHAR) - CREATE TABLE Bài viết(Id number,PostTypeId number,AcceptedAnswerId number,ParentId number,CreationDate time,DeletionDate time,Score number,ViewCount number,Body text,OwnerUserId number,OwnerDisplayName text,LastEditorUserId number,LastEditorDisplayName text,LastEditDate time,LastActivityDate time,Title text,Tags text,AnswerCount number,CommentCount number,FavoriteCount number,ClosedDate time,CommunityOwnedDate time,ContentLicen text) - CREATE TABLE table 61807("Giải đấu" text,"2009" text,"2010" text,"2011" text,"2012" text) --- # SentenceTransformer This is a [sentence-transformers](https://www.SBERT.net) 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 tokens - **Similarity Function:** Cosine Similarity ### Model Sources - **Documentation:** [Sentence Transformers Documentation](https://sbert.net) - **Repository:** [Sentence Transformers on GitHub](https://github.com/UKPLab/sentence-transformers) - **Hugging Face:** [Sentence Transformers on Hugging Face](https://huggingface.co/models?library=sentence-transformers) ### 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': 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: ```bash pip install -U sentence-transformers ``` Then you can load this model and run inference. ```python from sentence_transformers import SentenceTransformer # Download from the 🤗 Hub model = SentenceTransformer("strongpear/M3-retriever-Vi-Text2SQL") # Run inference sentences = [ "Năm 2011 là bao nhiêu khi năm 2009 là 'MỘT'?", 'CREATE TABLE table 61807("Giải đấu" text,"2009" text,"2010" text,"2011" text,"2012" text)', 'CREATE TABLE table name 27(điểm VARCHAR,đội khách VARCHAR,date VARCHAR)', ] 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] ``` ## Training Details ### Training Dataset #### Unnamed Dataset * Size: 1,312,839 training samples * Columns: anchor, positive, and negative * Approximate statistics based on the first 1000 samples: | | anchor | positive | negative | |:--------|:-----------------------------------------------------------------------------------|:------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------| | type | string | string | string | | details | | | | * Samples: | anchor | positive | negative | |:------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | Chủ đề StackOverflow vào tháng 5 năm 2010. Sẽ thật tuyệt nếu có một biểu đồ, tôi biết :) | CREATE TABLE Bài viết(Id number,PostTypeId number,AcceptedAnswerId number,ParentId number,CreationDate time,DeletionDate time,Score number,ViewCount number,Nội dung text,OwnerUserId number,OwnerDisplayName text,LastEditorUserId number,LastEditorDisplayName text,LastEditDate time,LastActivityDate time,Title text,Tags text,AnswerCount number,CommentCount number,FavoriteCount number,ClosedDate time,CommunityOwnedDate time,ContentLince text); | CREATE TABLE PostTypes(Id number,Name text) | | sao2 của bệnh nhân 31854 trong lần khám tại bệnh viện hiện tại có bình thường không? | CREATE TABLE icustays(row id number,subject id number,hadm id number,icustay id number,first careunit text,last careunit text,first wardid number,last wardid number,intime time,outtime time); | CREATE TABLE inputevents cv(row id number,subject id number,hadm id number,icustay id number,charttime time,itemid number,amount number) | | chuyến bay nào từ PITTSBURGH đến ATLANTA vào sáng thứ Tư phục vụ BỮA SÁNG | CREATE TABLE sân bay(airport code varchar,airport name text,airport location text,state code varchar,country name varchar,time zone code varchar,minimum connect time int); | CREATE TABLE máy bay(aircraft code varchar,aircraft description varchar,nhà sản xuất varchar,basic type varchar,engines int,động cơ varchar,thân rộng varchar,sải cánh int,chiều dài int,trọng lượng int,công suất int,tải trả int,tốc độ bay int,phạm vi dặm int,có áp suất varchar) | * Loss: [TripletLoss](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#tripletloss) with these parameters: ```json { "distance_metric": "TripletDistanceMetric.EUCLIDEAN", "triplet_margin": 5 } ``` ### Evaluation Dataset #### Unnamed Dataset * Size: 69,098 evaluation samples * Columns: anchor, positive, and negative * Approximate statistics based on the first 1000 samples: | | anchor | positive | negative | |:--------|:-----------------------------------------------------------------------------------|:-----------------------------------------------------------------------------------|:------------------------------------------------------------------------------------| | type | string | string | string | | details | | | | * Samples: | anchor | positive | negative | |:----------------------------------------------------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------| | Đã bao nhiêu ngày kể từ lần cuối bệnh nhân 1561 nhận được một lượng lactate ringer trong lần thăm khám tại phòng chăm sóc đặc biệt hiện tại? | CREATE TABLE inputevents cv(row id number,subject id number,hadm id number,icustay id number,charttime time,itemid number,amount number); | CREATE TABLE d icd diagnoses(row id number,icd9 code text,short title text,tiêu đề dài text) | | Có nhiều giáo sư dạy ECON 631 trong kỳ Xuân Hè 2003 không? | CREATE TABLE giảng viên(instructor id int,name varchar,tên uniq varchar); | CREATE TABLE học kỳ(semester id int,semester varchar,year int) | | bệnh nhân 011-55642 có được chẩn đoán mắc bệnh gì trong lần khám tại bệnh viện hiện tại không? | CREATE TABLE bệnh nhân(uniquepid text,bệnh nhânhealthsystemstayid number,bệnh nhân đơn vị ở lạiid number,giới tính text,tuổi text,dân tộc text,bệnh viện number,khu bệnh number,chiều cao nhập viện number,cân nặng nhập viện number,cân nặng xuất viện number,thời gian nhập viện time,nguồn nhập viện text,thời gian nhập viện đơn vị time,thời gian nhập viện time,thời gian xuất viện time,trạng thái xuất viện text) | CREATE TABLE inputoutput(intakeoutputid number,Patientunitstayid number,cellpath text,celllabel text,cellvaluenumeric number,intakeoutputtime time) | * Loss: [TripletLoss](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#tripletloss) with these parameters: ```json { "distance_metric": "TripletDistanceMetric.EUCLIDEAN", "triplet_margin": 5 } ``` ### Training Hyperparameters #### Non-Default Hyperparameters - `eval_strategy`: steps - `gradient_accumulation_steps`: 4 - `learning_rate`: 1e-05 - `weight_decay`: 0.1 - `num_train_epochs`: 1 - `warmup_steps`: 500 - `fp16`: True - `remove_unused_columns`: False #### All Hyperparameters
Click to expand - `overwrite_output_dir`: False - `do_predict`: False - `eval_strategy`: steps - `prediction_loss_only`: True - `per_device_train_batch_size`: 8 - `per_device_eval_batch_size`: 8 - `per_gpu_train_batch_size`: None - `per_gpu_eval_batch_size`: None - `gradient_accumulation_steps`: 4 - `eval_accumulation_steps`: None - `torch_empty_cache_steps`: None - `learning_rate`: 1e-05 - `weight_decay`: 0.1 - `adam_beta1`: 0.9 - `adam_beta2`: 0.999 - `adam_epsilon`: 1e-08 - `max_grad_norm`: 1.0 - `num_train_epochs`: 1 - `max_steps`: -1 - `lr_scheduler_type`: linear - `lr_scheduler_kwargs`: {} - `warmup_ratio`: 0.0 - `warmup_steps`: 500 - `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`: False - `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 - `eval_use_gather_object`: False - `batch_sampler`: batch_sampler - `multi_dataset_batch_sampler`: proportional
### Training Logs | Epoch | Step | Training Loss | loss | |:------:|:-----:|:-------------:|:------:| | 0.0244 | 1000 | 0.165 | 0.1212 | | 0.0487 | 2000 | 0.1242 | 0.1124 | | 0.0731 | 3000 | 0.1189 | 0.1007 | | 0.0975 | 4000 | 0.102 | 0.0905 | | 0.1219 | 5000 | 0.0941 | 0.0911 | | 0.1462 | 6000 | 0.0992 | 0.0845 | | 0.1706 | 7000 | 0.0915 | 0.0846 | | 0.1950 | 8000 | 0.0913 | 0.0787 | | 0.2194 | 9000 | 0.0879 | 0.0750 | | 0.2437 | 10000 | 0.0842 | 0.0733 | | 0.2681 | 11000 | 0.0803 | 0.0696 | | 0.2925 | 12000 | 0.0856 | 0.0672 | | 0.3169 | 13000 | 0.0742 | 0.0674 | | 0.3412 | 14000 | 0.0757 | 0.0690 | | 0.3656 | 15000 | 0.076 | 0.0667 | | 0.3900 | 16000 | 0.0684 | 0.0678 | | 0.4144 | 17000 | 0.0729 | 0.0633 | | 0.4387 | 18000 | 0.0641 | 0.0611 | | 0.4631 | 19000 | 0.0678 | 0.0603 | | 0.4875 | 20000 | 0.0637 | 0.0578 | | 0.5119 | 21000 | 0.0671 | 0.0578 | | 0.5362 | 22000 | 0.0651 | 0.0558 | | 0.5606 | 23000 | 0.0596 | 0.0553 | | 0.5850 | 24000 | 0.0577 | 0.0552 | | 0.6094 | 25000 | 0.0639 | 0.0539 | | 0.6337 | 26000 | 0.0559 | 0.0526 | | 0.6581 | 27000 | 0.06 | 0.0509 | | 0.6825 | 28000 | 0.0555 | 0.0507 | | 0.7069 | 29000 | 0.0595 | 0.0501 | | 0.7312 | 30000 | 0.0569 | 0.0503 | | 0.7556 | 31000 | 0.0565 | 0.0487 | | 0.7800 | 32000 | 0.0512 | 0.0476 | | 0.8044 | 33000 | 0.0515 | 0.0469 | | 0.8287 | 34000 | 0.0489 | 0.0461 | | 0.8531 | 35000 | 0.051 | 0.0463 | | 0.8775 | 36000 | 0.0518 | 0.0460 | | 0.9019 | 37000 | 0.0491 | 0.0454 | | 0.9262 | 38000 | 0.0485 | 0.0453 | | 0.9506 | 39000 | 0.0489 | 0.0447 | | 0.9750 | 40000 | 0.0432 | 0.0445 | | 0.9994 | 41000 | 0.0509 | 0.0444 | ### Framework Versions - Python: 3.9.19 - Sentence Transformers: 3.0.1 - Transformers: 4.44.2 - PyTorch: 2.4.0+cu121 - Accelerate: 0.34.2 - Datasets: 2.21.0 - Tokenizers: 0.19.1 ## Citation ### BibTeX #### Sentence Transformers ```bibtex @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", } ``` #### TripletLoss ```bibtex @misc{hermans2017defense, title={In Defense of the Triplet Loss for Person Re-Identification}, author={Alexander Hermans and Lucas Beyer and Bastian Leibe}, year={2017}, eprint={1703.07737}, archivePrefix={arXiv}, primaryClass={cs.CV} } ```