SentenceTransformer based on BAAI/bge-m3

This is a sentence-transformers model finetuned from BAAI/bge-m3. 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
  • Base model: BAAI/bge-m3
  • Maximum Sequence Length: 1024 tokens
  • Output Dimensionality: 1024 tokens
  • Similarity Function: Cosine Similarity

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 1024, 'do_lower_case': False}) with Transformer model: XLMRobertaModel 
  (1): Pooling({'word_embedding_dimension': 1024, 'pooling_mode_cls_token': True, 'pooling_mode_mean_tokens': False, '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("seongil-dn/bge-m3-kor-retrieval-451949-bs64-mrc")
# Run inference
sentences = [
    '영상통화로 내연녀와 말다툼하던 40대 남성이 분을 이기지 못하고 내연녀 집에 불을 질렀다가 현행범으로 체포된 건 누구지?',
    '{IMG:1}영상통화로 내연녀와 말다툼하던 40대 남성이 분을 이기지 못하고 내연녀 집에 불을 질렀다가 현행범으로 체포됐다. 부산 사하경찰서는 내연녀 집에 불을 지른 혐의(방화)로 회사원 A(43)씨를 붙잡아 조사하고 있다고 19일 밝혔다. 경찰에 따르면, A씨는 19일 오전 0시 10분쯤 부산 사하구 모 아파트에 있는 내년여 B(40·여)씨의 집에서 소파와 침대 등에 일회용 라이터로 불을 놓아 700만원 상당의 재산피해를 낸 혐의를 받고 있다. 당시 영상통화로 불을 붙이는 장면을 본 B씨가 곧바로 112에 신고해, 출동한 경찰이 현장에서 A씨를 붙잡았다. 경찰 조사결과 A씨는 내연녀의 집에서 밖에 있던 B씨와 영상통화를 하던 중 또다른 남자문제로 말다툼을 벌이다 홧김에 라이터로 불을 붙인 것으로 드러났다. 경찰은 A씨에 대한 구속영장을 신청할 예정이다.',
    '정신이상 증세 가능성 서울 영등포경찰서는 지난달 여의도순복음교회에 불을 지른 혐의(현존건조물방화)로 A씨(28)를 구속했다고 2일 밝혔다. A씨는 지난달 25일 오후 7시 40분께 교회 5층 계단 복도에 불을 낸 혐의를 받고 있다. 당시 화재로 교회 건물에 있던 450여명이 긴급 대피하기도 했다. 경찰은 주변 폐쇄회로(CC)TV 영상을 분석해 A씨가 화재 장소를 서둘러 나온 지 3분 만에 연기가 나고 2시간 전에도 화재 장소를 다녀간 점 등을 확인, 지난달 27일 그를 체포했다. 경찰 조사에서 A씨는 예배를 보러 갔다가 내부 지리를 몰라 5층에 올라갔을 뿐 불을 지르지 않았다고 범행을 부인했다. 하지만 A씨는 지난 2013년 이 교회에 신자로 등록하고 다닌 사실이 있어 경찰은 A씨 진술이 거짓인 것으로 판단했다. 경찰 관계자는 A씨가 수년 전부터 정신이상 증세를 보였다는 부친의 진술이 있고 체포된 뒤에도 줄곧 영어로만 말을 하는 등 이상행동을 보여 정신이상 증세에 의해 범행을 벌였을 가능성이 있다고 전했다.',
]
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 Hyperparameters

Non-Default Hyperparameters

  • per_device_train_batch_size: 64
  • learning_rate: 3e-05
  • num_train_epochs: 1
  • warmup_ratio: 0.05
  • fp16: True
  • batch_sampler: no_duplicates

All Hyperparameters

Click to expand
  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: no
  • prediction_loss_only: True
  • per_device_train_batch_size: 64
  • per_device_eval_batch_size: 8
  • per_gpu_train_batch_size: None
  • per_gpu_eval_batch_size: None
  • gradient_accumulation_steps: 1
  • eval_accumulation_steps: None
  • torch_empty_cache_steps: None
  • learning_rate: 3e-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: 1
  • max_steps: -1
  • lr_scheduler_type: linear
  • lr_scheduler_kwargs: {}
  • warmup_ratio: 0.05
  • 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: 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: True
  • 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: 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: no_duplicates
  • multi_dataset_batch_sampler: proportional

Training Logs

Epoch Step Training Loss
0.0102 1 0.5093
0.0204 2 0.4639
0.0306 3 0.493
0.0408 4 0.3748
0.0510 5 0.294
0.0612 6 0.2842
0.0714 7 0.2719
0.0816 8 0.2738
0.0918 9 0.225
0.1020 10 0.2302
0.1122 11 0.2419
0.1224 12 0.2295
0.1327 13 0.2174
0.1429 14 0.2398
0.1531 15 0.2327
0.1633 16 0.1828
0.1735 17 0.2022
0.1837 18 0.1839
0.1939 19 0.1849
0.2041 20 0.2048
0.2143 21 0.1777
0.2245 22 0.1993
0.2347 23 0.1771
0.2449 24 0.174
0.2551 25 0.1817
0.2653 26 0.1837
0.2755 27 0.1821
0.2857 28 0.1874
0.2959 29 0.1488
0.3061 30 0.1675
0.3163 31 0.1846
0.3265 32 0.1586
0.3367 33 0.1473
0.3469 34 0.1364
0.3571 35 0.1617
0.3673 36 0.1761
0.3776 37 0.1569
0.3878 38 0.1706
0.3980 39 0.1897
0.4082 40 0.1622
0.4184 41 0.1486
0.4286 42 0.1438
0.4388 43 0.1983
0.4490 44 0.1245
0.4592 45 0.1399
0.4694 46 0.1437
0.4796 47 0.1467
0.4898 48 0.1395
0.5 49 0.1596
0.5102 50 0.1503
0.5204 51 0.1508
0.5306 52 0.1367
0.5408 53 0.131
0.5510 54 0.1311
0.5612 55 0.1234
0.5714 56 0.1564
0.5816 57 0.1607
0.5918 58 0.1548
0.6020 59 0.1202
0.6122 60 0.1212
0.6224 61 0.1611
0.6327 62 0.1598
0.6429 63 0.1384
0.6531 64 0.1525
0.6633 65 0.1561
0.6735 66 0.1666
0.6837 67 0.1174
0.6939 68 0.1348
0.7041 69 0.1274
0.7143 70 0.16
0.7245 71 0.1514
0.7347 72 0.1501
0.7449 73 0.1795
0.7551 74 0.1481
0.7653 75 0.1666
0.7755 76 0.1163
0.7857 77 0.1512
0.7959 78 0.132
0.8061 79 0.1433
0.8163 80 0.1513
0.8265 81 0.1365
0.8367 82 0.142
0.8469 83 0.1475
0.8571 84 0.1448
0.8673 85 0.1403
0.8776 86 0.1664
0.8878 87 0.1576
0.8980 88 0.1361
0.9082 89 0.1186
0.9184 90 0.1203
0.9286 91 0.1317
0.9388 92 0.1254
0.9490 93 0.1063
0.9592 94 0.1144
0.9694 95 0.1283
0.9796 96 0.1336
0.9898 97 0.1346
1.0 98 0.1285

Framework Versions

  • Python: 3.10.12
  • Sentence Transformers: 3.2.1
  • Transformers: 4.44.2
  • PyTorch: 2.3.1+cu121
  • Accelerate: 1.1.1
  • Datasets: 2.21.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",
}

CachedMultipleNegativesRankingLoss

@misc{gao2021scaling,
    title={Scaling Deep Contrastive Learning Batch Size under Memory Limited Setup},
    author={Luyu Gao and Yunyi Zhang and Jiawei Han and Jamie Callan},
    year={2021},
    eprint={2101.06983},
    archivePrefix={arXiv},
    primaryClass={cs.LG}
}
Downloads last month
6
Safetensors
Model size
568M 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 seongil-dn/bge-m3-kor-retrieval-451949-bs64-mrc

Base model

BAAI/bge-m3
Finetuned
(185)
this model