silma-ai/silma-arabic-triplets-dataset-v1.0
Viewer • Updated • 2.28M • 67 • 4
How to use RamzyBakir/arabic-gte-multilingual-base-200k-lora with sentence-transformers:
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("RamzyBakir/arabic-gte-multilingual-base-200k-lora", trust_remote_code=True)
sentences = [
"كيف تجني المال على الإنترنت؟",
"كيف يحصل المرء على نقود مجانية؟",
"كيف يمكنني حذف حسابي على إنستغرام عندما أكون قد نسيت كلمة السر وكلمة السر لرسالتي الإلكترونية؟",
"هل هناك أي طريقة سهلة لكسب المال على الإنترنت؟"
]
embeddings = model.encode(sentences)
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [4, 4]This is a sentence-transformers model finetuned from Alibaba-NLP/gte-multilingual-base on the silma-arabic-triplets-dataset-v1.0 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.
SentenceTransformer(
(0): Transformer({'max_seq_length': 8192, 'do_lower_case': False}) with Transformer model: PeftModelForFeatureExtraction
(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()
)
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("RamzyBakir/arabic-gte-multilingual-base-200k-lora", trust_remote_code=True)
# Run inference
sentences = [
'كيف لي أن أصبح مصمماً جيداً؟',
'كيف أكون مصمماً جيداً؟',
'كيف هي الحياة كمواطن هندي في فرنسا؟',
]
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]
triplet-evalTripletEvaluator| Metric | Value |
|---|---|
| cosine_accuracy | 0.9603 |
anchor, positive, and negative| anchor | positive | negative | |
|---|---|---|---|
| type | string | string | string |
| details |
|
|
|
| anchor | positive | negative |
|---|---|---|
أول المستجيبين ينظرون إلى سيارة انزلقت من على كتلة ثلجية |
الناس يتفقدون ما حدث لسيارة. |
عربة الكهوف تقود على طول الشاطئ |
For young people between 18 and 24, as many as 79% were in favor. |
بالنسبة للشباب الذين تتراوح أعمارهم بين 18 و 24 سنة، فإن ما يصل نسبته إلى 79 ٪ كانو يؤيدونه. |
إن الطلاب هم أكثر مجموعة مربحة ممن تتراوح أعمارهم من 18 إلى 24 عامًا. |
So the image that I like to think of, instead of glass ceiling, is the high bridge. |
إذاً ، فالصورة التي أود أن أفكر بها ، بدلاً من السقف الزجاجي (الصورة التحكمية) ، هي صورة الجسر العالي. |
و في حاله الإرتفاع الشاهق للسطح، سترى السقف فقط. |
MultipleNegativesRankingLoss with these parameters:{
"scale": 20.0,
"similarity_fct": "cos_sim"
}
anchor, positive, and negative| anchor | positive | negative | |
|---|---|---|---|
| type | string | string | string |
| details |
|
|
|
| anchor | positive | negative |
|---|---|---|
امرأة ترتدي قميصاً مكتوب عليه اسبانياً في حدث ما |
هم في حدث. |
المرأة راقصة ترتدي قميص التوتو |
حكم يرتدي زلاجات و خوذة يمسح أرضية ما يبدو كملعب كرة سلة. |
الحكم كان لديه قدمين |
الحكم لم يكن لديه شيء في يديه |
لم يكن ذلك ممتعاً جداً |
لم يكن الأمر لطيفاً حقاً |
كان ذلك قاسياً |
MultipleNegativesRankingLoss with these parameters:{
"scale": 20.0,
"similarity_fct": "cos_sim"
}
eval_strategy: stepsper_device_train_batch_size: 32per_device_eval_batch_size: 32learning_rate: 0.0002num_train_epochs: 1warmup_ratio: 0.06fp16: Trueload_best_model_at_end: Trueoverwrite_output_dir: Falsedo_predict: Falseeval_strategy: stepsprediction_loss_only: Trueper_device_train_batch_size: 32per_device_eval_batch_size: 32per_gpu_train_batch_size: Noneper_gpu_eval_batch_size: Nonegradient_accumulation_steps: 1eval_accumulation_steps: Nonetorch_empty_cache_steps: Nonelearning_rate: 0.0002weight_decay: 0.0adam_beta1: 0.9adam_beta2: 0.999adam_epsilon: 1e-08max_grad_norm: 1.0num_train_epochs: 1max_steps: -1lr_scheduler_type: linearlr_scheduler_kwargs: {}warmup_ratio: 0.06warmup_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: Truefp16_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: Trueignore_data_skip: Falsefsdp: []fsdp_min_num_params: 0fsdp_config: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}fsdp_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: proportional| Epoch | Step | Training Loss | Validation Loss | triplet-eval_cosine_accuracy |
|---|---|---|---|---|
| 0.16 | 500 | 0.3917 | 0.2733 | 0.9564 |
| 0.32 | 1000 | 0.3188 | 0.2621 | 0.9575 |
| 0.48 | 1500 | 0.3088 | 0.2537 | 0.9594 |
| 0.64 | 2000 | 0.3046 | 0.2490 | 0.9603 |
| 0.8 | 2500 | 0.2924 | 0.2474 | 0.9604 |
| 0.96 | 3000 | 0.2976 | 0.2456 | 0.9603 |
@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",
}
@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}
}
Base model
Alibaba-NLP/gte-multilingual-base