sentence-transformers safetensors new sentence-similarity feature-extraction generated_from_trainer dataset_size:303863 loss:CachedGISTEmbedLoss legal taxation fiscalité tax custom_code fr dataset:louisbrulenaudet/code-impots dataset:louisbrulenaudet/code-impots-annexe-iv dataset:louisbrulenaudet/code-impots-annexe-iii dataset:louisbrulenaudet/code-impots-annexe-i dataset:louisbrulenaudet/code-impots-annexe-ii dataset:louisbrulenaudet/livre-procedures-fiscales dataset:louisbrulenaudet/bofip arxiv:1908.10084 base_model:Alibaba-NLP/gte-multilingual-base base_model:finetune:Alibaba-NLP/gte-multilingual-base license:apache-2.0 model-index co2_eq_emissions autotrain_compatible text-embeddings-inference endpoints_compatible region:us
---
base_model: Alibaba-NLP/gte-multilingual-base
datasets:
- louisbrulenaudet/code-impots
- louisbrulenaudet/code-impots-annexe-iv
- louisbrulenaudet/code-impots-annexe-iii
- louisbrulenaudet/code-impots-annexe-i
- louisbrulenaudet/code-impots-annexe-ii
- louisbrulenaudet/livre-procedures-fiscales
- louisbrulenaudet/bofip
language:
- fr
library_name: sentence-transformers
license: apache-2.0
metrics:
- cosine_accuracy@1
- cosine_accuracy@3
- cosine_accuracy@5
- cosine_accuracy@10
- cosine_precision@1
- cosine_precision@3
- cosine_precision@5
- cosine_precision@10
- cosine_recall@1
- cosine_recall@3
- cosine_recall@5
- cosine_recall@10
- cosine_ndcg@10
- cosine_mrr@10
- cosine_map@100
- dot_accuracy@1
- dot_accuracy@3
- dot_accuracy@5
- dot_accuracy@10
- dot_precision@1
- dot_precision@3
- dot_precision@5
- dot_precision@10
- dot_recall@1
- dot_recall@3
- dot_recall@5
- dot_recall@10
- dot_ndcg@10
- dot_mrr@10
- dot_map@100
pipeline_tag: sentence-similarity
tags:
- sentence-transformers
- sentence-similarity
- feature-extraction
- generated_from_trainer
- dataset_size:303863
- loss:CachedGISTEmbedLoss
- legal
- taxation
- fiscalité
- tax
widget:
- source_sentence: Élucider la signification de 'navire de plaisance' d'après l'article
    217 undecies du Code général des impôts et détailler les différents types d'investissements
    concernés.
  sentences:
  - Selon l'article 217 undecies du Code général des impôts, pour bénéficier de la
    déduction fiscale, les investissements doivent être réalisés sous forme de souscriptions
    au capital de sociétés qui gèrent des concessions de service public local. Ces
    investissements doivent être spécifiquement orientés vers des activités productives
    assignées à ces concessions pour une durée minimale de cinq ans. En outre, ces
    concessions doivent opérer exclusivement dans des secteurs éligibles situés dans
    les départements ou collectivités d'outre-mer, contribuant ainsi au développement
    économique des territoires ultramarins.
  - Dans le contexte de l'article 217 undecies du Code général des impôts, un 'navire
    de plaisance' désigne une embarcation spécifiquement utilisée pour des activités
    de loisir, excluant ainsi toute utilisation professionnelle telle que la pêche
    ou le transport. Les investissements pertinents pouvant bénéficier de cet agrément
    incluent non seulement l'achat ou la construction de ces navires, mais aussi leur
    utilisation dans des activités de tourisme comme la location sous différentes
    formes, les voyages organisés et la pêche de loisir, ainsi que les investissements
    dans les infrastructures et équipements nécessaires à ces activités touristiques.
  - L'article R. 257 B-1 du Livre des Procédures Fiscales organise les modalités pratiques
    relatives à l'information du contribuable quant à la mise en œuvre d'une compensation
    fiscale de recouvrement. Cette disposition confère au contribuable le droit d'être
    informé en amont de la réalisation de la compensation. Ce dispositif implique
    que le comptable public est tenu de communiquer avec le contribuable, afin de
    l'éclairer sur le processus et les conséquences de cette opération. L'information
    préalable joue un rôle crucial, car elle accorde au redevable l'opportunité de
    comprendre les ajustements à venir sur ses comptes vis-à-vis de l'administration
    fiscale.
