SentenceTransformer based on sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2
This is a sentence-transformers model finetuned from sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2. It maps sentences & paragraphs to a 384-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: sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2
- Maximum Sequence Length: 128 tokens
- Output Dimensionality: 384 dimensions
- Similarity Function: Cosine Similarity
Model Sources
- Documentation: Sentence Transformers Documentation
- Repository: Sentence Transformers on GitHub
- Hugging Face: Sentence Transformers on Hugging Face
Full Model Architecture
SentenceTransformer(
(0): Transformer({'max_seq_length': 128, 'do_lower_case': False}) with Transformer model: BertModel
(1): Pooling({'word_embedding_dimension': 384, '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})
)
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("Thomslionel/embedings")
# Run inference
sentences = [
"Papabondieu, l'homme\n et le tigre",
"Comme le dit le proverbe : « Papabondieu est le premier, l'homme le deuxième, et le tigre le dernier. » Un jour, tigre croise l'homme à la rivière et lui demande s'il croit que le proverbe dit la vérité. « Permets-moi de grimper sur ce cocotier pour réfléchir et te répondre. » Lorsqu'il se retrouve très, très haut, sur la cime de l'arbre, l'homme crie à tigre : « Le proverbe dit la vérité : Papabondieu est le premier, l'homme le deuxième, et le tigre le dernier. »\n\nTigre grogne, rugit et siffle longuement pour rameuter ses frères qui accourent aussitôt en rangs serrés. « L'homme qui est dans ce cocotier prétend que : Papabondieu est le premier, l'homme le deuxième, et le tigre le dernier. » « Mensonge, » rétorquent les tigres qui ceinturent l'arbre, lui labourent le tronc avec leurs griffes, le secouent sans pour autant arriver à y grimper. Du haut du cocotier, l'homme regarde la scène avec un sourire narquois. « Nous ferons la courte échelle, » s'écrie tigre, « et avec nos corps nous élèverons une tour assez haute pour que le dernier d'entre nous puisse faire tomber l'homme de son perchoir. Tigre ne sera jamais le dernier ! »\n\nEt c'est ce que les tigres firent avec entrain et détermination. Les vieux et les moins vieux consolidèrent la base, les adultes et les jeunes grimpèrent au sommet de l'échelle. C'est alors que l'homme, perché sur la cime qu'avait atteint le plus jeune des tigres, se pencha et lui glissa à l'oreille, assez fort pour qu'on l'entende : « Si tu bouges d'une semelle, je te coupe la tête avec mon couteau. » En entendant la menace faite à son petit, la mère du jeune tigre qui se trouvait au milieu de la tour, rugit de terreur : « Yooowwwwwwwwwwwwwwwww ! »\n\nLes tigres sursautèrent et déséquilibrèrent la tour qui s'écroula ; ils tombèrent et prirent la poudre d'escampette. Quand ils eurent tous disparu, l'homme debout au pied du cocotier déclara : « Et toc ! Comme le dit la parole : Papabondieu est le premier, l'homme le deuxième et le tigre le dernier. »",
'L’autruche était depuis toujours la Reine des Oiseaux. Grande et forte, elle savait courir très vite, mais surtout, elle était extrêmement sage et perspicace. Cependant, certains oiseaux, surtout ceux qui étaient fiers de voler haut et bien, se plaignaient de leur reine.\n\nL’aigle protestait plus que les autres :\n\n« Comment se fait-il que l’autruche soit notre reine puisqu’elle ne sait pas voler ? Pendant que nous y sommes, une poule pourrait aussi bien faire l’affaire ! »\n\nLe cormoran, l’albatros, puis le serpentaire se rallièrent à l’aigle, obtenant que l’on procède à de nouvelles élections. L’oiseau qui volerait le plus haut, régnerait sur les autres. L’autruche ne participa même pas à la compétition et, de honte, cacha sa tête dans le sable.\n\nLa compétition commença. Le cormoran, l’albatros et le serpentaire s’élevèrent très haut dans le ciel, mais l’aigle vola encore plus haut. Il planait triomphalement dans les nuages, quand il vit soudain un petit troglodyte s’agiter au-dessus de lui. Il s’était caché subrepticement dans le plumage de l’aigle qui l’avait emporté jusque dans le ciel.\n\nL’aigle tenta en vain de voler encore plus haut, mais les forces lui manquèrent. Les oiseaux furent interloqués et mécontents. Ce minuscule troglodyte ferait, en vérité, un piètre roi ! Le petit oiseau se hâta de les rassurer :\n\n« Je ne veux pas être roi. Quel souverain pourrais-je faire ? Aussi mauvais que ce stupide aigle qui se laisse duper par n’importe qui ? Que la sage autruche continue à être notre reine ! »\n\nEt c’est ainsi que l’autruche resta la Reine des Oiseaux.',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 384]
# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Training Details
Training Dataset
Unnamed Dataset
- Size: 339 training samples
- Columns:
sentence_0
andsentence_1
- Approximate statistics based on the first 339 samples:
sentence_0 sentence_1 type string string details - min: 5 tokens
- mean: 10.63 tokens
- max: 31 tokens
- min: 97 tokens
- mean: 127.88 tokens
- max: 128 tokens
- Samples:
sentence_0 sentence_1 Le lièvre, la hyène et les pois de terre
Il était une fois, un cultivateur qui sema des pois de terre. Le champ produisit beaucoup et le cultivateur en récolta une grande quantité qu'il conserva dans un grenier. La même année, une famine frappa les animaux de la brousse. Alors le lièvre trouva un plan pour se nourrir avec sa famille à partir du grenier du cultivateur. Il se rendait au village en l'absence des grandes personnes et trouvait un enfant à la maison. Il disait à l'enfant d'aller enlever des pois de terre et de lui amener pour qu'il en fasse un tour de magie. Quand l'enfant lui apportait une certaine quantité, il prononçait des formules en alignant les grains de pois de terre sur le sol de sorte à présenter une belle image. L'enfant, tout content, applaudissait et le lièvre emportait la quantité de pois de terre pour manger avec sa famille. Au retour des parents, l'enfant leur expliqua : « Il y a quelqu'un qui vient jouer avec moi en votre absence et emporte des pois de terre en repartant. » Les parents guettaient d...
La bataille des animaux
L'éléphant apporta un jour ses dabas chez le forgeron pour qu'il les lui arrangeât. Or il arriva que le coq fit la même chose en même temps. Le forgeron arrangea d'abord les dabas du coq. L'éléphant étant survenu blâma le forgeron disant : « Il faut d'abord arranger mes dabas, car je suis plus fort que le coq. » « Montre-le, » dit le forgeron.
L'éléphant se mit à faire caca et fit un tas énorme. « Montre ce tas au coq, » dit-il. « Il n'aura pas besoin d'en voir plus. Gare à lui s'il veut me voir moi-même ! » L'éléphant s'en alla et le forgeron se mit à faire les dabas de l'éléphant. Là-dessus, survint le coq qui devint furieux en voyant que le forgeron faisait les dabas de l'éléphant : « Il faut faire mes dabas avant tout, » dit-il, « car je suis plus fort que l'éléphant ! » « Montre-le, » dit le forgeron. « Voici les crottes de l'éléphant qui indiquent sa grandeur et sa force. Fais quelque chose à ton tour ! »
Le coq grimpa sur le tas de l'éléphant, gratta avec fureur, le dispersa e...Les trois plus petits hommes du monde
Un jour, Wende dit au chien : « Va me chercher les trois hommes les plus petits que tu trouveras pour que je fasse un sacrifice. » Le chien vit d'abord un homme assis à l'ombre des feuilles des arachides : « Il est bien petit, » dit-il, et il l'emporta. Puis il en trouva un autre qui avait fabriqué une échelle pour pouvoir mettre du grain dans une corbeille à mil. « Est-il petit celui-là ! » et il l'emporta. Puis il en trouva un troisième qui voulait monter à cheval sur une fourmi mais qui ne pouvait pas le faire, étant trop petit, et qui roulait un grain de sable pour pouvoir enfourcher sa monture. Il les amena tous les trois à Wende : « Ce sont bien là, en effet, les plus petits hommes, » dit le dieu, « et c'est avec eux que je vais faire mon sacrifice. »
- Loss:
MultipleNegativesRankingLoss
with these parameters:{ "scale": 20.0, "similarity_fct": "cos_sim" }
Training Hyperparameters
Non-Default Hyperparameters
per_device_train_batch_size
: 16per_device_eval_batch_size
: 16num_train_epochs
: 100multi_dataset_batch_sampler
: round_robin
All Hyperparameters
Click to expand
overwrite_output_dir
: Falsedo_predict
: Falseeval_strategy
: noprediction_loss_only
: Trueper_device_train_batch_size
: 16per_device_eval_batch_size
: 16per_gpu_train_batch_size
: Noneper_gpu_eval_batch_size
: Nonegradient_accumulation_steps
: 1eval_accumulation_steps
: Nonetorch_empty_cache_steps
: Nonelearning_rate
: 5e-05weight_decay
: 0.0adam_beta1
: 0.9adam_beta2
: 0.999adam_epsilon
: 1e-08max_grad_norm
: 1num_train_epochs
: 100max_steps
: -1lr_scheduler_type
: linearlr_scheduler_kwargs
: {}warmup_ratio
: 0.0warmup_steps
: 0log_level
: passivelog_level_replica
: warninglog_on_each_node
: Truelogging_nan_inf_filter
: Truesave_safetensors
: Truesave_on_each_node
: Falsesave_only_model
: Falserestore_callback_states_from_checkpoint
: Falseno_cuda
: Falseuse_cpu
: Falseuse_mps_device
: Falseseed
: 42data_seed
: Nonejit_mode_eval
: Falseuse_ipex
: Falsebf16
: Falsefp16
: Falsefp16_opt_level
: O1half_precision_backend
: autobf16_full_eval
: Falsefp16_full_eval
: Falsetf32
: Nonelocal_rank
: 0ddp_backend
: Nonetpu_num_cores
: Nonetpu_metrics_debug
: Falsedebug
: []dataloader_drop_last
: Falsedataloader_num_workers
: 0dataloader_prefetch_factor
: Nonepast_index
: -1disable_tqdm
: Falseremove_unused_columns
: Truelabel_names
: Noneload_best_model_at_end
: Falseignore_data_skip
: Falsefsdp
: []fsdp_min_num_params
: 0fsdp_config
: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}tp_size
: 0fsdp_transformer_layer_cls_to_wrap
: Noneaccelerator_config
: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}deepspeed
: Nonelabel_smoothing_factor
: 0.0optim
: adamw_torchoptim_args
: Noneadafactor
: Falsegroup_by_length
: Falselength_column_name
: lengthddp_find_unused_parameters
: Noneddp_bucket_cap_mb
: Noneddp_broadcast_buffers
: Falsedataloader_pin_memory
: Truedataloader_persistent_workers
: Falseskip_memory_metrics
: Trueuse_legacy_prediction_loop
: Falsepush_to_hub
: Falseresume_from_checkpoint
: Nonehub_model_id
: Nonehub_strategy
: every_savehub_private_repo
: Nonehub_always_push
: Falsegradient_checkpointing
: Falsegradient_checkpointing_kwargs
: Noneinclude_inputs_for_metrics
: Falseinclude_for_metrics
: []eval_do_concat_batches
: Truefp16_backend
: autopush_to_hub_model_id
: Nonepush_to_hub_organization
: Nonemp_parameters
:auto_find_batch_size
: Falsefull_determinism
: Falsetorchdynamo
: Noneray_scope
: lastddp_timeout
: 1800torch_compile
: Falsetorch_compile_backend
: Nonetorch_compile_mode
: Noneinclude_tokens_per_second
: Falseinclude_num_input_tokens_seen
: Falseneftune_noise_alpha
: Noneoptim_target_modules
: Nonebatch_eval_metrics
: Falseeval_on_start
: Falseuse_liger_kernel
: Falseeval_use_gather_object
: Falseaverage_tokens_across_devices
: Falseprompts
: Nonebatch_sampler
: batch_samplermulti_dataset_batch_sampler
: round_robin
Training Logs
Epoch | Step | Training Loss |
---|---|---|
22.7273 | 500 | 0.3077 |
45.4545 | 1000 | 0.0072 |
68.1818 | 1500 | 0.0039 |
90.9091 | 2000 | 0.0025 |
Framework Versions
- Python: 3.11.12
- Sentence Transformers: 3.4.1
- Transformers: 4.51.1
- PyTorch: 2.6.0+cu124
- Accelerate: 1.5.2
- Datasets: 3.5.0
- Tokenizers: 0.21.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",
}
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
- 8
Inference Providers
NEW
This model isn't deployed by any Inference Provider.
🙋
Ask for provider support