SentenceTransformer based on intfloat/multilingual-e5-base

This is a sentence-transformers model finetuned from intfloat/multilingual-e5-base on the grag-chunk-idf-only-pos 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 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("Lettria/idf-chunk_embedder-mult_neg_rk2")
# Run inference
sentences = [
    "Est-ce que les artistes bénéficiaires d'une aide financière de la région Île-de-France sont restreints d'accéder à cette nouvelle aide destinée à la jeune création musicale ?",
    "Ce dispositif est ouvert aux artistes n'ayant pas déjà bénéficié de subventions de la part de la Région, à l'exception du Fonds Régional pour les Artistes Emergents (FoRTE)",
    "Nature de l'aide: L’aide régionale est attribuée dans la limite des crédits disponible sur la base des forfaits selon le type de documents de gestion durable\xa0: Pour un RTG ou CBPS\xa0: base de 400 € (dès 4 ha) + 100 € par hectare supplémentaire",
]
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

Semantic Similarity

Metric Value
pearson_cosine nan
spearman_cosine nan

Binary Classification

Metric Value
cosine_accuracy 0.9985
cosine_accuracy_threshold -0.0158
cosine_f1 0.9993
cosine_f1_threshold -0.0158
cosine_precision 1.0
cosine_recall 0.9985
cosine_ap 1.0

Training Details

Training Dataset

grag-chunk-idf-only-pos

  • Dataset: grag-chunk-idf-only-pos at d727e1f
  • Size: 3,696 training samples
  • Columns: sentence1, sentence2, and label
  • Approximate statistics based on the first 1000 samples:
    sentence1 sentence2 label
    type string string int
    details
    • min: 8 tokens
    • mean: 29.9 tokens
    • max: 108 tokens
    • min: 11 tokens
    • mean: 62.29 tokens
    • max: 256 tokens
    • 1: 100.00%
  • Samples:
    sentence1 sentence2 label
    Y a-t-il des incitations financières spécifiques pour les projets de logement qui mettent en œuvre des solutions d'éco-construction ou de végétalisation? Nature de l'aide: L’aide proposée s’établit à 5 % maximum de la dépense HT liée aux travaux et honoraires dans la limite d’un plafond de subvention de 5 000 € par logement.  Possibilité de primes pour les projets particulièrement performants sur le plan énergétique, qui recourent à l'éco-construction ou à la végétalisation 1
    Je suis maire d'une commune de 15 000 habitants en Ile-de-France, mon projet est-il éligible à un financement régional pour améliorer la mobilité? Bénéficiaires: Collectivité ou institution - Communes de 10 000 à 20 000 hab 1
    lycée privé sous-contrat Île-de-France soutien actions sensibilisation numérique Précision sure les bénéficiaires: Lycées franciliens publics et privés sous-contrat 1
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim"
    }
    

Evaluation Dataset

grag-chunk-idf-only-pos

  • Dataset: grag-chunk-idf-only-pos at d727e1f
  • Size: 687 evaluation samples
  • Columns: sentence1, sentence2, and label
  • Approximate statistics based on the first 687 samples:
    sentence1 sentence2 label
    type string string int
    details
    • min: 7 tokens
    • mean: 29.45 tokens
    • max: 63 tokens
    • min: 11 tokens
    • mean: 70.45 tokens
    • max: 247 tokens
    • 1: 100.00%
  • Samples:
    sentence1 sentence2 label
    Quelles démarches dois-je suivre pour déposer une demande d'aide pour mon projet de jardins partagés sur un terrain temporairement inutilisé ? Procédures et démarches: Deux appels à projets sont organisés chaque année. Les porteurs de projets peuvent prendre rendez-vous avec le service en charge du dispositif avant de déposer un dossier sur mesdemarches.iledefrance.fr. Un jury d’élus et de personnalités qualifiées examine les candidatures et propose des soutiens. Sur cette base, la Commission permanente du Conseil régional désigne les projets retenus et arrête le montant de la subvention régionale prévisionnelle 1
    Quels documents me faut-il rassembler pour solliciter une aide numérique pour mon commerce? Réunissez les pièces nécessaires : Un justificatif d'identité du représentant légal,Un extrait Kbis ou D1 de moins de 3 mois,Un RIB,Un justificatif comptable attestant de l’activité de l’entreprise*,Les pièces justificatives des dépenses prévisionnelles (devis, grille tarifaire,...) OU les factures acquittées (dans un délai de 18 mois avant la date de la demande) et le formulaire téléchargeable en ligne 1
    Projets santé numérique soutien région Île-de-France Type de project: Les projets proposés doivent prioritairement concerner l’une ou plusieurs des thématiques suivantes : Innovation en santé,Intelligence artificielle,Télémédecine,Téléconsultation,Téléexpertise,Coordination des professionnels de santé,Amélioration de la prise en charge des patients 1
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim"
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: steps
  • per_device_train_batch_size: 4
  • per_device_eval_batch_size: 4
  • gradient_accumulation_steps: 8
  • num_train_epochs: 10
  • warmup_steps: 369

All Hyperparameters

Click to expand
  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: steps
  • prediction_loss_only: True
  • per_device_train_batch_size: 4
  • per_device_eval_batch_size: 4
  • 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: 5e-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: 10
  • max_steps: -1
  • lr_scheduler_type: linear
  • lr_scheduler_kwargs: {}
  • warmup_ratio: 0.0
  • warmup_steps: 369
  • 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: False
  • 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: 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
  • use_liger_kernel: False
  • eval_use_gather_object: False
  • prompts: None
  • batch_sampler: batch_sampler
  • multi_dataset_batch_sampler: proportional

Training Logs

Epoch Step Training Loss Validation Loss EmbeddingSimEval_spearman_cosine BinaryClassifEval_cosine_ap
7.9654 920 0.0914 0.1569 nan 1.0
9.9567 1150 - 0.1583 nan 1.0

Framework Versions

  • Python: 3.11.9
  • Sentence Transformers: 3.3.1
  • Transformers: 4.45.2
  • PyTorch: 2.4.1+cu121
  • Accelerate: 1.2.1
  • Datasets: 3.2.0
  • Tokenizers: 0.20.3

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}
}
Downloads last month
4
Safetensors
Model size
278M params
Tensor type
F32
·
Inference Providers NEW
This model is not currently available via any of the supported third-party Inference Providers, and the model is not deployed on the HF Inference API.

Model tree for Lettria/idf-chunk_embedder-mult_neg_rk2

Quantized
(27)
this model

Evaluation results