- source_sentence: Énumérer en détail les informations requises par l'article 50-00
    G, Annexe IV du Code général des impôts concernant la déclaration récapitulative
    mensuelle que doit établir l'entrepositaire agréé.
  sentences:
  - 'Pour se conformer aux dispositions imposées par l''article 50-00 G, Annexe IV
    du Code général des impôts, l''entrepositaire agréé est tenu de rédiger une déclaration
    récapitulative mensuelle distincte pour chaque entrepôt fiscal suspensif des droits
    d''accises qu''il gère. Une telle déclaration doit comprendre : les noms ou la
    dénomination de l''entreprise, l''adresse du siège social ou du principal établissement,
    le numéro d''identification de l''entrepôt fiscal, l''adresse de l''entrepôt fiscal,
    le lieu de tenue de la comptabilité matières, l''année et le mois concernés par
    la déclaration, la date et le lieu d''établissement de la déclaration ainsi que
    la signature et le cachet de l''entreprise. Elle doit également indiquer la raison
    sociale de la caution ou, le cas échéant, la mention ''Dispense''. Au besoin,
    elle peut comporter des mentions relatives aux comptes d''âge ou de vieillissement,
    les références aux contrats d''achat qui exigent un visa de l''établissement mentionné
    dans l''article L. 621-1 du Code rural et de la pêche maritime, les numéros d''enregistrement
    des contrats d''achat et les numéros des déclarations de transactions soumises
    aux interprofessions, ainsi que l''avis de blocage, l''engagement de garantie
    ou la mainlevée de warrant agricole ou de l''engagement de garantie, selon l''applicabilité
    à chaque cas particulier.'
  - L'intégration de Mayotte dans le champ d'application du Code général des impôts,
    rendant ainsi les entreprises mahoraises éligibles au crédit d'impôt pour investissements
    productifs outre-mer, a été actée par le législateur au travers de la loi n° 2010-1487
    du 7 décembre 2010. Cette loi a élevé Mayotte au statut de département, étendant
    à ce titre l'ensemble des dispositions du CGI. L'ordonnance n° 2013-837 du 19
    septembre 2013 est venue quant à elle expliciter les adaptations nécessaires au
    code des douanes et au CGI pour Mayotte. Conséquence directe de ces textes, les
    entreprises exerçant à Mayotte peuvent prétendre au crédit d'impôt en vigueur
    dès le 1er janvier 2014, conformément à l'article 244 quater W du CGI.
  - Le relevé des frais généraux prévu à l'article 54 quater du Code général des impôts
    doit comporter les renseignements propres à l'exercice pour lequel il est fourni
    et ceux qui se rapportent à l'exercice précédent.
- source_sentence: Quels sont les éléments que doit contenir la demande déposée auprès
    de la direction générale des finances publiques pour que les sociétés, compagnies
    ou entreprises françaises puissent bénéficier du régime fiscal prévu pour l'émission
    de séries spéciales d'obligations à l'étranger ?
  sentences:
  - Pour le premier exercice comptable de l'entreprise d'une durée de quatorze mois,
    le plafond standard d'exonération de 61 000 € est ajusté au prorata de la durée,
    donnant un nouveau plafond d'exonération de 71 166 € (61 000 € x 14/12).
  - Pour être admises à bénéficier du régime fiscal prévu au 1 de l'article 131 ter
    du Code général des impôts, les sociétés, compagnies ou entreprises françaises
    qui se proposent d'émettre à l'étranger des séries spéciales d'obligations, doivent
    déposer au préalable une demande spéciale à la direction générale des finances
    publiques. Cette demande indique la date et les conditions de l'émission ainsi
    que le nombre, le montant et les numéros des titres à émettre.
  - Pour atténuer certaines contraintes fiscales, les sociétés étrangères exerçant
    une activité sur le territoire français ont la possibilité de restreindre le montant
    de la retenue à la source, qu'elles sont tenues de verser en vertu de l'article
    115 quinquies du Code général des impôts, à une somme équivalente à l'impôt définitivement
    dû. Cette réduction prend en considération les prévisions de distributions de
    dividendes et le lieu de résidence fiscale des actionnaires. Pour bénéficier de
    ce dispositif, lesdites sociétés doivent expressément formuler une demande en
    référence à la directive pertinente et la joindre à la déclaration n° 2777-D-SD.
    Cela implique un suivi rigoureux de l'impact des distributions réelles et des
    domiciliations des bénéficiaires afin d'éviter les insuffisances de versement,
    sous peine de régularisation ultérieure accompagnée de l'intérêt de retard selon
    les articles 1727 et 1729 du même code.
