bge-reranker train on Greek language for chatbot

This is a Cross Encoder model finetuned from BAAI/bge-reranker-v2-m3 using the sentence-transformers library. It computes scores for pairs of texts, which can be used for text reranking and semantic search.

Model Details

Model Description

  • Model Type: Cross Encoder
  • Base model: BAAI/bge-reranker-v2-m3
  • Maximum Sequence Length: 8192 tokens
  • Number of Output Labels: 1 label
  • Supported Modality: Text
  • Language: gr
  • License: apache-2.0

Model Sources

Full Model Architecture

CrossEncoder(
  (0): Transformer({'transformer_task': 'sequence-classification', 'modality_config': {'text': {'method': 'forward', 'method_output_name': 'logits'}}, 'module_output_name': 'scores', 'architecture': 'XLMRobertaForSequenceClassification'})
)

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 CrossEncoder

# Download from the 🤗 Hub
model = CrossEncoder("IoannisKat1/reranker-bge-reranker-v2-m3-dev")
# Get scores for pairs of inputs
pairs = [
    ['Τι είδους διαδικασία αναφέρεται στο κείμενο;', 'διαγωνισμό'],
    ['Τι είδους διαδικασία αναφέρεται στο κείμενο;', '. Σχετικά έγγραφα περιλαμβάνονται στην σελίδα: Επιστολή Προέδρου ΑΔΙΠ, Απόφαση Συμβουλίου ΑΔΙΠ, Έκθεση Πιστοποίησης.'],
    ['Τι είδους διαδικασία αναφέρεται στο κείμενο;', 'Ορισμός Αυτομάτων, Επεκτάσεις FSA: Δίδυμα, Παράλληλα, Μετατροπείς, Εφαρμογές Αυτομάτων, Μορφολογική Ανάλυση, Το Μορφολογικό Μοντέλο Kay-Kaplan, Το Μορφολογικό Μοντέλο Δύο Επιπέδων, Τυπικές Γλώσσες και Γραμματικές, Η Ιεραρχία Chomsky, Κανονική Μορφή κατά Chomsky (CNF), Ο Αλγόριθμος CKY, Λογάριθμοι και Logprob, Πιθανοτικές Γραμματικές Τύπου 2, Κατηγορίες Σωμάτων Κειμένων, Μετατροπή PCFG σε CNF,'],
    ['Τι είδους διαδικασία αναφέρεται στο κείμενο;', '. Διενεργείται στα εργαστήρια του τμήματος στο πλαίσιο ερευνητικών προγραμμάτων ανά εργαστήριο και χρηματοδοτείται είτε από δημόσιους πόρους (Τακτικός Προϋπολογισμός, Δημόσιες Επενδύσεις, εισφορά ΤΣΜΕΔΕ) είτε από εξωπανεπιστημιακούς φορείς (Γενική Γραμματεία Ερευνας και Τεχνολογίας, βιομηχανία, Ε.Ε., κλπ).'],
    ['Τι είδους διαδικασία αναφέρεται στο κείμενο;', 'λειτουργεί σαν κινητήρας'],
]
scores = model.predict(pairs)
print(scores)
# [9.9993e-01 2.5867e-05 2.7752e-05 2.6070e-05 2.6689e-05]

# Or rank different texts based on similarity to a single text
ranks = model.rank(
    'Τι είδους διαδικασία αναφέρεται στο κείμενο;',
    [
        'διαγωνισμό',
        '. Σχετικά έγγραφα περιλαμβάνονται στην σελίδα: Επιστολή Προέδρου ΑΔΙΠ, Απόφαση Συμβουλίου ΑΔΙΠ, Έκθεση Πιστοποίησης.',
        'Ορισμός Αυτομάτων, Επεκτάσεις FSA: Δίδυμα, Παράλληλα, Μετατροπείς, Εφαρμογές Αυτομάτων, Μορφολογική Ανάλυση, Το Μορφολογικό Μοντέλο Kay-Kaplan, Το Μορφολογικό Μοντέλο Δύο Επιπέδων, Τυπικές Γλώσσες και Γραμματικές, Η Ιεραρχία Chomsky, Κανονική Μορφή κατά Chomsky (CNF), Ο Αλγόριθμος CKY, Λογάριθμοι και Logprob, Πιθανοτικές Γραμματικές Τύπου 2, Κατηγορίες Σωμάτων Κειμένων, Μετατροπή PCFG σε CNF,',
        '. Διενεργείται στα εργαστήρια του τμήματος στο πλαίσιο ερευνητικών προγραμμάτων ανά εργαστήριο και χρηματοδοτείται είτε από δημόσιους πόρους (Τακτικός Προϋπολογισμός, Δημόσιες Επενδύσεις, εισφορά ΤΣΜΕΔΕ) είτε από εξωπανεπιστημιακούς φορείς (Γενική Γραμματεία Ερευνας και Τεχνολογίας, βιομηχανία, Ε.Ε., κλπ).',
        'λειτουργεί σαν κινητήρας',
    ]
)
# [{'corpus_id': ..., 'score': ...}, {'corpus_id': ..., 'score': ...}, ...]

