sentence-transformers safetensors bert sentence-similarity feature-extraction fr dataset:crazyjeannot/fr_literary_dataset_base base_model:BAAI/bge-m3 base_model:finetune:BAAI/bge-m3 doi:10.57967/hf/3189 license:cc-by-2.5 autotrain_compatible text-embeddings-inference endpoints_compatible region:us
---
base_model:
- BAAI/bge-m3
datasets:
- crazyjeannot/fr_literary_dataset_base
language:
- fr
library_name: sentence-transformers
license: cc-by-2.5
pipeline_tag: sentence-similarity
tags:
- sentence-transformers
- sentence-similarity
- feature-extraction
widget: []
---

# Literary Encoder

This is an encoder model finetuned from the FlagOpen/FlagEmbedding family of models.

The model is specialized for studying french literary fiction with a training corpus based on 40.000 passages from free from rights french literary novels.

It maps 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](https://huggingface.co/BAAI/bge-m3)
- **Maximum Sequence Length:** 512 tokens
- **Output Dimensionality:** 1024
- **Similarity Function:** Cosine Similarity
- **Training Dataset:** [crazyjeannot/fr_literary_dataset_base](https://huggingface.co/datasets/crazyjeannot/fr_literary_dataset_base)
- **Language:** French
- **License:** cc-by-2.5

### Model Sources

- **Documentation:** [Sentence Transformers Documentation](https://sbert.net)
- **Repository:** [Flag Embedding on GitHub](https://github.com/FlagOpen/FlagEmbedding)
- **Hugging Face:** [BGE dense model on Hugging Face](https://huggingface.co/BAAI/bge-m3)

### Full Model Architecture

```
SentenceTransformer(
  (0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: BertModel 
  (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 (FlagEmbedding)

Then you can load this model and run inference.
```python
from FlagEmbedding import FlagModel

# Download from the 🤗 Hub
model = FlagModel('crazyjeannot/literary_bge_base',
                  query_instruction_for_retrieval="",
                  use_fp16=True)

# Run inference
sentences = [
    'Il y avait, du reste, cette chose assez triste, c’est que si M. de Marsantes, à l’esprit fort ouvert, eût apprécié un fils si différent de lui, Robert de Saint-Loup, parce qu’il était de ceux qui croient que le mérite est attaché à certaines formes de la vie, avait un souvenir affectueux mais un peu méprisant d’un père qui s’était occupé toute sa vie de chasse et de course, avait bâillé à Wagner et raffolé d’Offenbach.',
    "D’ailleurs, les opinions tranchantes abondent dans un siècle où l’on ne doute de rien, hors de l’existence de Dieu ; mais comme les jugements généraux que l’on porte sur les peuples sont assez souvent démentis par l’expérience, je n’aurai garde de prononcer.",
    'Il était chargé de remettre l’objet, quel qu’il fût, au commodore, et d’en prendre un reçu, comme preuve que lui et son camarade s’étaient acquittés de leur commission.',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 1024]
```

### SentenceTransformer

```python
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("sentence_transformers_model_id")

# Run inference
sentences = [
    'Il y avait, du reste, cette chose assez triste, c’est que si M. de Marsantes, à l’esprit fort ouvert, eût apprécié un fils si différent de lui, Robert de Saint-Loup, parce qu’il était de ceux qui croient que le mérite est attaché à certaines formes de la vie, avait un souvenir affectueux mais un peu méprisant d’un père qui s’était occupé toute sa vie de chasse et de course, avait bâillé à Wagner et raffolé d’Offenbach.',
    "D’ailleurs, les opinions tranchantes abondent dans un siècle où l’on ne doute de rien, hors de l’existence de Dieu ; mais comme les jugements généraux que l’on porte sur les peuples sont assez souvent démentis par l’expérience, je n’aurai garde de prononcer.",
    'Il était chargé de remettre l’objet, quel qu’il fût, au commodore, et d’en prendre un reçu, comme preuve que lui et son camarade s’étaient acquittés de leur commission.',
]

embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 1024]
```

## Training Details

### Framework Versions
- Python: 3.9.2
- Sentence Transformers: 3.0.1
- Transformers: 4.41.2
- PyTorch: 2.3.1+cu121
- Accelerate: 0.31.0
- Datasets: 2.20.0
- Tokenizers: 0.19.1

## Citation

If you find this repository useful, please consider giving a like and citation

```
@inproceedings{barre_latent_2024,
      title={Latent {Structures} of {Intertextuality} in {French} {Fiction}}, 
      author={Barré, Jean},
      address = {Aarhus, Denmark},
      series = {{CEUR} {Workshop} {Proceedings}},
      booktitle = {Proceedings of the {Conference} on {Computational} {Humanities} {Research} CHR2024},
      publisher = {CEUR},
      editor = {Haverals, Wouter and Koolen, Marijn and Thompson, Laure},
      year = {2024},
}
```