- source_sentence: Expliquez comment est organisé le recouvrement de l'impôt sur la
    fortune immobilière en référence aux modalités décrites dans l'article 1658 du
    Code général des impôts.
  sentences:
  - 'Dans le contexte de la déclaration des revenus fonciers, la société doit émettre
    une attestation annuelle qui doit être remise à chaque associé au plus tard le
    deuxième jour ouvré après le 1er mai, selon les modalités fixées par le décret
    n° 2009-316 du 20 mars 2009. Cette attestation revêt une importance cruciale puisqu''elle
    permet aux associés de renseigner correctement leur déclaration de revenus fonciers
    via l''imprimé n° 2044 spécial. Elle doit recenser des informations précises :
    l''identité et l''adresse de l''associé, la détention des parts au cours de l''année,
    le respect des conditions de loyer, le montant de l''amortissement ainsi que le
    revenu net foncier qui découle des parts de l''associé, tant dans le régime de
    droit commun qu''en incluant la déduction liée à l''amortissement.'
  - Le recouvrement de l'impôt sur la fortune immobilière s'orchestre conformément
    aux dispositions disposées dans l'article 1658 du Code général des impôts. Cela
    implique que les techniques, les procédures, ainsi que les moyens d'exécution
    prévus pour le recouvrement de cet impôt sont alignés sur ceux établis pour l'impôt
    sur le revenu.
  - L'article 981 du Code général des impôts établit que les normes régissant les
    droits d'enregistrement, sauf spécification contraire, sont adaptées à la gestion
    de l'impôt sur la fortune immobilière. Cela signifie que les méthodes de contrôle,
    telles que les audits et inspections, ainsi que les procédures de règlement des
    contentieux sont extensibles à l'impôt sur la fortune immobilière. Cette approche
    garantit une uniformité des pratiques administratives fiscales, facilitant ainsi
    une application homogène et cohérente des lois fiscales relatives à la fortune
    immobilière.
- source_sentence: Exposer les modalités de dérogation au secret fiscal autorisant
    le juge à demander des documents fiscaux nécessaires pour résoudre un litige,
    en vertu de l'article L. 143 du Livre des Procédures Fiscales.
  sentences:
  - Selon les dispositions du Bulletin officiel des finances publiques-instructions
    administratives, spécifiquement le BOI-DJC-SECR-10-20-50, le procureur de la République
    détient le droit, dans le contexte de toute investigation judiciaire, qu'elle
    relève d'une enquête de flagrance, préliminaire ou autre, de solliciter des renseignements
    ou documents essentiels à l'enquête auprès de l'administration fiscale. Cette
    sollicitation peut être adressée directement ou via un officier de police judiciaire
    agissant sur une réquisition du procureur. Conformément à l'article L.141 A du
    Livre des procédures fiscales, le secret fiscal ne constitue pas un frein légal
    à la transmission des informations ou documents exigés par le procureur.
  - L'article 199 novovicies du Code général des impôts dispose de modalités de réduction
    d'impôt spécifiques pour les transactions d'acquisition et de construction durant
    les années 2023 et 2024. En 2023, les bénéfices de cette réduction s'établissent
    à 4,5 % pour la première phase triennale et à 2,5 % pour la seconde. Pour les
    opérations effectuées en 2024, les réductions offertes sont de 3 % pendant la
    première période triennale et de 2 % pour la suivante. Ces pourcentages se rapportent
    aux acquisitions non mentionnées au 5° du B du I ainsi qu'aux constructions référencées
    au 1° du B du I, avec nécessité que le permis de construire ait été délivré durant
    l'année correspondante.
  - Conformément aux dispositions de l'article L. 143 du Livre des Procédures Fiscales,
    le secret fiscal peut être levé dans le cadre d'un litige par décision du juge.
    Cette mesure vise à autoriser la présentation de documents fiscaux, jugés utiles
    par le magistrat pour trancher une affaire. La levée de ce secret est toutefois
    soumise à une interprétation stricte, de sorte que seuls les documents réellement
    susceptibles d'éclairer le juge sur l'étendue du préjudice des individus impliqués
    peuvent être divulgués. Les renseignements qui n'ont de pertinence que pour des
    questions périphériques de la procédure ou qui se rapportent uniquement à l'application
    d'un jugement déjà prononcé sont exclus de cette possibilité de communication.
