Halong Embedding

This is a sentence-transformers model finetuned from hiieu/halong_embedding on the json dataset. 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: hiieu/halong_embedding
  • Maximum Sequence Length: 512 tokens
  • Output Dimensionality: 768 dimensions
  • Similarity Function: Cosine Similarity
  • Training Dataset:
    • json
  • Language: vi
  • License: apache-2.0

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: XLMRobertaModel 
  (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})
  (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("vankha/asc_embedding")
# Run inference
sentences = [
    'Sau khi đã tạo phòng ban, ta tiến hành thêm mới thông tin kế toán.. Các bước thực hiện: Chọn **Nhận sự → Quản lý nhân sự → Danh sách nhân sự** Nhấn nút https://storage.googleapis.com/ascchatbot/icons/icon_plus.png để thêm mới thông tin nhân sự. Nhấn nút https://storage.googleapis.com/ascchatbot/icons/icon_pencil.png để chỉnh sửa thông tin nhân sự. Nhấn nút https://storage.googleapis.com/ascchatbot/icons/icon_cancel.png để xóa phòng ban.',
    'Hướng dẫn tạo thông tin kế toán?',
    'Hướng dẫn đổ công nợ cho học sinh?',
]
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]

Evaluation

Metrics

Information Retrieval

Metric dim_768 dim_512 dim_256 dim_128 dim_64
cosine_accuracy@1 0.8 0.8 0.8 0.8 0.8
cosine_accuracy@3 1.0 1.0 1.0 1.0 1.0
cosine_accuracy@5 1.0 1.0 1.0 1.0 1.0
cosine_accuracy@10 1.0 1.0 1.0 1.0 1.0
cosine_precision@1 0.8 0.8 0.8 0.8 0.8
cosine_precision@3 0.3333 0.3333 0.3333 0.3333 0.3333
cosine_precision@5 0.2 0.2 0.2 0.2 0.2
cosine_precision@10 0.1 0.1 0.1 0.1 0.1
cosine_recall@1 0.8 0.8 0.8 0.8 0.8
cosine_recall@3 1.0 1.0 1.0 1.0 1.0
cosine_recall@5 1.0 1.0 1.0 1.0 1.0
cosine_recall@10 1.0 1.0 1.0 1.0 1.0
cosine_ndcg@10 0.9262 0.9262 0.9262 0.9 0.9
cosine_mrr@10 0.9 0.9 0.9 0.8667 0.8667
cosine_map@100 0.9 0.9 0.9 0.8667 0.8667

Training Details

Training Dataset

json

  • Dataset: json
  • Size: 42 training samples
  • Columns: positive and anchor
  • Approximate statistics based on the first 42 samples:
    positive anchor
    type string string
    details
    • min: 52 tokens
    • mean: 190.43 tokens
    • max: 329 tokens
    • min: 4 tokens
    • mean: 13.26 tokens
    • max: 56 tokens
  • Samples:
    positive anchor
    Các bước thực hiện: Chọn Tài chính học vụBáo cáo chiBáo cáo chi tiết miễn giảm Nhấn nút https://storage.googleapis.com/ascchatbot/icons/icon_search.png để hiển thị danh sách miễn giảm điều kiện lọc. Nhấn nút https://storage.googleapis.com/ascchatbot/icons/icon_excel.png để tải báo cáo danh sách miễn giảm học sinh. Hướng dẫn báo cáo chi tiết miễn giảm?
    Chức năng này dùng để cấu hình các ngày nghỉ mặc định cho từng khoản thu dịch vụ các khối lớp. Các bước thực hiện: Chọn Tài chính học vụ → Cấu hình → Lịch nghĩ Thiết lập ngày nghỉ mặc định cho từng khối lớp Mỗi khối lớp có ngày nghỉ trong tuần khác nhau, ví dụ: Khối lớp 6 chỉ đăng ký ăn từ thứ 2 đến thứ 5, Khối lớp 7 đăng ký ăn từ thứ 2 đến thứ 6. Để thiết lập ngày nghỉ mặc định cho từng khối lớp, kế toán nhấn nút https://storage.googleapis.com/ascchatbot/icons/icon_plus.png chọn các thông tin cần thiết, sau đó nhấn nút https://storage.googleapis.com/ascchatbot/icons/icon_big_save.png . Ghi chú: Thiết lập ngày nghỉ mặc định cho từng khối lớp Hướng dẫn thiết lập nghĩ lễ?
    Các bước thực hiện: Chọn Hệ thống → Phân quyền → Quản ký nhóm người dùng Nhấn nút https://storage.googleapis.com/ascchatbot/icons/icon_plus.png để thêm mới để tạo nhóm người dùng (nên để tên nhóm là “Kế toán – Trường THCS ABC”). Nhấn nút https://storage.googleapis.com/ascchatbot/icons/icon_pencil.png để chỉnh sửa tên nhóm người dùng. Hướng dẫn tạo nhóm quyền?
  • Loss: MatryoshkaLoss with these parameters:
    {
        "loss": "MultipleNegativesRankingLoss",
        "matryoshka_dims": [
            768,
            512,
            256,
            128,
            64
        ],
        "matryoshka_weights": [
            1,
            1,
            1,
            1,
            1
        ],
        "n_dims_per_step": -1
    }
    

