duongluuba/AIP491_G9_Vietnam_tourism_data_bkai-foundation-fine-tuned-v1
SentenceTransformer based on bkai-foundation-models/vietnamese-bi-encoder
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.
Model Details
Model Description
- Model Type: Sentence Transformer
- Base model: bkai-foundation-models/vietnamese-bi-encoder <!-- at revision 84f9d9ada0d1a3c37557398b9ae9fcedcdf40be0 -->
- Maximum Sequence Length: 256 tokens
- Output Dimensionality: 768 dimensions
- Similarity Function: Cosine Similarity <!-- - Training Dataset: Unknown --> <!-- - Language: Unknown --> <!-- - License: Unknown -->
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, '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})
)Usage
Direct Usage (Sentence Transformers)
First install the Sentence Transformers library:
pip install -U sentence-transformersThen you can load this model and run inference.
from sentence_transformers import SentenceTransformer
# Download from the 🤗 Hub
model = SentenceTransformer("duongluuba/AIP491_G9_Vietnam_tourism_data_bkai-foundation-fine-tuned-v1")
# Run inference
sentences = [
'query: Cách chế biến hạt đác rim đường phèn như thế nào để giữ được độ giòn và vị ngọt thanh?',
'passage: Các món ăn từ hạt đác dưới đây khá dễ chế biến và giải nhiệt rất tốt trong mùa hè. Hạt đác rim đường phèn Lựa hạt non và nấu đủ độ sẽ cho thành phẩm vừa dẻo, vừa giòn, quyện đường phèn nên ngọt thanh, bỏ thêm đá hoặc sữa chua vào ăn rất mát. com Cách phổ biến và đơn giản nhất để thưởng thức hạt đác là rim đường phèn. Hạt đác được rửa nhiều lần cho sạch, chần vào nước nóng già, nấu cho đến khi sôi lại khoảng năm phút thì vớt ra, xả với nước lạnh để không mất đi độ giòn. Mang phần hạt đác đã sơ chế này ngâm với đường phèn khoảng nửa tiếng cho thấm ngọt rồi rim trên chảo lớn, không cần thêm nước, đến khi đường sóng sánh, hạt đác có màu trong là hoàn thành.',
'passage: Vườn quốc gia Ba Vì. Với diện tích gần 11.000 ha, vườn quốc gia Ba Vì được coi là "lá phổi xanh" phía Tây thủ đô Hà Nội. Tại vườn quốc gia có các địa điểm tham quan như nhà thờ cổ bỏ hoang, phủ kín rêu phong mang vẻ huyền bí, hay nhà kính xương rồng. Cũng như , hay , người Pháp xây dựng ở Ba Vì nhiều biệt thự nghỉ dưỡng ở cốt 400, 600 và 1.000. Chỉ khác là chúng đã bị tàn phá theo thăng trầm thời gian cùng thời cuộc. Bởi thế, du khách sẽ ngỡ ngàng trước những nền móng kiến trúc từ hàng trăm năm trước khi đi sâu vào trong rừng. Những khu nghỉ dưỡng, những bếp lò, những bức tường, tất cả đều được bao phủ bởi cây rừng và sương núi.',
]
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.8126, -0.0353],
# [ 0.8126, 1.0000, 0.0099],
# [-0.0353, 0.0099, 1.0000]])<!--
Direct Usage (Transformers)
<details><summary>Click to see the direct usage in Transformers</summary>
</details> -->
<!--
Downstream Usage (Sentence Transformers)
You can finetune this model on your own dataset.
<details><summary>Click to expand</summary>
</details> -->
<!--
Out-of-Scope Use
List how the model may foreseeably be misused and address what users ought not to do with the model. -->
Evaluation
Metrics
Information Retrieval
- Dataset:
val - Evaluated with <code>_main_.InformationRetrievalEvaluator</code>
<!--
Bias, Risks and Limitations
What are the known or foreseeable issues stemming from this model? You could also flag here known failure cases or weaknesses of the model. -->
<!--
Recommendations
What are recommendations with respect to the foreseeable issues? For example, filtering explicit content. -->
Training Details
Training Dataset
Unnamed Dataset
- Size: 12,768 training samples
- Columns: <code>sentence0</code> and <code>sentence1</code>
- Approximate statistics based on the first 1000 samples: | | sentence0 | sentence1 | |:--------|:-----------------------------------------------------------------------------------|:------------------------------------------------------------------------------------| | type | string | string | | details | <ul><li>min: 15 tokens</li><li>mean: 29.47 tokens</li><li>max: 51 tokens</li></ul> | <ul><li>min: 6 tokens</li><li>mean: 152.52 tokens</li><li>max: 256 tokens</li></ul> |
- Samples: | sentence0 | sentence1 | |:------------------------------------------------------------------------------------------------------------------------------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | <code>query: Di tích khảo cổ Văn hóa Sa Huỳnh ở Quảng Ngãi gồm những điểm di tích nào và được xếp hạng gì vào cuối năm 2022?</code> | <code>passage: Nhà trưng bày Văn hóa Sa Huỳnh. vn. Cuối năm 2022, Di tích khảo cổ Văn hoá Sa Huỳnh của tỉnh Quảng Ngãi được xếp hạng là Di tích quốc gia đặc biệt. Di tích khảo cổ gồm có 6 điểm di tích ở thị xã Đức Phổ gồm: di tích Long Thạnh (còn gọi là Gò Ma Vương), di tích Thạnh Đức, di tích Phú Khương, quần thể di tích Champa trong không gian Sa Huỳnh, đầm An Khê và lạch An Khê – sông Cửa Lỗ. Không gian trưng bày. Nền văn hóa Sa Huỳnh được nhà khảo cổ học người Pháp M. Vinet phát hiện năm 1909. Từ khu mộ chum Sa Huỳnh, qua các đợt khai quật, các nhà khảo cổ đã liên tục phát hiện các dấu vết của một nền văn hóa thời tiền sử.</code> | | <code>query: Rừng dừa Bảy Mẫu ở Hội An có đặc điểm gì thu hút du khách khi tham quan?</code> | <code>passage: Rừng dừa Bảy Mẫu. Địa chỉ: thôn Thanh Nhứt, Thanh Tam, Vạn Lăng, Xã Cẩm Thanh, Thành phố Hội An, Quảng Nam. Đặc điểm: Rừng dừa Bảy Mẫu Cẩm Thanh Hội An là điểm đến hấp dẫn du khách tham quan trong và ngoài nước. Sở dĩ có cái tên này vì ngày xưa, khu rừng này có khoảng 07 mẫu dừa tự do sinh sôi nảy nở. Tới nay, rừng đã phát triển lên hơn 100 ha nhưng người ta vẫn giữ cái tên rừng dừa Bảy Mẫu vì nó đã quá quen thuộc và thân thương với người dân và khách du lịch Hội An. Vì nằm ngay trong vùng nước lợ nên rất thích hợp cho dừa nước phát triển. Tới đây, du khách sẽ được thăm quan khu rừng hoàn toàn trên thuyền theo phong cách miền Tây Nam Bộ.</code> | | <code>query: Bánh cuốn trứng ở Lạng Sơn có điểm gì khác biệt so với bánh cuốn thường?</code> | <code>passage: Bánh cuốn trứng. Bánh cuốn trứng được làm từ gạo tẻ ngon xay nhuyễn với nước sao cho bột không bị khô hay loãng quá. Bánh được tráng trên nồi hấp có căng một lớp vải mỏng để bánh chín hoàn toàn bằng hơi nước nóng bốc lên. Khác với bánh cuốn thường, người Lạng Sơn dùng trứng để làm nhân bánh. Ngoài ra, bánh cuốn đúng điệu phải ăn với nước chấm pha bằng giấm làm từ một loại chuối chín cây ở Lạng Sơn, loại giấm đặc trưng chỉ xứ Lạng mới có.</code> |
- Loss: <code>MultipleNegativesRankingLoss</code> with these parameters:
{
"scale": 20.0,
"similarity_fct": "cos_sim",
"gather_across_devices": false
}Training Hyperparameters
Non-Default Hyperparameters
eval_strategy: stepsfp16: Truemulti_dataset_batch_sampler: round_robin
All Hyperparameters
<details><summary>Click to expand</summary>
overwrite_output_dir: Falsedo_predict: Falseeval_strategy: stepsprediction_loss_only: Trueper_device_train_batch_size: 8per_device_eval_batch_size: 8per_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: 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: {'minnumparams': 0, 'xla': False, 'xlafsdpv2': False, 'xlafsdpgrad_ckpt': False}fsdp_transformer_layer_cls_to_wrap: Noneaccelerator_config: {'splitbatches': False, 'dispatchbatches': None, 'evenbatches': True, 'useseedablesampler': True, 'nonblocking': False, 'gradientaccumulationkwargs': None}parallelism_config: Nonedeepspeed: Nonelabel_smoothing_factor: 0.0optim: adamwtorchfusedoptim_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: {}
</details>
Training Logs
Framework Versions
- Python: 3.12.12
- Sentence Transformers: 5.1.2
- Transformers: 4.57.1
- PyTorch: 2.8.0+cu126
- Accelerate: 1.11.0
- Datasets: 4.0.0
- Tokenizers: 0.22.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",
}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}
}<!--
Glossary
Clearly define terms in order to be accessible across audiences. -->
<!--
Model Card Authors
Lists the people who create the model card, providing recognition and accountability for the detailed work that goes into its construction. -->
<!--
Model Card Contact
Provides a way for people who have updates to the Model Card, suggestions, or questions, to contact the Model Card authors. -->