co2_eq_emissions:
  emissions: 2036.3553910202609
  energy_consumed: 5.516569338938681
  source: codecarbon
  training_type: fine-tuning
  on_cloud: false
  cpu_model: AMD EPYC 9V84 96-Core Processor
  ram_total_size: 314.68053817749023
  hours_used: 9.954
  hardware_used: 1 x NVIDIA H100 NVL
model-index:
- name: SentenceTransformer based on Alibaba-NLP/gte-multilingual-base
  results:
  - task:
      type: information-retrieval
      name: Information Retrieval
    dataset:
      name: Lemone
      type: Lemone
    metrics:
    - type: cosine_accuracy@1
      value: 0.9736673089274245
      name: Cosine Accuracy@1
    - type: cosine_accuracy@3
      value: 0.9916506101477199
      name: Cosine Accuracy@3
    - type: cosine_accuracy@5
      value: 0.993577392421323
      name: Cosine Accuracy@5
    - type: cosine_accuracy@10
      value: 0.9967886962106616
      name: Cosine Accuracy@10
    - type: cosine_precision@1
      value: 0.9736673089274245
      name: Cosine Precision@1
    - type: cosine_precision@3
      value: 0.33055020338257335
      name: Cosine Precision@3
    - type: cosine_precision@5
      value: 0.1987154784842646
      name: Cosine Precision@5
    - type: cosine_precision@10
      value: 0.09967886962106615
      name: Cosine Precision@10
    - type: cosine_recall@1
      value: 0.9736673089274245
      name: Cosine Recall@1
    - type: cosine_recall@3
      value: 0.9916506101477199
      name: Cosine Recall@3
    - type: cosine_recall@5
      value: 0.993577392421323
      name: Cosine Recall@5
    - type: cosine_recall@10
      value: 0.9967886962106616
      name: Cosine Recall@10
    - type: cosine_ndcg@10
      value: 0.9865226900324854
      name: Cosine Ndcg@10
    - type: cosine_mrr@10
      value: 0.9830947793375538
      name: Cosine Mrr@10
    - type: cosine_map@100
      value: 0.9832069316895906
      name: Cosine Map@100
    - type: dot_accuracy@1
      value: 0.9736673089274245
      name: Dot Accuracy@1
    - type: dot_accuracy@3
      value: 0.9916506101477199
      name: Dot Accuracy@3
    - type: dot_accuracy@5
      value: 0.993577392421323
      name: Dot Accuracy@5
    - type: dot_accuracy@10
      value: 0.9967886962106616
      name: Dot Accuracy@10
    - type: dot_precision@1
      value: 0.9736673089274245
      name: Dot Precision@1
    - type: dot_precision@3
      value: 0.33055020338257335
      name: Dot Precision@3
    - type: dot_precision@5
      value: 0.1987154784842646
      name: Dot Precision@5
    - type: dot_precision@10
      value: 0.09967886962106615
      name: Dot Precision@10
    - type: dot_recall@1
      value: 0.9736673089274245
      name: Dot Recall@1
    - type: dot_recall@3
      value: 0.9916506101477199
      name: Dot Recall@3
    - type: dot_recall@5
      value: 0.993577392421323
      name: Dot Recall@5
    - type: dot_recall@10
      value: 0.9967886962106616
      name: Dot Recall@10
    - type: dot_ndcg@10
      value: 0.9865226900324854
      name: Dot Ndcg@10
    - type: dot_mrr@10
      value: 0.9830947793375538
      name: Dot Mrr@10
    - type: dot_map@100
      value: 0.9832069316895906
      name: Dot Map@100
---

<img src="assets/thumbnail.webp">

# Lemone-Embed: A Series of Fine-Tuned Embedding Models for French Taxation

<div class="not-prose bg-gradient-to-r from-gray-50-to-white text-gray-900 border" style="border-radius: 8px; padding: 0.5rem 1rem;">
    <p>This series is made up of 7 models, 3 basic models of different sizes trained on 1 epoch, 3 models trained on 2 epochs making up the Boost series and a Pro model with a non-Roberta architecture.</p>
</div>

This sentence transformers model, specifically designed for French taxation, has been fine-tuned on a dataset comprising 43 million tokens, integrating a blend of semi-synthetic and fully synthetic data generated by GPT-4 Turbo and Llama 3.1 70B, which have been further refined through evol-instruction tuning and manual curation. 