Training Hyperparameters

Non-Default Hyperparameters

All Hyperparameters

Click to expand
  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: epoch
  • prediction_loss_only: True
  • per_device_train_batch_size: 16
  • per_device_eval_batch_size: 8
  • per_gpu_train_batch_size: None
  • per_gpu_eval_batch_size: None
  • gradient_accumulation_steps: 8
  • eval_accumulation_steps: None
  • torch_empty_cache_steps: None
  • learning_rate: 1e-05
  • weight_decay: 0.0
  • adam_beta1: 0.9
  • adam_beta2: 0.999
  • adam_epsilon: 1e-08
  • max_grad_norm: 1.0
  • num_train_epochs: 4
  • max_steps: -1
  • lr_scheduler_type: cosine
  • lr_scheduler_kwargs: {}
  • warmup_ratio: 0.1
  • warmup_steps: 0
  • 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: True
  • fp16: False
  • fp16_opt_level: O1
  • half_precision_backend: auto
  • bf16_full_eval: False
  • fp16_full_eval: False
  • tf32: False
  • 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: True
  • label_names: None
  • load_best_model_at_end: True
  • 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_fused
  • 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: None
  • hub_always_push: False
  • gradient_checkpointing: False
  • gradient_checkpointing_kwargs: None
  • include_inputs_for_metrics: False
  • include_for_metrics: []
  • 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
  • use_liger_kernel: False
  • eval_use_gather_object: False
  • average_tokens_across_devices: False
  • prompts: None
  • batch_sampler: no_duplicates
  • multi_dataset_batch_sampler: proportional

Training Logs

Epoch Step dim_768_cosine_ndcg@10 dim_512_cosine_ndcg@10 dim_256_cosine_ndcg@10 dim_128_cosine_ndcg@10 dim_64_cosine_ndcg@10
0 0 0.9262 0.9262 0.9262 0.9 0.9
  • The bold row denotes the saved checkpoint.

Framework Versions

  • Python: 3.10.12
  • Sentence Transformers: 3.3.1
  • Transformers: 4.47.1
  • PyTorch: 2.5.1+cu121
  • Accelerate: 1.2.1
  • Datasets: 3.2.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",
}

MatryoshkaLoss

@misc{kusupati2024matryoshka,
    title={Matryoshka Representation Learning},
    author={Aditya Kusupati and Gantavya Bhatt and Aniket Rege and Matthew Wallingford and Aditya Sinha and Vivek Ramanujan and William Howard-Snyder and Kaifeng Chen and Sham Kakade and Prateek Jain and Ali Farhadi},
    year={2024},
    eprint={2205.13147},
    archivePrefix={arXiv},
    primaryClass={cs.LG}
}

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
40
Safetensors
Model size
278M params
Tensor type
F32
·
Inference Examples
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.

Model tree for vankha/asc_embedding

Finetuned
(13)
this model

Evaluation results