SentenceTransformer based on U4RASD/NeoAraBERT

This is a sentence-transformers model finetuned from U4RASD/NeoAraBERT. It maps sentences & paragraphs to a 768-dimensional dense vector space and can be used for retrieval.

Model Details

Model Description

  • Model Type: Sentence Transformer
  • Base model: U4RASD/NeoAraBERT
  • Maximum Sequence Length: 512 tokens
  • Output Dimensionality: 768 dimensions
  • Similarity Function: Cosine Similarity
  • Supported Modality: Text

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): NeoWrapper(
    (model): NeoBERT(
      (encoder): Embedding(65000, 768, padding_idx=0)
      (transformer_encoder): ModuleList(
        (0-27): 28 x EncoderBlock(
          (qkv): Linear(in_features=768, out_features=2304, bias=False)
          (wo): Linear(in_features=768, out_features=768, bias=False)
          (ffn): SwiGLU(
            (w12): Linear(in_features=768, out_features=4096, bias=False)
            (w3): Linear(in_features=2048, out_features=768, bias=False)
          )
          (attention_norm): RMSNorm((768,), eps=1e-05, elementwise_affine=True)
          (ffn_norm): RMSNorm((768,), eps=1e-05, elementwise_affine=True)
        )
      )
      (layer_norm): RMSNorm((768,), eps=1e-05, elementwise_affine=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("sentence_transformers_model_id")
# Run inference
sentences = [
    'يرتبط تراجع التصنيف الائتماني للدولة بارتفاع نسبة الدين العام إلى الناتج المحلي الإجمالي، مما يرفع تكلفة الاقتراض مستقبلاً من الأسواق الدولية.',
    'إن تنامي ظاهرة التغير المناخي يفرض تكاليف باهظة على قطاع التأمين العالمي، الذي بدأ يعيد تقييم بوالص التأمين ضد الكوارث في المناطق الساحلية.',
    'أبهر استوديو يوفوتبل المتابعين بقدرته الفائقة على دمج الرسوم ثلاثية الأبعاد (CGI) مع الرسم التقليدي في أنمي قاتل الشياطين، ليقدم تجربة قتال بصرية غير مسبوقة.',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities)
# tensor([[1.0000, 0.8434, 0.1994],
#         [0.8434, 1.0000, 0.2142],
#         [0.1994, 0.2142, 1.0000]])

Training Details

Training Dataset

Unnamed Dataset

  • Size: 899 training samples
  • Columns: sentence_0 and sentence_1
  • Approximate statistics based on the first 100 samples:
    sentence_0 sentence_1
    type string string
    modality text text
    details
    • min: 40 tokens
    • mean: 63.1 tokens
    • max: 89 tokens
    • min: 41 tokens
    • mean: 63.86 tokens
    • max: 95 tokens
  • Samples:
    sentence_0 sentence_1
    الكتب في المكتبة دي بتنقل نفسها من رف لرف، دخلت لقيت كتاب عن 'اختفاء الأشخاص' مفتوح على الصفحة اللي مكتوب فيها اسمي بالظبط. بَعْدَ مُرُورِ عَشْرِ سَنَوَاتٍ، عَادَ الرَّجُلُ لِيَجِدَ كُلَّ شَيْءٍ فِي مَكَانِهِ بِدِقَّةٍ؛ لَا غُبَارَ عَلَى الأَثَاثِ، وَلَا أَثَرَ لِأَيِّ بَشَرٍ فِيهِ.
    الأسعار كل يوم في الطالع، والمرتب زي ما هو مش راضي يتحرك. المواطن البسيط مبقاش ملاحق على مصاريف الأكل والشرب والكهربا. الحكاية مش حكاية فلوس وبس، الفكرة كلها في إدارة الموارد وصناعة بدائل محليّة عشان نقدر نستغني عن الاستيراد اللي بياكل الأخضر واليابس.
    وفي نهاية مطافنا الاستشاري لهذا الأسبوع، تذكروا دائماً أن السلام الداخلي يبدأ من التصالح مع الماضي وتقبل الأمور التي لا نملك القدرة على تغييرها. لو ابنك المراهق بدأ يتغير ويبعد عنكم، بلاش أسلوب التحقيق والزعق، صادقه واسمعه أكتر ما بتتكلم، خليه يحس إن البيت هو أمانه مش مكان للمحاكمة.
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim",
        "gather_across_devices": false,
        "directions": [
            "query_to_doc"
        ],
        "partition_mode": "joint",
        "hardness_mode": null,
        "hardness_strength": 0.0
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • per_device_train_batch_size: 16
  • per_device_eval_batch_size: 16
  • multi_dataset_batch_sampler: round_robin

All Hyperparameters

Click to expand
  • overwrite_output_dir: False
  • do_predict: False
  • prediction_loss_only: True
  • per_device_train_batch_size: 16
  • per_device_eval_batch_size: 16
  • 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: 5e-05
  • weight_decay: 0.0
  • adam_beta1: 0.9
  • adam_beta2: 0.999
  • adam_epsilon: 1e-08
  • max_grad_norm: 1
  • num_train_epochs: 3
  • max_steps: -1
  • lr_scheduler_type: linear
  • lr_scheduler_kwargs: {}
  • warmup_ratio: 0.0
  • 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: 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: None
  • hub_always_push: False
  • gradient_checkpointing: False
  • gradient_checkpointing_kwargs: None
  • include_inputs_for_metrics: False
  • include_for_metrics: []
  • 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
  • average_tokens_across_devices: False
  • prompts: None
  • batch_sampler: batch_sampler
  • multi_dataset_batch_sampler: round_robin
  • router_mapping: {}
  • learning_rate_mapping: {}

Training Time

  • Training: 3.6 minutes

Framework Versions

  • Python: 3.12.13
  • Sentence Transformers: 5.5.1
  • Transformers: 4.49.0
  • PyTorch: 2.11.0+cu128
  • Accelerate: 1.14.0
  • Datasets: 4.0.0
  • Tokenizers: 0.21.0

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{oord2019representationlearningcontrastivepredictive,
      title={Representation Learning with Contrastive Predictive Coding},
      author={Aaron van den Oord and Yazhe Li and Oriol Vinyals},
      year={2019},
      eprint={1807.03748},
      archivePrefix={arXiv},
      primaryClass={cs.LG},
      url={https://arxiv.org/abs/1807.03748},
}
Downloads last month
242
Safetensors
Model size
0.2B params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for AhmadAfles/my-first-AraGenre

Unable to build the model tree, the base model loops to the model itself. Learn more.

Papers for AhmadAfles/my-first-AraGenre