pip install -U sentence-transformers1from sentence_transformers import CrossEncoder
2
3# Download from the 🤗 Hub
4model = CrossEncoder("yoriis/GTE-tydi-quqa")
5# Get scores for pairs of texts
6pairs = [
7 ['جاء رجل من اليهود إلى عمر بن الخطاب فقال :يا أمير المؤمنين !..إنكم تقرؤون آية في كتابكم لو علينا معشر اليهود نزلت لاتخذنا ذلك اليوم عيدا ..قال : وأي آية ؟..قال : هي قوله ...............ما هذه الآية ؟.', 'حرمت عليكم الميتة والدم ولحم الخنزير وما أهل لغير الله به والمنخنقة والموقوذة والمتردية والنطيحة وما أكل السبع إلا ما ذكيتم وما ذبح على النصب وأن تستقسموا بالأزلام ذلكم فسق اليوم يئس الذين كفروا من دينكم فلا تخشوهم واخشون اليوم أكملت لكم دينكم وأتممت عليكم نعمتي ورضيت لكم الإسلام دينا فمن اضطر في مخمصة غير متجانف لإثم فإن الله غفور رحيم {3} المائدة'],
8 ['ما هو أثر الكلام الطيب؟', 'تنزيل الكتاب لا ريب فيه من رب العالمين {2}السجدة'],
9 ['هل سجد إبليس لآدم ؟', 'وإلى ثمود أخاهم صالحا قال يا قوم اعبدوا الله ما لكم من إله غيره قد جاءتكم بينة من ربكم هذه ناقة الله لكم آية فذروها تأكل في أرض الله ولا تمسوها بسوء فيأخذكم عذاب أليم{73} الأعراف'],
10 ['أيها العاصي هل ظننت أنك بمعجز لله أن يقبض روحك وانت تعصيه، فاحذر، أذكر الآية التي دلت على هذا المعنى؟.', 'والذين يتوفون منكم ويذرون أزواجا يتربصن بأنفسهن أربعة أشهر وعشرا فإذا بلغن أجلهن فلا جناح عليكم فيما فعلن في أنفسهن بالمعروف والله بما تعملون خبير{234} البقرة'],
11 ['هل كرّم الإسلام المرأة؟', 'فاستجاب لهم ربهم أني لا أضيع عمل عامل منكم من ذكر أو أنثى بعضكم من بعض فالذين هاجروا وأخرجوا من ديارهم وأوذوا في سبيلي وقاتلوا وقتلوا لأكفرن عنهم سيئاتهم ولأدخلنهم جنات تجري من تحتها الأنهار ثوابا من عند الله والله عنده حسن الثواب {195}آل عمران'],
12]
13scores = model.predict(pairs)
14print(scores.shape)
15# (5,)
16
17# Or rank different texts based on similarity to a single text
18ranks = model.rank(
19 'جاء رجل من اليهود إلى عمر بن الخطاب فقال :يا أمير المؤمنين !..إنكم تقرؤون آية في كتابكم لو علينا معشر اليهود نزلت لاتخذنا ذلك اليوم عيدا ..قال : وأي آية ؟..قال : هي قوله ...............ما هذه الآية ؟.',
20 [
21 'حرمت عليكم الميتة والدم ولحم الخنزير وما أهل لغير الله به والمنخنقة والموقوذة والمتردية والنطيحة وما أكل السبع إلا ما ذكيتم وما ذبح على النصب وأن تستقسموا بالأزلام ذلكم فسق اليوم يئس الذين كفروا من دينكم فلا تخشوهم واخشون اليوم أكملت لكم دينكم وأتممت عليكم نعمتي ورضيت لكم الإسلام دينا فمن اضطر في مخمصة غير متجانف لإثم فإن الله غفور رحيم {3} المائدة',
22 'تنزيل الكتاب لا ريب فيه من رب العالمين {2}السجدة',
23 'وإلى ثمود أخاهم صالحا قال يا قوم اعبدوا الله ما لكم من إله غيره قد جاءتكم بينة من ربكم هذه ناقة الله لكم آية فذروها تأكل في أرض الله ولا تمسوها بسوء فيأخذكم عذاب أليم{73} الأعراف',
24 'والذين يتوفون منكم ويذرون أزواجا يتربصن بأنفسهن أربعة أشهر وعشرا فإذا بلغن أجلهن فلا جناح عليكم فيما فعلن في أنفسهن بالمعروف والله بما تعملون خبير{234} البقرة',
25 'فاستجاب لهم ربهم أني لا أضيع عمل عامل منكم من ذكر أو أنثى بعضكم من بعض فالذين هاجروا وأخرجوا من ديارهم وأوذوا في سبيلي وقاتلوا وقتلوا لأكفرن عنهم سيئاتهم ولأدخلنهم جنات تجري من تحتها الأنهار ثوابا من عند الله والله عنده حسن الثواب {195}آل عمران',
26 ]
27)
28# [{'corpus_id': ..., 'score': ...}, {'corpus_id': ..., 'score': ...}, ...]evalCrossEncoderClassificationEvaluator| Metric | Value |
|---|---|
| accuracy | 0.9953 |
| accuracy_threshold | 0.213 |
| f1 | 0.993 |
| f1_threshold | 0.213 |
| precision | 0.9918 |
| recall | 0.9943 |
| average_precision | 0.999 |
evalCrossEncoderClassificationEvaluator| Metric | Value |
|---|---|
| accuracy | 0.9407 |
| accuracy_threshold | 0.4967 |
| f1 | 0.8746 |
| f1_threshold | 0.4967 |
| precision | 0.9269 |
| recall | 0.8279 |
| average_precision | 0.9264 |
sentence_0, sentence_1, and label| sentence_0 | sentence_1 | label | |
|---|---|---|---|
| type | string | string | float |
| details |
|
|
|
| sentence_0 | sentence_1 | label |
|---|---|---|
جاء رجل من اليهود إلى عمر بن الخطاب فقال :يا أمير المؤمنين !..إنكم تقرؤون آية في كتابكم لو علينا معشر اليهود نزلت لاتخذنا ذلك اليوم عيدا ..قال : وأي آية ؟..قال : هي قوله ...............ما هذه الآية ؟. | حرمت عليكم الميتة والدم ولحم الخنزير وما أهل لغير الله به والمنخنقة والموقوذة والمتردية والنطيحة وما أكل السبع إلا ما ذكيتم وما ذبح على النصب وأن تستقسموا بالأزلام ذلكم فسق اليوم يئس الذين كفروا من دينكم فلا تخشوهم واخشون اليوم أكملت لكم دينكم وأتممت عليكم نعمتي ورضيت لكم الإسلام دينا فمن اضطر في مخمصة غير متجانف لإثم فإن الله غفور رحيم {3} المائدة | 1.0 |
ما هو أثر الكلام الطيب؟ | تنزيل الكتاب لا ريب فيه من رب العالمين {2}السجدة | 0.0 |
هل سجد إبليس لآدم ؟ | وإلى ثمود أخاهم صالحا قال يا قوم اعبدوا الله ما لكم من إله غيره قد جاءتكم بينة من ربكم هذه ناقة الله لكم آية فذروها تأكل في أرض الله ولا تمسوها بسوء فيأخذكم عذاب أليم{73} الأعراف | 0.0 |
BinaryCrossEntropyLoss with these parameters:
1{
2 "activation_fn": "torch.nn.modules.linear.Identity",
3 "pos_weight": null
4}eval_strategy: stepsnum_train_epochs: 4fp16: Trueoverwrite_output_dir: Falsedo_predict: Falseeval_strategy: stepsprediction_loss_only: Trueper_device_train_batch_size: 8per_device_eval_batch_size: 8per_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: 4max_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: 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: 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}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: Falsehub_revision: Nonegradient_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: Falseliger_kernel_config: Noneeval_use_gather_object: Falseaverage_tokens_across_devices: Falseprompts: Nonebatch_sampler: batch_samplermulti_dataset_batch_sampler: proportional| Epoch | Step | Training Loss | eval_average_precision |
|---|---|---|---|
| 0.0942 | 500 | 0.094 | 0.9979 |
| 0.1884 | 1000 | 0.0454 | 0.9981 |
| 0.2826 | 1500 | 0.0355 | 0.9984 |
| 0.3768 | 2000 | 0.0246 | 0.9987 |
| 0.4710 | 2500 | 0.0336 | 0.9989 |
| 0.5652 | 3000 | 0.0314 | 0.9990 |
| 0.6594 | 3500 | 0.0243 | 0.9990 |
| 0.7536 | 4000 | 0.0228 | 0.9989 |
| 0.8478 | 4500 | 0.0315 | 0.9990 |
| 0.9420 | 5000 | 0.036 | 0.9990 |
| 0.3298 | 500 | 0.4016 | 0.8999 |
| 0.6596 | 1000 | 0.3259 | 0.9122 |
| 0.9894 | 1500 | 0.3048 | 0.9156 |
| 1.0 | 1516 | - | 0.9154 |
| 1.3193 | 2000 | 0.2711 | 0.9186 |
| 1.6491 | 2500 | 0.2904 | 0.9208 |
| 1.9789 | 3000 | 0.2841 | 0.9231 |
| 2.0 | 3032 | - | 0.9230 |
| 2.3087 | 3500 | 0.2807 | 0.9241 |
| 2.6385 | 4000 | 0.2482 | 0.9255 |
| 2.9683 | 4500 | 0.258 | 0.9257 |
| 3.0 | 4548 | - | 0.9257 |
| 3.2982 | 5000 | 0.2616 | 0.9261 |
| 3.6280 | 5500 | 0.2573 | 0.9264 |
| 3.9578 | 6000 | 0.2455 | 0.9264 |
| 4.0 | 6064 | - | 0.9264 |
1@inproceedings{reimers-2019-sentence-bert,
2 title = "Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks",
3 author = "Reimers, Nils and Gurevych, Iryna",
4 booktitle = "Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing",
5 month = "11",
6 year = "2019",
7 publisher = "Association for Computational Linguistics",
8 url = "https://arxiv.org/abs/1908.10084",
9}