Evaluation

Metrics

Cross Encoder Reranking

Metric Value
map 0.7300 (+0.1664)
mrr@10 0.7305 (+0.1705)
ndcg@10 0.7438 (+0.1415)

Cross Encoder Reranking

  • Datasets: NanoMSMARCO_R100, NanoNFCorpus_R100 and NanoNQ_R100
  • Evaluated with CrossEncoderRerankingEvaluator with these parameters:
    {
        "at_k": 10,
        "always_rerank_positives": true
    }
    
Metric NanoMSMARCO_R100 NanoNFCorpus_R100 NanoNQ_R100
map 0.6090 (+0.1195) 0.3872 (+0.1262) 0.5927 (+0.1731)
mrr@10 0.6134 (+0.1359) 0.6127 (+0.1129) 0.6245 (+0.1978)
ndcg@10 0.6766 (+0.1362) 0.4318 (+0.1068) 0.6469 (+0.1462)

Cross Encoder Nano BEIR

  • Dataset: NanoBEIR_R100_mean
  • Evaluated with CrossEncoderNanoBEIREvaluator with these parameters:
    {
        "dataset_names": [
            "msmarco",
            "nfcorpus",
            "nq"
        ],
        "dataset_id": "sentence-transformers/NanoBEIR-en",
        "rerank_k": 100,
        "at_k": 10,
        "always_rerank_positives": true
    }
    
Metric Value
map 0.5297 (+0.1396)
mrr@10 0.6169 (+0.1488)
ndcg@10 0.5851 (+0.1297)

Training Details

Training Dataset

