Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks
Paper • 1908.10084 • Published • 15
How to use Monad-dz/dz-legal-ar-embeddings-v1 with sentence-transformers:
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("Monad-dz/dz-legal-ar-embeddings-v1")
sentences = [
"الغرفة المدنية: حيث يتبين من أوراق ملف القضية الحالية أن المدعين في الدعوى الأصلية أقاموا دعوى إستعجالية ضد المدعى عليه من أجل المطالبة بإلزام هذا الأخير و كل من يحل محله بوقف اشغال البناء التي شرع في إنجازها فوق القطعة الأرضية البالغ مساحتها 01 هكتار و 03 آر و 75 سنتيار الواقعة ببلدية لمسان المملوكة في الشيوع بين طرفي النزاع بموجب الدفتر العقاري في حين أن المدعى عليه كان أكد من جهته بأن أشغال البناء جارية فوق قطعة أرضية غير القطعة الأرضية المملوكة في الشيوع بين طرفي النزاع و التمس تبعا لذلك رفض الدعوى لعدم التأسيس\nحيث أنه ثابت في قضية الحال أن البت في طلب المطعون ضدهم الرامي إلى إلزام الطاعن بوقف أشغال البناء بحجة أنها مقامة فوق قطعة أرضية مملوكة في الشيوع بين طرفين النزاع يستدعى بالضرورة مناقشة سند ملكية طرفي النزاع المتمثل في الدفتر العقاري و التحقق فيما إذا كانت الأشغال المتنازع من أجلها مقامة فعلا فوق القطعة الأرضية المملوكة في الشيوع بالاستعانة بخبير قضائي مختص للانتقال إلى أماكن النزاع للتأكد من مدى صحة مزاعم المطعون ضدهم لأن محضر المعاينة لا يكفي لوحده لإثبات التعدي الواقع على الملكية العقارية المشاعة مما يجعل النزاع المطروح جدي يمس الموضوع و بأصل الحق خاصة و أن الطاعن كان قد أكد بأن أشغال البناء الذي شرع في إنجازها مقامة فوق قطعته الأرضية العائدة له بموجب عقد عرفي مما يجعل النزاع المطروح يخرج عن اختصاص قاضي الأمور المستعجلة و بالتالي فإن قضاة المجلس بقضائهم كما فعلوا يكونوا قد خالفوا قواعد الاختصاص النوعي طبقا لنص المادة 303 من قانون الإجراءات المدنية و الإدارية التي تنص على أن \" لا يمس الأمر الاستعجالي أصل الحق و هو معجل النفاذ بكفالة أو بدونها رغم كل طرق الطعن كما أنه غير قابل للمعارضة و لا للاعتراض على النفاذ المعجل\" , مما يستوجب نقض و إبطال القرار المطعون فيه بدون إحالة .\n\nحيث أن المصاريف القضائية تقع على عاتق المطعون ضدهم طبقا لنص المادة 378 من قانون الإجراءات المدنية و الإدارية.",
"الغرفة المدنية: اختصاص نوعي",
"الغرفة المدنية: مصلحة",
"غرفة الجنح و المخالفات: اختصاص نوعي"
]
embeddings = model.encode(sentences)
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [4, 4]This is a sentence-transformers model finetuned from Omartificial-Intelligence-Space/Arabic-Triplet-Matryoshka-V2. 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': 512, 'do_lower_case': False, 'architecture': 'BertModel'})
(1): Pooling({'word_embedding_dimension': 768, '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})
)
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("Monad-dz/dz-legal-ar-embeddings-v1")
# Run inference
sentences = [
'الغرفة المدنية: ـ حيث تبين من ملف الطعن و القرار المطعون فيه أن قضاة المجلس أسسوا قضاءهم الرامي إلى قبول دعوى المطعون ضدهما و الاستجابة إلى طلبهما على أحكام المادتين 757 و 758 ق إ م إ التي تلزم الراسي عليه المزاد العلني دفع الثمن خلال 08 أيام من تاريخ الجلسة و في حالة تخلفه عن الدفع و أعيد البيع \n\nيلزم بفرق الثمن .\n\nو هذا تأسيس غير سليم و مخالف للمادة 758 من نفس القانون المستند عليها و التي تنص على أنه " يلزم الراسي عليه المزاد المتخلف عن دفع الثمن في أجل 08 أيام المنصوص عليها في المادة 757 أعلاه بفرق الثمن إذا أعيد بيع العقار بثمن أقل من الثمن الراسي به المزاد . و في هذه الحالة يتضمن منطوق الحكم الصادر برسو المزاد للبيع الثاني إلزام المزايد المتخلف بفرق الثمن " .\n\nيستنتج منه أن القانون حدد الجهة القضائية التي يقدم أمامها طلب إلزام المتخلف عن الدفع بفرق الثمن و هو قاضي البيع بالمزاد العلني و لا يجوز تقديمه بدعوى مستقلة أمام القسم المدني فكان على قضاة المجلس التقيد بما جاء في أحكام المادة 758 ق إ م إ و لا يقبلوا الدعوى لمخالفتها الإجراءات القانونية .\n\nقضاة المجلس بقبولهم دعوى المطعون ضدهما و تمسكوا باختصاصهم للفصل فيها رغم أنها من اختصاص قاضي البيوع يكونوا قد تجاوزوا اختصاصهم النوعي و لم يعطوا لقرارهم الأساس القانوني السليم مما يتعين نقض و إبطال القرار المطعون فيه على هذا الوجه دون حاجة للرد على الوجهين المثارين من طرف الطاعن \n\nو لما لم تبق مسألة قانونية يفصل في المجلس بعد النقض ، فيكون النقض بدون إحالة طبقا للمادة 365 ف 01 ق إ م إ.\n\nـ حيث أن المصاريف القضائية يتحملها خاسر الطعن طبقا للمادة 378 من قانون الإجراءات المدنية و الإدارية.',
'الغرفة المدنية: اختصاص نوعي',
'الغرفة المدنية: حجية',
]
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.3212, 0.1469],
# [0.3212, 1.0000, 0.3200],
# [0.1469, 0.3200, 1.0000]])
anchor, positive, and negative| anchor | positive | negative | |
|---|---|---|---|
| type | string | string | string |
| details |
|
|
|
| anchor | positive | negative |
|---|---|---|
الغرفة الاجتماعية: حيث يبين من القرار المطعون فيه المؤيد للحكم المستأنف أن موضوع الدعوى يهدف إلى مطالبة المطعون ضده من الطاعنة بتمكينه من تعويض عن منحة الإحالة على التقاعد مؤسسا دعواه على كونه منتسب لدى الطاعنة منذ عدة سنوات إلى غاية إحالته على التقاعد وأنه مستحق لهذه المنحة بعد انخراطه وتعاقده مع الطاعنة وأن قضاة الموضوع استجابوا لطلبه وقضوا له بمبلغ مالي مقابل تعويض التقاعد في حين أن موضوع الدعوى لا يدخل ضمن النزاعات المذكورة على سبيل الحصر في المادة 500 من قانون الإجراءات المدنية والإدارية حتى يخوّل للمحكمة الإجتماعية الفصل في هذا النزاع هذا من جهة ومن جهة أخرى فإن النزاع لا يدخل ضمن العلاقات الفردية والجماعية في العمل بين العمال الأجراء والمستخدمين كما تنص على ذلك المادة الأولى من القانون 11/90 كما لا يدخل في النزاعات الفردية في العمل والمحاكم الفاصلة في المسائل الإجتماعية طالما أنه لا يوجد خلاف قائم بين عامل أجير ومستخدم في إطار تنفيذ علاقة العمل التي تربط الطرفين طبقا لأحكام المادة 02 من القانون 04/90 ومنه فإن النزاع المطروح لا تحكمه قواعد العمل والقواعد المطبقة بشأنه التي تفصل ف... |
الغرفة الاجتماعية: اختصاص نوعي |
الغرفة الاجتماعية: صفة |
الغرفة الاجتماعية: حيث يبين من القرار المطعون فيه المؤيد للحكم المستأنف أن موضوع الدعوى يهدف إلى مطالبة المطعون ضده من الطاعنة بتمكينه من تعويض عن منحة الإحالة على التقاعد مؤسسا دعواه على كونه منتسب لدى الطاعنة منذ عدة سنوات إلى غاية إحالته على التقاعد وأنه مستحق لهذه المنحة بعد انخراطه وتعاقده مع الطاعنة وأن قضاة الموضوع استجابوا لطلبه وقضوا له بمبلغ مالي مقابل تعويض التقاعد في حين أن موضوع الدعوى لا يدخل ضمن النزاعات المذكورة على سبيل الحصر في المادة 500 من قانون الإجراءات المدنية والإدارية حتى يخوّل للمحكمة الإجتماعية الفصل في هذا النزاع هذا من جهة ومن جهة أخرى فإن النزاع لا يدخل ضمن العلاقات الفردية والجماعية في العمل بين العمال الأجراء والمستخدمين كما تنص على ذلك المادة الأولى من القانون 11/90 كما لا يدخل في النزاعات الفردية في العمل والمحاكم الفاصلة في المسائل الإجتماعية طالما أنه لا يوجد خلاف قائم بين عامل أجير ومستخدم في إطار تنفيذ علاقة العمل التي تربط الطرفين طبقا لأحكام المادة 02 من القانون 04/90 ومنه فإن النزاع المطروح لا تحكمه قواعد العمل والقواعد المطبقة بشأنه التي تفصل ف... |
الغرفة الاجتماعية: اختصاص نوعي |
الغرفة الاجتماعية: طلبات |
الغرفة الاجتماعية: حيث يبين من القرار المطعون فيه المؤيد للحكم المستأنف أن موضوع الدعوى يهدف إلى مطالبة المطعون ضده من الطاعنة بتمكينه من تعويض عن منحة الإحالة على التقاعد مؤسسا دعواه على كونه منتسب لدى الطاعنة منذ عدة سنوات إلى غاية إحالته على التقاعد وأنه مستحق لهذه المنحة بعد انخراطه وتعاقده مع الطاعنة وأن قضاة الموضوع استجابوا لطلبه وقضوا له بمبلغ مالي مقابل تعويض التقاعد في حين أن موضوع الدعوى لا يدخل ضمن النزاعات المذكورة على سبيل الحصر في المادة 500 من قانون الإجراءات المدنية والإدارية حتى يخوّل للمحكمة الإجتماعية الفصل في هذا النزاع هذا من جهة ومن جهة أخرى فإن النزاع لا يدخل ضمن العلاقات الفردية والجماعية في العمل بين العمال الأجراء والمستخدمين كما تنص على ذلك المادة الأولى من القانون 11/90 كما لا يدخل في النزاعات الفردية في العمل والمحاكم الفاصلة في المسائل الإجتماعية طالما أنه لا يوجد خلاف قائم بين عامل أجير ومستخدم في إطار تنفيذ علاقة العمل التي تربط الطرفين طبقا لأحكام المادة 02 من القانون 04/90 ومنه فإن النزاع المطروح لا تحكمه قواعد العمل والقواعد المطبقة بشأنه التي تفصل ف... |
الغرفة الاجتماعية: اختصاص نوعي |
الغرفة الاجتماعية: استعجال |
TripletLoss with these parameters:{
"distance_metric": "TripletDistanceMetric.COSINE",
"triplet_margin": 0.4
}
anchor, positive, and negative| anchor | positive | negative | |
|---|---|---|---|
| type | string | string | string |
| details |
|
|
|
| anchor | positive | negative |
|---|---|---|
الغرفة المدنية: حيث أن هذا الوجه كسابقه غير سديد ذلك أن قضاة الموضوع إستبعدوا هذا الدفع على أساس أن النزاع الحالي لا يتعلق بنزع الملكية للمنفعة العامة والتي تكون الدولة طرفا أساسا فيها وطالما أن الطاعنة الجزائرية للمياه هي مؤسسة عمومية ذات طابع تجاري وصناعي والنزاع يرمي إلى التعويض عن التعدي على الملكية الخاصة المملوكة للخواص وعليه فإن الدفع بعدم الإختصاص إعتبره القضاة غيرمؤسس على صواب مما يتعين رفض الوجه. |
الغرفة المدنية: اختصاص نوعي |
الغرفة المدنية: اختصاص اقليمي |
الغرفة المدنية: حيث أن هذا الوجه كسابقه غير سديد ذلك أن قضاة الموضوع إستبعدوا هذا الدفع على أساس أن النزاع الحالي لا يتعلق بنزع الملكية للمنفعة العامة والتي تكون الدولة طرفا أساسا فيها وطالما أن الطاعنة الجزائرية للمياه هي مؤسسة عمومية ذات طابع تجاري وصناعي والنزاع يرمي إلى التعويض عن التعدي على الملكية الخاصة المملوكة للخواص وعليه فإن الدفع بعدم الإختصاص إعتبره القضاة غيرمؤسس على صواب مما يتعين رفض الوجه. |
الغرفة المدنية: اختصاص نوعي |
الغرفة المدنية: استعجال |
الغرفة المدنية: حيث أن هذا الوجه كسابقه غير سديد ذلك أن قضاة الموضوع إستبعدوا هذا الدفع على أساس أن النزاع الحالي لا يتعلق بنزع الملكية للمنفعة العامة والتي تكون الدولة طرفا أساسا فيها وطالما أن الطاعنة الجزائرية للمياه هي مؤسسة عمومية ذات طابع تجاري وصناعي والنزاع يرمي إلى التعويض عن التعدي على الملكية الخاصة المملوكة للخواص وعليه فإن الدفع بعدم الإختصاص إعتبره القضاة غيرمؤسس على صواب مما يتعين رفض الوجه. |
الغرفة المدنية: اختصاص نوعي |
الغرفة المدنية: حجية |
TripletLoss with these parameters:{
"distance_metric": "TripletDistanceMetric.COSINE",
"triplet_margin": 0.4
}
eval_strategy: stepsper_device_train_batch_size: 640per_device_eval_batch_size: 256learning_rate: 2e-05num_train_epochs: 15warmup_ratio: 0.1bf16: Trueload_best_model_at_end: Truepush_to_hub: Truehub_model_id: Monad-dz/dz-legal-ar-embeddings-v1hub_private_repo: Trueoverwrite_output_dir: Falsedo_predict: Falseeval_strategy: stepsprediction_loss_only: Trueper_device_train_batch_size: 640per_device_eval_batch_size: 256per_gpu_train_batch_size: Noneper_gpu_eval_batch_size: Nonegradient_accumulation_steps: 1eval_accumulation_steps: Nonetorch_empty_cache_steps: Nonelearning_rate: 2e-05weight_decay: 0.0adam_beta1: 0.9adam_beta2: 0.999adam_epsilon: 1e-08max_grad_norm: 1.0num_train_epochs: 15max_steps: -1lr_scheduler_type: linearlr_scheduler_kwargs: Nonewarmup_ratio: 0.1warmup_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: Falsebf16: Truefp16: 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: 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}parallelism_config: Nonedeepspeed: Nonelabel_smoothing_factor: 0.0optim: adamw_torch_fusedoptim_args: Noneadafactor: Falsegroup_by_length: Falselength_column_name: lengthproject: huggingfacetrackio_space_id: trackioddp_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: Trueresume_from_checkpoint: Nonehub_model_id: Monad-dz/dz-legal-ar-embeddings-v1hub_strategy: every_savehub_private_repo: Truehub_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: noneftune_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: Trueprompts: Nonebatch_sampler: batch_samplermulti_dataset_batch_sampler: proportionalrouter_mapping: {}learning_rate_mapping: {}| Epoch | Step | Training Loss | Validation Loss |
|---|---|---|---|
| 0.1524 | 50 | 0.2884 | 0.2152 |
| 0.3049 | 100 | 0.1806 | 0.1395 |
| 0.4573 | 150 | 0.1274 | 0.1095 |
| 0.6098 | 200 | 0.0995 | 0.0941 |
| 0.7622 | 250 | 0.0835 | 0.0836 |
| 0.9146 | 300 | 0.0746 | 0.0771 |
| 1.0671 | 350 | 0.0631 | 0.0726 |
| 1.2195 | 400 | 0.0569 | 0.0701 |
| 1.3720 | 450 | 0.0495 | 0.0689 |
| 1.5244 | 500 | 0.0452 | 0.0667 |
| 1.6768 | 550 | 0.0406 | 0.0665 |
| 1.8293 | 600 | 0.0369 | 0.0667 |
| 1.9817 | 650 | 0.0334 | 0.0681 |
| 2.1341 | 700 | 0.0265 | 0.0673 |
| 2.2866 | 750 | 0.0248 | 0.0688 |
| 2.4390 | 800 | 0.0231 | 0.0689 |
| 2.5915 | 850 | 0.0209 | 0.0703 |
| 2.7439 | 900 | 0.0195 | 0.0698 |
@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{hermans2017defense,
title={In Defense of the Triplet Loss for Person Re-Identification},
author={Alexander Hermans and Lucas Beyer and Bastian Leibe},
year={2017},
eprint={1703.07737},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
Base model
aubmindlab/bert-base-arabertv02