The model is tailored to meet the specific demands of information retrieval across large-scale tax-related corpora, supporting the implementation of production-ready Retrieval-Augmented Generation (RAG) applications. Its primary purpose is to enhance the efficiency and accuracy of legal processes in the taxation domain, with an emphasis on delivering consistent performance in real-world settings, while also contributing to advancements in legal natural language processing research.

This is a [sentence-transformers](https://www.SBERT.net) model finetuned from [Alibaba-NLP/gte-multilingual-base](https://huggingface.co/Alibaba-NLP/gte-multilingual-base). 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:** [Alibaba-NLP/gte-multilingual-base](https://huggingface.co/Alibaba-NLP/gte-multilingual-base) <!-- at revision 7fc06782350c1a83f88b15dd4b38ef853d3b8503 -->
- **Maximum Sequence Length:** 8192 tokens
- **Output Dimensionality:** 768 tokens
- **Similarity Function:** Cosine Similarity
- **Developed by:** Louis Brulé Naudet
- **Funded by:** Microsoft for Startups
- **Shared by:** Louis Brulé Naudet
- **Model type:** Sentence Transformers
- **Language(s) (NLP):** FR
- **License:** Apache 2
- **Finetuned from model:** [Alibaba-NLP/gte-multilingual-base](https://huggingface.co/Alibaba-NLP/gte-multilingual-base)

### Model Sources

- **Documentation:** [Sentence Transformers Documentation](https://sbert.net)
- **Repository:** [Sentence Transformers on GitHub](https://github.com/UKPLab/sentence-transformers)
- **Hugging Face:** [Sentence Transformers on Hugging Face](https://huggingface.co/models?library=sentence-transformers)

### Full Model Architecture

```
SentenceTransformer(
  (0): Transformer({'max_seq_length': 8192, 'do_lower_case': False}) with Transformer model: NewModel 
  (1): Pooling({'word_embedding_dimension': 768, '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:

```bash
pip install -U sentence-transformers
```

Then you can load this model and run inference.
```python
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("louisbrulenaudet/lemone-gte-embed-max")
# Run inference
sentences = [
    "Exposer les modalités de dérogation au secret fiscal autorisant le juge à demander des documents fiscaux nécessaires pour résoudre un litige, en vertu de l'article L. 143 du Livre des Procédures Fiscales.",
    "Conformément aux dispositions de l'article L. 143 du Livre des Procédures Fiscales, le secret fiscal peut être levé dans le cadre d'un litige par décision du juge. Cette mesure vise à autoriser la présentation de documents fiscaux, jugés utiles par le magistrat pour trancher une affaire. La levée de ce secret est toutefois soumise à une interprétation stricte, de sorte que seuls les documents réellement susceptibles d'éclairer le juge sur l'étendue du préjudice des individus impliqués peuvent être divulgués. Les renseignements qui n'ont de pertinence que pour des questions périphériques de la procédure ou qui se rapportent uniquement à l'application d'un jugement déjà prononcé sont exclus de cette possibilité de communication.",
    "Selon les dispositions du Bulletin officiel des finances publiques-instructions administratives, spécifiquement le BOI-DJC-SECR-10-20-50, le procureur de la République détient le droit, dans le contexte de toute investigation judiciaire, qu'elle relève d'une enquête de flagrance, préliminaire ou autre, de solliciter des renseignements ou documents essentiels à l'enquête auprès de l'administration fiscale. Cette sollicitation peut être adressée directement ou via un officier de police judiciaire agissant sur une réquisition du procureur. Conformément à l'article L.141 A du Livre des procédures fiscales, le secret fiscal ne constitue pas un frein légal à la transmission des informations ou documents exigés par le procureur.",
]
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]
```

<!--
### 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: `Lemone`
* Evaluated with [<code>InformationRetrievalEvaluator</code>](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.InformationRetrievalEvaluator)

| Metric              | Value      |
|:--------------------|:-----------|
| cosine_accuracy@1   | 0.9737     |
| cosine_accuracy@3   | 0.9917     |
| cosine_accuracy@5   | 0.9936     |
| cosine_accuracy@10  | 0.9968     |
| cosine_precision@1  | 0.9737     |
| cosine_precision@3  | 0.3306     |
| cosine_precision@5  | 0.1987     |
| cosine_precision@10 | 0.0997     |
| cosine_recall@1     | 0.9737     |
| cosine_recall@3     | 0.9917     |
| cosine_recall@5     | 0.9936     |
| cosine_recall@10    | 0.9968     |
| cosine_ndcg@10      | 0.9865     |
| cosine_mrr@10       | 0.9831     |
| **cosine_map@100**  | **0.9832** |
| dot_accuracy@1      | 0.9737     |
| dot_accuracy@3      | 0.9917     |
| dot_accuracy@5      | 0.9936     |
| dot_accuracy@10     | 0.9968     |
| dot_precision@1     | 0.9737     |
| dot_precision@3     | 0.3306     |
| dot_precision@5     | 0.1987     |
| dot_precision@10    | 0.0997     |
| dot_recall@1        | 0.9737     |
| dot_recall@3        | 0.9917     |
| dot_recall@5        | 0.9936     |
| dot_recall@10       | 0.9968     |
| dot_ndcg@10         | 0.9865     |
| dot_mrr@10          | 0.9831     |
| dot_map@100         | 0.9832     |

<!--
## 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
* Size: 303,863 training samples
* Columns: <code>query</code>, <code>positive</code>, and <code>negative</code>
* Approximate statistics based on the first 1000 samples:
  |         | query                                                                               | positive                                                                             | negative                                                                              |
  |:--------|:------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------|:--------------------------------------------------------------------------------------|
  | type    | string                                                                              | string                                                                               | string                                                                                |
  | details | <ul><li>min: 27 tokens</li><li>mean: 51.44 tokens</li><li>max: 137 tokens</li></ul> | <ul><li>min: 39 tokens</li><li>mean: 197.8 tokens</li><li>max: 1607 tokens</li></ul> | <ul><li>min: 48 tokens</li><li>mean: 224.41 tokens</li><li>max: 2735 tokens</li></ul> |
* Loss: [<code>CachedGISTEmbedLoss</code>](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#cachedgistembedloss) with these parameters:
  ```json
  {'guide': SentenceTransformer(
    (0): Transformer({'max_seq_length': 8192, 'do_lower_case': False}) with Transformer model: NewModel 
    (1): Pooling({'word_embedding_dimension': 768, '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()
  ), 'temperature': 0.01}
  ```

### Training Hyperparameters
#### Non-Default Hyperparameters

- `eval_strategy`: steps
- `per_device_train_batch_size`: 128
- `learning_rate`: 2e-05
- `num_train_epochs`: 1
- `warmup_ratio`: 0.1
- `fp16`: True
- `batch_sampler`: no_duplicates

#### All Hyperparameters
<details><summary>Click to expand</summary>

- `overwrite_output_dir`: False
- `do_predict`: False
- `eval_strategy`: steps
- `prediction_loss_only`: True
- `per_device_train_batch_size`: 128
- `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`: 2e-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.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`: 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`: 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
- `eval_use_gather_object`: False
- `batch_sampler`: no_duplicates
- `multi_dataset_batch_sampler`: proportional

</details>

### Environmental Impact
Carbon emissions were measured using [CodeCarbon](https://github.com/mlco2/codecarbon).
- **Energy Consumed**: 5.517 kWh
- **Carbon Emitted**: 2.036 kg of CO2
- **Hours Used**: 9.954 hours

### Training Hardware
- **On Cloud**: No
- **GPU Model**: 1 x NVIDIA H100 NVL
- **CPU Model**: AMD EPYC 9V84 96-Core Processor
- **RAM Size**: 314.68 GB

### Framework Versions
- Python: 3.10.12
- Sentence Transformers: 3.1.1
- Transformers: 4.44.2
- PyTorch: 2.3.0+cu121
- Accelerate: 0.33.0
- Datasets: 2.21.0
- Tokenizers: 0.19.1

## Citation

### BibTeX

#### Sentence Transformers
```bibtex
@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",
}
```

If you use this code in your research, please use the following BibTeX entry.

```BibTeX
@misc{louisbrulenaudet2024,
  author =       {Louis Brulé Naudet},
  title =        {Lemone-Embed: A Series of Fine-Tuned Embedding Models for French Taxation},
  year =         {2024}
  howpublished = {\url{https://huggingface.co/datasets/louisbrulenaudet/lemone-embed-pro}},
}
```

## Feedback

If you have any feedback, please reach out at [louisbrulenaudet@icloud.com](mailto:louisbrulenaudet@icloud.com).