Unnamed Dataset

  • Size: 18,131 training samples
  • Columns: query, document, and label
  • Approximate statistics based on the first 100 samples:
    query document label
    type string string int
    modality text text
    details
    • min: 9 tokens
    • mean: 16.42 tokens
    • max: 27 tokens
    • min: 3 tokens
    • mean: 85.97 tokens
    • max: 156 tokens
    • 0: ~79.81%
    • 1: ~20.19%
  • Samples:
    query document label
    Τι είδους διαδικασία αναφέρεται στο κείμενο; διαγωνισμό 1
    Τι είδους διαδικασία αναφέρεται στο κείμενο; . Σχετικά έγγραφα περιλαμβάνονται στην σελίδα: Επιστολή Προέδρου ΑΔΙΠ, Απόφαση Συμβουλίου ΑΔΙΠ, Έκθεση Πιστοποίησης. 0
    Τι είδους διαδικασία αναφέρεται στο κείμενο; Ορισμός Αυτομάτων, Επεκτάσεις FSA: Δίδυμα, Παράλληλα, Μετατροπείς, Εφαρμογές Αυτομάτων, Μορφολογική Ανάλυση, Το Μορφολογικό Μοντέλο Kay-Kaplan, Το Μορφολογικό Μοντέλο Δύο Επιπέδων, Τυπικές Γλώσσες και Γραμματικές, Η Ιεραρχία Chomsky, Κανονική Μορφή κατά Chomsky (CNF), Ο Αλγόριθμος CKY, Λογάριθμοι και Logprob, Πιθανοτικές Γραμματικές Τύπου 2, Κατηγορίες Σωμάτων Κειμένων, Μετατροπή PCFG σε CNF, 0
  • Loss: BinaryCrossEntropyLoss with these parameters:
    {
        "activation_fn": "torch.nn.modules.linear.Identity",
        "pos_weight": 5
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • num_train_epochs: 10
  • learning_rate: 2e-05
  • warmup_steps: 0.1
  • gradient_accumulation_steps: 4
  • fp16: True
  • eval_accumulation_steps: 4
  • load_best_model_at_end: True
  • seed: 12
  • dataloader_num_workers: 2

All Hyperparameters

Click to expand
  • per_device_train_batch_size: 8
  • num_train_epochs: 10
  • max_steps: -1
  • learning_rate: 2e-05
  • lr_scheduler_type: linear
  • lr_scheduler_kwargs: None
  • warmup_steps: 0.1
  • optim: adamw_torch_fused
  • optim_args: None
  • weight_decay: 0.0
  • adam_beta1: 0.9
  • adam_beta2: 0.999
  • adam_epsilon: 1e-08
  • optim_target_modules: None
  • gradient_accumulation_steps: 4
  • average_tokens_across_devices: True
  • max_grad_norm: 1.0
  • label_smoothing_factor: 0.0
  • bf16: False
  • fp16: True
  • bf16_full_eval: False
  • fp16_full_eval: False
  • tf32: None
  • gradient_checkpointing: False
  • gradient_checkpointing_kwargs: None
  • torch_compile: False
  • torch_compile_backend: None
  • torch_compile_mode: None
  • use_liger_kernel: False
  • liger_kernel_config: None
  • use_cache: False
  • neftune_noise_alpha: None
  • torch_empty_cache_steps: None
  • auto_find_batch_size: False
  • log_on_each_node: True
  • logging_nan_inf_filter: True
  • include_num_input_tokens_seen: no
  • log_level: passive
  • log_level_replica: warning
  • disable_tqdm: False
  • project: huggingface
  • trackio_space_id: None
  • trackio_bucket_id: None
  • trackio_static_space_id: None
  • per_device_eval_batch_size: 8
  • prediction_loss_only: True
  • eval_on_start: False
  • eval_do_concat_batches: True
  • eval_use_gather_object: False
  • eval_accumulation_steps: 4
  • include_for_metrics: []
  • batch_eval_metrics: False
  • save_only_model: False
  • save_on_each_node: False
  • enable_jit_checkpoint: False
  • push_to_hub: False
  • hub_private_repo: None
  • hub_model_id: None
  • hub_strategy: every_save
  • hub_always_push: False
  • hub_revision: None
  • load_best_model_at_end: True
  • ignore_data_skip: False
  • restore_callback_states_from_checkpoint: False
  • full_determinism: False
  • seed: 12
  • data_seed: None
  • use_cpu: False
  • accelerator_config: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}
  • parallelism_config: None
  • dataloader_drop_last: False
  • dataloader_num_workers: 2
  • dataloader_pin_memory: True
  • dataloader_persistent_workers: False
  • dataloader_prefetch_factor: None
  • remove_unused_columns: True
  • label_names: None
  • train_sampling_strategy: random
  • length_column_name: length
  • ddp_find_unused_parameters: None
  • ddp_bucket_cap_mb: None
  • ddp_broadcast_buffers: False
  • ddp_static_graph: None
  • ddp_backend: None
  • ddp_timeout: 1800
  • fsdp: None
  • fsdp_config: None
  • deepspeed: None
  • debug: []
  • skip_memory_metrics: True
  • do_predict: False
  • resume_from_checkpoint: None
  • warmup_ratio: None
  • local_rank: -1
  • prompts: None
  • batch_sampler: batch_sampler
  • multi_dataset_batch_sampler: proportional
  • router_mapping: {}
  • learning_rate_mapping: {}

Training Logs

Epoch Step Training Loss bge-dev_ndcg@10 NanoMSMARCO_R100_ndcg@10 NanoNFCorpus_R100_ndcg@10 NanoNQ_R100_ndcg@10 NanoBEIR_R100_mean_ndcg@10
-1 -1 - 0.7278 (+0.1254) 0.6867 (+0.1463) 0.3879 (+0.0628) 0.7808 (+0.2802) 0.6185 (+0.1631)
0.0018 1 3.7141 - - - - -
1.7640 1000 0.4219 - - - - -
3.5276 2000 0.2279 - - - - -
5.2911 3000 0.1297 - - - - -
7.0547 4000 0.0732 0.7438 (+0.1415) 0.6766 (+0.1362) 0.4318 (+0.1068) 0.6469 (+0.1462) 0.5851 (+0.1297)
8.8187 5000 0.0294 - - - - -
10.0 5670 - 0.7433 (+0.1409) 0.6805 (+0.1400) 0.3949 (+0.0699) 0.6468 (+0.1461) 0.5740 (+0.1187)
-1 -1 - 0.7438 (+0.1415) 0.6766 (+0.1362) 0.4318 (+0.1068) 0.6469 (+0.1462) 0.5851 (+0.1297)
  • The bold row denotes the saved checkpoint.

Training Time

  • Training: 1.9 hours

Framework Versions

  • Python: 3.12.13
  • Sentence Transformers: 5.6.0
  • Transformers: 5.13.1
  • PyTorch: 2.11.0+cu128
  • Accelerate: 1.14.0
  • Datasets: 4.0.0
  • Tokenizers: 0.22.2

Additional Resources

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
21
Safetensors
Model size
0.6B params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for IoannisKat1/reranker-bge-reranker-v2-m3-dev

Finetuned
(93)
this model

Paper for IoannisKat1/reranker-bge-reranker-v2-m3-dev

Evaluation results