--- base_model: BAAI/bge-m3 datasets: [] language: - es library_name: sentence-transformers license: apache-2.0 metrics: - cosine_accuracy@1 - cosine_accuracy@3 - cosine_accuracy@5 - cosine_accuracy@10 - cosine_precision@1 - cosine_precision@3 - cosine_precision@5 - cosine_precision@10 - cosine_recall@1 - cosine_recall@3 - cosine_recall@5 - cosine_recall@10 - cosine_ndcg@10 - cosine_mrr@10 - cosine_map@100 pipeline_tag: sentence-similarity tags: - sentence-transformers - sentence-similarity - feature-extraction - generated_from_trainer - dataset_size:21352 - loss:MatryoshkaLoss - loss:MultipleNegativesRankingLoss widget: - source_sentence: La Estrategia Nacional de Redes Ultrarrápidas tiene como objetivo impulsar el despliegue de redes de acceso ultrarrápido a la banda ancha, tanto fijo como móvil, de cara a lograr su universalización, así como fomentar su adopción por ciudadanos, empresas y administraciones, para garantizar la cohesión social y territorial. sentences: - ¿Cuál es el objetivo principal de la exoneración de deudas? - ¿Qué se entiende por especies invasoras? - ¿Cuál es el objetivo de la Estrategia Nacional de Redes Ultrarrápidas? - source_sentence: La Ley del Presupuesto de la Comunidad Autónoma de Andalucía podrá actualizar la cuantía de las sanciones contenidas en la presente norma. sentences: - ¿Qué ley se refiere a la actualización de la cuantía de las sanciones? - ¿Qué se requiere para la concesión de las licencias y permisos de primera ocupación? - ¿Cuál es el objetivo del Plan Estratégico sobre Trastornos Adictivos? - source_sentence: Art. 154. La celebración de tratados por los que se atribuya a una organización o institución internacionales el ejercicio de competencias derivadas de la Constitución requerirá la previa aprobación por las Cortes de una Ley Orgánica de autorización, que se tramitará conforme a lo establecido en el presente Reglamento para las leyes de este carácter. sentences: - ¿Cuál es el importe destinado a la financiación de las necesidades correspondientes al transporte regular de viajeros de las distintas Islas Canarias? - ¿Cuál es el propósito de la Disposición final tercera? - ¿Cuál es el procedimiento para la celebración de tratados internacionales? - source_sentence: Disposición final tercera. Entrada en vigor. El presente real decreto entrará en vigor el día siguiente al de su publicación en el «Boletín Oficial del Estado». sentences: - ¿Quién puede concluir contratos para la adquisición de bienes o derechos? - ¿Qué es el régimen de recursos del Consejo General de los Colegios Oficiales de Ingenieros Agrónomos? - ¿Cuál es el propósito de la Disposición final tercera? - source_sentence: El plazo máximo para resolver y notificar la resolución expresa que ponga fin al procedimiento será de nueve meses, a contar desde la fecha de inicio del procedimiento administrativo sancionador, que se corresponde con la fecha del acuerdo de incoación. sentences: - ¿Cuál es el plazo para la resolución del procedimiento sancionador en el caso de infracciones graves o muy graves? - ¿Qué establece el Real Decreto 521/2020? - ¿Cuál es el objetivo de la cooperación española para el desarrollo sostenible en relación con la igualdad de género? model-index: - name: BGE large Legal Spanish results: - task: type: information-retrieval name: Information Retrieval dataset: name: dim 1024 type: dim_1024 metrics: - type: cosine_accuracy@1 value: 0.6257901390644753 name: Cosine Accuracy@1 - type: cosine_accuracy@3 value: 0.7450484618626212 name: Cosine Accuracy@3 - type: cosine_accuracy@5 value: 0.7833965444584914 name: Cosine Accuracy@5 - type: cosine_accuracy@10 value: 0.8314369995785925 name: Cosine Accuracy@10 - type: cosine_precision@1 value: 0.6257901390644753 name: Cosine Precision@1 - type: cosine_precision@3 value: 0.24834948728754036 name: Cosine Precision@3 - type: cosine_precision@5 value: 0.15667930889169826 name: Cosine Precision@5 - type: cosine_precision@10 value: 0.08314369995785924 name: Cosine Precision@10 - type: cosine_recall@1 value: 0.6257901390644753 name: Cosine Recall@1 - type: cosine_recall@3 value: 0.7450484618626212 name: Cosine Recall@3 - type: cosine_recall@5 value: 0.7833965444584914 name: Cosine Recall@5 - type: cosine_recall@10 value: 0.8314369995785925 name: Cosine Recall@10 - type: cosine_ndcg@10 value: 0.7275988588052974 name: Cosine Ndcg@10 - type: cosine_mrr@10 value: 0.6944890935725317 name: Cosine Mrr@10 - type: cosine_map@100 value: 0.69913132313913 name: Cosine Map@100 - task: type: information-retrieval name: Information Retrieval dataset: name: dim 768 type: dim_768 metrics: - type: cosine_accuracy@1 value: 0.6211546565528866 name: Cosine Accuracy@1 - type: cosine_accuracy@3 value: 0.7488411293721028 name: Cosine Accuracy@3 - type: cosine_accuracy@5 value: 0.7855035819637589 name: Cosine Accuracy@5 - type: cosine_accuracy@10 value: 0.8297513695743785 name: Cosine Accuracy@10 - type: cosine_precision@1 value: 0.6211546565528866 name: Cosine Precision@1 - type: cosine_precision@3 value: 0.2496137097907009 name: Cosine Precision@3 - type: cosine_precision@5 value: 0.15710071639275178 name: Cosine Precision@5 - type: cosine_precision@10 value: 0.08297513695743783 name: Cosine Precision@10 - type: cosine_recall@1 value: 0.6211546565528866 name: Cosine Recall@1 - type: cosine_recall@3 value: 0.7488411293721028 name: Cosine Recall@3 - type: cosine_recall@5 value: 0.7855035819637589 name: Cosine Recall@5 - type: cosine_recall@10 value: 0.8297513695743785 name: Cosine Recall@10 - type: cosine_ndcg@10 value: 0.7262608157638797 name: Cosine Ndcg@10 - type: cosine_mrr@10 value: 0.693076709543207 name: Cosine Mrr@10 - type: cosine_map@100 value: 0.6977729019489064 name: Cosine Map@100 - task: type: information-retrieval name: Information Retrieval dataset: name: dim 512 type: dim_512 metrics: - type: cosine_accuracy@1 value: 0.6186262115465655 name: Cosine Accuracy@1 - type: cosine_accuracy@3 value: 0.7416772018541931 name: Cosine Accuracy@3 - type: cosine_accuracy@5 value: 0.7812895069532237 name: Cosine Accuracy@5 - type: cosine_accuracy@10 value: 0.8284871470712178 name: Cosine Accuracy@10 - type: cosine_precision@1 value: 0.6186262115465655 name: Cosine Precision@1 - type: cosine_precision@3 value: 0.24722573395139766 name: Cosine Precision@3 - type: cosine_precision@5 value: 0.15625790139064477 name: Cosine Precision@5 - type: cosine_precision@10 value: 0.08284871470712177 name: Cosine Precision@10 - type: cosine_recall@1 value: 0.6186262115465655 name: Cosine Recall@1 - type: cosine_recall@3 value: 0.7416772018541931 name: Cosine Recall@3 - type: cosine_recall@5 value: 0.7812895069532237 name: Cosine Recall@5 - type: cosine_recall@10 value: 0.8284871470712178 name: Cosine Recall@10 - type: cosine_ndcg@10 value: 0.7230517414838968 name: Cosine Ndcg@10 - type: cosine_mrr@10 value: 0.6894082903564569 name: Cosine Mrr@10 - type: cosine_map@100 value: 0.6938850125806117 name: Cosine Map@100 - task: type: information-retrieval name: Information Retrieval dataset: name: dim 256 type: dim_256 metrics: - type: cosine_accuracy@1 value: 0.6076696165191741 name: Cosine Accuracy@1 - type: cosine_accuracy@3 value: 0.7378845343447114 name: Cosine Accuracy@3 - type: cosine_accuracy@5 value: 0.7741255794353139 name: Cosine Accuracy@5 - type: cosine_accuracy@10 value: 0.8183733670459334 name: Cosine Accuracy@10 - type: cosine_precision@1 value: 0.6076696165191741 name: Cosine Precision@1 - type: cosine_precision@3 value: 0.2459615114482371 name: Cosine Precision@3 - type: cosine_precision@5 value: 0.15482511588706277 name: Cosine Precision@5 - type: cosine_precision@10 value: 0.08183733670459334 name: Cosine Precision@10 - type: cosine_recall@1 value: 0.6076696165191741 name: Cosine Recall@1 - type: cosine_recall@3 value: 0.7378845343447114 name: Cosine Recall@3 - type: cosine_recall@5 value: 0.7741255794353139 name: Cosine Recall@5 - type: cosine_recall@10 value: 0.8183733670459334 name: Cosine Recall@10 - type: cosine_ndcg@10 value: 0.7129994645749397 name: Cosine Ndcg@10 - type: cosine_mrr@10 value: 0.6792476872754997 name: Cosine Mrr@10 - type: cosine_map@100 value: 0.6839884095309201 name: Cosine Map@100 - task: type: information-retrieval name: Information Retrieval dataset: name: dim 128 type: dim_128 metrics: - type: cosine_accuracy@1 value: 0.5920775389801939 name: Cosine Accuracy@1 - type: cosine_accuracy@3 value: 0.7100716392751791 name: Cosine Accuracy@3 - type: cosine_accuracy@5 value: 0.7496839443742098 name: Cosine Accuracy@5 - type: cosine_accuracy@10 value: 0.8019384745048462 name: Cosine Accuracy@10 - type: cosine_precision@1 value: 0.5920775389801939 name: Cosine Precision@1 - type: cosine_precision@3 value: 0.23669054642505968 name: Cosine Precision@3 - type: cosine_precision@5 value: 0.14993678887484196 name: Cosine Precision@5 - type: cosine_precision@10 value: 0.0801938474504846 name: Cosine Precision@10 - type: cosine_recall@1 value: 0.5920775389801939 name: Cosine Recall@1 - type: cosine_recall@3 value: 0.7100716392751791 name: Cosine Recall@3 - type: cosine_recall@5 value: 0.7496839443742098 name: Cosine Recall@5 - type: cosine_recall@10 value: 0.8019384745048462 name: Cosine Recall@10 - type: cosine_ndcg@10 value: 0.6949442438058356 name: Cosine Ndcg@10 - type: cosine_mrr@10 value: 0.6609599395313674 name: Cosine Mrr@10 - type: cosine_map@100 value: 0.6660375960675697 name: Cosine Map@100 - task: type: information-retrieval name: Information Retrieval dataset: name: dim 64 type: dim_64 metrics: - type: cosine_accuracy@1 value: 0.5478297513695743 name: Cosine Accuracy@1 - type: cosine_accuracy@3 value: 0.6696165191740413 name: Cosine Accuracy@3 - type: cosine_accuracy@5 value: 0.7218710493046776 name: Cosine Accuracy@5 - type: cosine_accuracy@10 value: 0.7707543194268858 name: Cosine Accuracy@10 - type: cosine_precision@1 value: 0.5478297513695743 name: Cosine Precision@1 - type: cosine_precision@3 value: 0.2232055063913471 name: Cosine Precision@3 - type: cosine_precision@5 value: 0.14437420986093552 name: Cosine Precision@5 - type: cosine_precision@10 value: 0.07707543194268857 name: Cosine Precision@10 - type: cosine_recall@1 value: 0.5478297513695743 name: Cosine Recall@1 - type: cosine_recall@3 value: 0.6696165191740413 name: Cosine Recall@3 - type: cosine_recall@5 value: 0.7218710493046776 name: Cosine Recall@5 - type: cosine_recall@10 value: 0.7707543194268858 name: Cosine Recall@10 - type: cosine_ndcg@10 value: 0.6562208551738911 name: Cosine Ndcg@10 - type: cosine_mrr@10 value: 0.6198663536210937 name: Cosine Mrr@10 - type: cosine_map@100 value: 0.6253208234320395 name: Cosine Map@100 --- # BGE large Legal Spanish This is a [sentence-transformers](https://www.SBERT.net) model finetuned from [BAAI/bge-m3](https://huggingface.co/BAAI/bge-m3). It maps sentences & paragraphs to a 1024-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:** [BAAI/bge-m3](https://huggingface.co/BAAI/bge-m3) - **Maximum Sequence Length:** 8192 tokens - **Output Dimensionality:** 1024 tokens - **Similarity Function:** Cosine Similarity - **Language:** es - **License:** apache-2.0 ### Model Sources - **Documentation:** [Sentence Transformers Documentation](https://sbert.net) - **Repository:** [Sentence Transformers on GitHub](https://github.com/UKPLab/sentence-transformers) - **Hugging Face:** [Sentence Transformers on Hugging Face](https://huggingface.co/models?library=sentence-transformers) ### Full Model Architecture ``` SentenceTransformer( (0): Transformer({'max_seq_length': 8192, 'do_lower_case': False}) with Transformer model: XLMRobertaModel (1): Pooling({'word_embedding_dimension': 1024, '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() ) ``` ## Usage ### Direct Usage (Sentence Transformers) First install the Sentence Transformers library: ```bash pip install -U sentence-transformers ``` Then you can load this model and run inference. ```python from sentence_transformers import SentenceTransformer # Download from the 🤗 Hub model = SentenceTransformer("littlejohn-ai/bge-m3-spanish-boe-qa") # Run inference sentences = [ 'El plazo máximo para resolver y notificar la resolución expresa que ponga fin al procedimiento será de nueve meses, a contar desde la fecha de inicio del procedimiento administrativo sancionador, que se corresponde con la fecha del acuerdo de incoación.', '¿Cuál es el plazo para la resolución del procedimiento sancionador en el caso de infracciones graves o muy graves?', '¿Cuál es el objetivo de la cooperación española para el desarrollo sostenible en relación con la igualdad de género?', ] embeddings = model.encode(sentences) print(embeddings.shape) # [3, 1024] # Get the similarity scores for the embeddings similarities = model.similarity(embeddings, embeddings) print(similarities.shape) # [3, 3] ``` ## Evaluation ### Metrics #### Information Retrieval * Dataset: `dim_1024` * Evaluated with [InformationRetrievalEvaluator](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.InformationRetrievalEvaluator) | Metric | Value | |:--------------------|:-----------| | cosine_accuracy@1 | 0.6258 | | cosine_accuracy@3 | 0.745 | | cosine_accuracy@5 | 0.7834 | | cosine_accuracy@10 | 0.8314 | | cosine_precision@1 | 0.6258 | | cosine_precision@3 | 0.2483 | | cosine_precision@5 | 0.1567 | | cosine_precision@10 | 0.0831 | | cosine_recall@1 | 0.6258 | | cosine_recall@3 | 0.745 | | cosine_recall@5 | 0.7834 | | cosine_recall@10 | 0.8314 | | cosine_ndcg@10 | 0.7276 | | cosine_mrr@10 | 0.6945 | | **cosine_map@100** | **0.6991** | #### Information Retrieval * Dataset: `dim_768` * Evaluated with [InformationRetrievalEvaluator](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.InformationRetrievalEvaluator) | Metric | Value | |:--------------------|:-----------| | cosine_accuracy@1 | 0.6212 | | cosine_accuracy@3 | 0.7488 | | cosine_accuracy@5 | 0.7855 | | cosine_accuracy@10 | 0.8298 | | cosine_precision@1 | 0.6212 | | cosine_precision@3 | 0.2496 | | cosine_precision@5 | 0.1571 | | cosine_precision@10 | 0.083 | | cosine_recall@1 | 0.6212 | | cosine_recall@3 | 0.7488 | | cosine_recall@5 | 0.7855 | | cosine_recall@10 | 0.8298 | | cosine_ndcg@10 | 0.7263 | | cosine_mrr@10 | 0.6931 | | **cosine_map@100** | **0.6978** | #### Information Retrieval * Dataset: `dim_512` * Evaluated with [InformationRetrievalEvaluator](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.InformationRetrievalEvaluator) | Metric | Value | |:--------------------|:-----------| | cosine_accuracy@1 | 0.6186 | | cosine_accuracy@3 | 0.7417 | | cosine_accuracy@5 | 0.7813 | | cosine_accuracy@10 | 0.8285 | | cosine_precision@1 | 0.6186 | | cosine_precision@3 | 0.2472 | | cosine_precision@5 | 0.1563 | | cosine_precision@10 | 0.0828 | | cosine_recall@1 | 0.6186 | | cosine_recall@3 | 0.7417 | | cosine_recall@5 | 0.7813 | | cosine_recall@10 | 0.8285 | | cosine_ndcg@10 | 0.7231 | | cosine_mrr@10 | 0.6894 | | **cosine_map@100** | **0.6939** | #### Information Retrieval * Dataset: `dim_256` * Evaluated with [InformationRetrievalEvaluator](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.InformationRetrievalEvaluator) | Metric | Value | |:--------------------|:----------| | cosine_accuracy@1 | 0.6077 | | cosine_accuracy@3 | 0.7379 | | cosine_accuracy@5 | 0.7741 | | cosine_accuracy@10 | 0.8184 | | cosine_precision@1 | 0.6077 | | cosine_precision@3 | 0.246 | | cosine_precision@5 | 0.1548 | | cosine_precision@10 | 0.0818 | | cosine_recall@1 | 0.6077 | | cosine_recall@3 | 0.7379 | | cosine_recall@5 | 0.7741 | | cosine_recall@10 | 0.8184 | | cosine_ndcg@10 | 0.713 | | cosine_mrr@10 | 0.6792 | | **cosine_map@100** | **0.684** | #### Information Retrieval * Dataset: `dim_128` * Evaluated with [InformationRetrievalEvaluator](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.InformationRetrievalEvaluator) | Metric | Value | |:--------------------|:----------| | cosine_accuracy@1 | 0.5921 | | cosine_accuracy@3 | 0.7101 | | cosine_accuracy@5 | 0.7497 | | cosine_accuracy@10 | 0.8019 | | cosine_precision@1 | 0.5921 | | cosine_precision@3 | 0.2367 | | cosine_precision@5 | 0.1499 | | cosine_precision@10 | 0.0802 | | cosine_recall@1 | 0.5921 | | cosine_recall@3 | 0.7101 | | cosine_recall@5 | 0.7497 | | cosine_recall@10 | 0.8019 | | cosine_ndcg@10 | 0.6949 | | cosine_mrr@10 | 0.661 | | **cosine_map@100** | **0.666** | #### Information Retrieval * Dataset: `dim_64` * Evaluated with [InformationRetrievalEvaluator](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.InformationRetrievalEvaluator) | Metric | Value | |:--------------------|:-----------| | cosine_accuracy@1 | 0.5478 | | cosine_accuracy@3 | 0.6696 | | cosine_accuracy@5 | 0.7219 | | cosine_accuracy@10 | 0.7708 | | cosine_precision@1 | 0.5478 | | cosine_precision@3 | 0.2232 | | cosine_precision@5 | 0.1444 | | cosine_precision@10 | 0.0771 | | cosine_recall@1 | 0.5478 | | cosine_recall@3 | 0.6696 | | cosine_recall@5 | 0.7219 | | cosine_recall@10 | 0.7708 | | cosine_ndcg@10 | 0.6562 | | cosine_mrr@10 | 0.6199 | | **cosine_map@100** | **0.6253** | ## Training Details ### Training Hyperparameters #### Non-Default Hyperparameters - `eval_strategy`: epoch - `per_device_train_batch_size`: 16 - `per_device_eval_batch_size`: 16 - `gradient_accumulation_steps`: 16 - `learning_rate`: 2e-05 - `num_train_epochs`: 50 - `lr_scheduler_type`: cosine - `warmup_ratio`: 0.1 - `bf16`: True - `tf32`: True - `load_best_model_at_end`: True - `optim`: adamw_torch_fused - `gradient_checkpointing`: True - `batch_sampler`: no_duplicates #### All Hyperparameters
Click to expand - `overwrite_output_dir`: False - `do_predict`: False - `eval_strategy`: epoch - `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`: 16 - `eval_accumulation_steps`: None - `learning_rate`: 2e-05 - `weight_decay`: 0.0 - `adam_beta1`: 0.9 - `adam_beta2`: 0.999 - `adam_epsilon`: 1e-08 - `max_grad_norm`: 1.0 - `num_train_epochs`: 50 - `max_steps`: -1 - `lr_scheduler_type`: cosine - `lr_scheduler_kwargs`: {} - `warmup_ratio`: 0.1 - `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`: True - `fp16`: False - `fp16_opt_level`: O1 - `half_precision_backend`: auto - `bf16_full_eval`: False - `fp16_full_eval`: False - `tf32`: True - `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`: True - `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_fused - `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`: False - `hub_always_push`: False - `gradient_checkpointing`: True - `gradient_checkpointing_kwargs`: None - `include_inputs_for_metrics`: False - `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 - `batch_sampler`: no_duplicates - `multi_dataset_batch_sampler`: proportional
### Training Logs
Click to expand | Epoch | Step | Training Loss | loss | dim_1024_cosine_map@100 | dim_128_cosine_map@100 | dim_256_cosine_map@100 | dim_512_cosine_map@100 | dim_64_cosine_map@100 | dim_768_cosine_map@100 | |:----------:|:-------:|:-------------:|:----------:|:-----------------------:|:----------------------:|:----------------------:|:----------------------:|:---------------------:|:----------------------:| | 0.0599 | 5 | 1.9323 | - | - | - | - | - | - | - | | 0.1199 | 10 | 1.9518 | - | - | - | - | - | - | - | | 0.1798 | 15 | 1.6396 | - | - | - | - | - | - | - | | 0.2397 | 20 | 1.4917 | - | - | - | - | - | - | - | | 0.2996 | 25 | 1.6039 | - | - | - | - | - | - | - | | 0.3596 | 30 | 1.5937 | - | - | - | - | - | - | - | | 0.4195 | 35 | 1.6291 | - | - | - | - | - | - | - | | 0.4794 | 40 | 1.4753 | - | - | - | - | - | - | - | | 0.5393 | 45 | 1.5017 | - | - | - | - | - | - | - | | 0.5993 | 50 | 1.1626 | - | - | - | - | - | - | - | | 0.6592 | 55 | 1.3464 | - | - | - | - | - | - | - | | 0.7191 | 60 | 1.2526 | - | - | - | - | - | - | - | | 0.7790 | 65 | 1.0611 | - | - | - | - | - | - | - | | 0.8390 | 70 | 0.8765 | - | - | - | - | - | - | - | | 0.8989 | 75 | 1.1155 | - | - | - | - | - | - | - | | 0.9588 | 80 | 1.0203 | - | - | - | - | - | - | - | | 0.9948 | 83 | - | 0.7719 | 0.7324 | 0.6718 | 0.7088 | 0.7264 | 0.5874 | 0.7314 | | 1.0187 | 85 | 0.9165 | - | - | - | - | - | - | - | | 1.0787 | 90 | 1.0342 | - | - | - | - | - | - | - | | 1.1386 | 95 | 1.0683 | - | - | - | - | - | - | - | | 1.1985 | 100 | 0.8871 | - | - | - | - | - | - | - | | 1.2584 | 105 | 0.7145 | - | - | - | - | - | - | - | | 1.3184 | 110 | 0.8022 | - | - | - | - | - | - | - | | 1.3783 | 115 | 0.9062 | - | - | - | - | - | - | - | | 1.4382 | 120 | 0.7868 | - | - | - | - | - | - | - | | 1.4981 | 125 | 0.9797 | - | - | - | - | - | - | - | | 1.5581 | 130 | 0.7075 | - | - | - | - | - | - | - | | 1.6180 | 135 | 0.7265 | - | - | - | - | - | - | - | | 1.6779 | 140 | 0.8166 | - | - | - | - | - | - | - | | 1.7378 | 145 | 0.659 | - | - | - | - | - | - | - | | 1.7978 | 150 | 0.5744 | - | - | - | - | - | - | - | | 1.8577 | 155 | 0.6818 | - | - | - | - | - | - | - | | 1.9176 | 160 | 0.513 | - | - | - | - | - | - | - | | 1.9775 | 165 | 0.6822 | - | - | - | - | - | - | - | | **1.9895** | **166** | **-** | **0.5653** | **0.7216** | **0.6823** | **0.7047** | **0.7167** | **0.62** | **0.719** | | 2.0375 | 170 | 0.6274 | - | - | - | - | - | - | - | | 2.0974 | 175 | 0.6535 | - | - | - | - | - | - | - | | 2.1573 | 180 | 0.595 | - | - | - | - | - | - | - | | 2.2172 | 185 | 0.5968 | - | - | - | - | - | - | - | | 2.2772 | 190 | 0.4913 | - | - | - | - | - | - | - | | 2.3371 | 195 | 0.459 | - | - | - | - | - | - | - | | 2.3970 | 200 | 0.5674 | - | - | - | - | - | - | - | | 2.4569 | 205 | 0.4594 | - | - | - | - | - | - | - | | 2.5169 | 210 | 0.6119 | - | - | - | - | - | - | - | | 2.5768 | 215 | 0.3534 | - | - | - | - | - | - | - | | 2.6367 | 220 | 0.4264 | - | - | - | - | - | - | - | | 2.6966 | 225 | 0.5078 | - | - | - | - | - | - | - | | 2.7566 | 230 | 0.4046 | - | - | - | - | - | - | - | | 2.8165 | 235 | 0.2651 | - | - | - | - | - | - | - | | 2.8764 | 240 | 0.4282 | - | - | - | - | - | - | - | | 2.9363 | 245 | 0.3342 | - | - | - | - | - | - | - | | 2.9963 | 250 | 0.3695 | 0.4851 | 0.7158 | 0.6818 | 0.7036 | 0.7134 | 0.6274 | 0.7163 | | 3.0562 | 255 | 0.3598 | - | - | - | - | - | - | - | | 3.1161 | 260 | 0.4304 | - | - | - | - | - | - | - | | 3.1760 | 265 | 0.3588 | - | - | - | - | - | - | - | | 3.2360 | 270 | 0.2714 | - | - | - | - | - | - | - | | 3.2959 | 275 | 0.2657 | - | - | - | - | - | - | - | | 3.3558 | 280 | 0.2575 | - | - | - | - | - | - | - | | 3.4157 | 285 | 0.3314 | - | - | - | - | - | - | - | | 3.4757 | 290 | 0.3018 | - | - | - | - | - | - | - | | 3.5356 | 295 | 0.3443 | - | - | - | - | - | - | - | | 3.5955 | 300 | 0.185 | - | - | - | - | - | - | - | | 3.6554 | 305 | 0.2771 | - | - | - | - | - | - | - | | 3.7154 | 310 | 0.2529 | - | - | - | - | - | - | - | | 3.7753 | 315 | 0.184 | - | - | - | - | - | - | - | | 3.8352 | 320 | 0.1514 | - | - | - | - | - | - | - | | 3.8951 | 325 | 0.2335 | - | - | - | - | - | - | - | | 3.9551 | 330 | 0.2045 | - | - | - | - | - | - | - | | 3.9910 | 333 | - | 0.4436 | 0.7110 | 0.6719 | 0.6946 | 0.7063 | 0.6201 | 0.7119 | | 4.0150 | 335 | 0.2053 | - | - | - | - | - | - | - | | 4.0749 | 340 | 0.1771 | - | - | - | - | - | - | - | | 4.1348 | 345 | 0.2444 | - | - | - | - | - | - | - | | 4.1948 | 350 | 0.1765 | - | - | - | - | - | - | - | | 4.2547 | 355 | 0.1278 | - | - | - | - | - | - | - | | 4.3146 | 360 | 0.1262 | - | - | - | - | - | - | - | | 4.3745 | 365 | 0.1546 | - | - | - | - | - | - | - | | 4.4345 | 370 | 0.1441 | - | - | - | - | - | - | - | | 4.4944 | 375 | 0.1974 | - | - | - | - | - | - | - | | 4.5543 | 380 | 0.1331 | - | - | - | - | - | - | - | | 4.6142 | 385 | 0.1239 | - | - | - | - | - | - | - | | 4.6742 | 390 | 0.1376 | - | - | - | - | - | - | - | | 4.7341 | 395 | 0.1133 | - | - | - | - | - | - | - | | 4.7940 | 400 | 0.0893 | - | - | - | - | - | - | - | | 4.8539 | 405 | 0.1184 | - | - | - | - | - | - | - | | 4.9139 | 410 | 0.0917 | - | - | - | - | - | - | - | | 4.9738 | 415 | 0.1231 | - | - | - | - | - | - | - | | 4.9978 | 417 | - | 0.4321 | 0.7052 | 0.6651 | 0.6863 | 0.7048 | 0.6176 | 0.7067 | | 5.0337 | 420 | 0.1021 | - | - | - | - | - | - | - | | 5.0936 | 425 | 0.1436 | - | - | - | - | - | - | - | | 5.1536 | 430 | 0.1032 | - | - | - | - | - | - | - | | 5.2135 | 435 | 0.0942 | - | - | - | - | - | - | - | | 5.2734 | 440 | 0.0819 | - | - | - | - | - | - | - | | 5.3333 | 445 | 0.0724 | - | - | - | - | - | - | - | | 5.3933 | 450 | 0.1125 | - | - | - | - | - | - | - | | 5.4532 | 455 | 0.0893 | - | - | - | - | - | - | - | | 5.5131 | 460 | 0.0919 | - | - | - | - | - | - | - | | 5.5730 | 465 | 0.0914 | - | - | - | - | - | - | - | | 5.6330 | 470 | 0.0728 | - | - | - | - | - | - | - | | 5.6929 | 475 | 0.0781 | - | - | - | - | - | - | - | | 5.7528 | 480 | 0.0561 | - | - | - | - | - | - | - | | 5.8127 | 485 | 0.0419 | - | - | - | - | - | - | - | | 5.8727 | 490 | 0.0816 | - | - | - | - | - | - | - | | 5.9326 | 495 | 0.0599 | - | - | - | - | - | - | - | | 5.9925 | 500 | 0.0708 | 0.4462 | 0.7026 | 0.6653 | 0.6848 | 0.6969 | 0.6195 | 0.7021 | | 6.0524 | 505 | 0.0619 | - | - | - | - | - | - | - | | 6.1124 | 510 | 0.0916 | - | - | - | - | - | - | - | | 6.1723 | 515 | 0.0474 | - | - | - | - | - | - | - | | 6.2322 | 520 | 0.0457 | - | - | - | - | - | - | - | | 6.2921 | 525 | 0.0401 | - | - | - | - | - | - | - | | 6.3521 | 530 | 0.0368 | - | - | - | - | - | - | - | | 6.4120 | 535 | 0.0622 | - | - | - | - | - | - | - | | 6.4719 | 540 | 0.0499 | - | - | - | - | - | - | - | | 6.5318 | 545 | 0.0771 | - | - | - | - | - | - | - | | 6.5918 | 550 | 0.041 | - | - | - | - | - | - | - | | 6.6517 | 555 | 0.0457 | - | - | - | - | - | - | - | | 6.7116 | 560 | 0.0413 | - | - | - | - | - | - | - | | 6.7715 | 565 | 0.0287 | - | - | - | - | - | - | - | | 6.8315 | 570 | 0.025 | - | - | - | - | - | - | - | | 6.8914 | 575 | 0.0492 | - | - | - | - | - | - | - | | 6.9513 | 580 | 0.0371 | - | - | - | - | - | - | - | | 6.9993 | 584 | - | 0.4195 | 0.6991 | 0.6660 | 0.6840 | 0.6939 | 0.6253 | 0.6978 | * The bold row denotes the saved checkpoint.
### Framework Versions - Python: 3.10.12 - Sentence Transformers: 3.0.1 - Transformers: 4.42.3 - PyTorch: 2.1.0+cu118 - Accelerate: 0.32.1 - Datasets: 2.20.0 - Tokenizers: 0.19.1 ## Citation ### BibTeX #### Sentence Transformers ```bibtex @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", } ``` #### MatryoshkaLoss ```bibtex @misc{kusupati2024matryoshka, title={Matryoshka Representation Learning}, author={Aditya Kusupati and Gantavya Bhatt and Aniket Rege and Matthew Wallingford and Aditya Sinha and Vivek Ramanujan and William Howard-Snyder and Kaifeng Chen and Sham Kakade and Prateek Jain and Ali Farhadi}, year={2024}, eprint={2205.13147}, archivePrefix={arXiv}, primaryClass={cs.LG} } ``` #### MultipleNegativesRankingLoss ```bibtex @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} } ``` ## Glosary ### Introducción Nos complace anunciar la finalización del fine-tuning del modelo BGE-M3, optimizado específicamente para aplicaciones de Recuperación de Información Guiada (RAG). Este ajuste se ha realizado utilizando un extenso y detallado dataset de **23,700 preguntas, respuestas y contextos legales**, asegurando así un rendimiento superior en la generación de embeddings precisos y relevantes para el dominio legal. ### Especificaciones del Modelo - **Modelo Base:** BGE-M3 - **Tamaño del Dataset:** 23,700 preguntas, respuestas y contextos legales - **Dominio:** Legal - **Formato de Datos:** Texto estructurado ### Proceso de Fine-Tuning El fine-tuning del modelo BGE-M3 se ha llevado a cabo mediante técnicas avanzadas de optimización y ajuste de hiperparámetros, enfocándose en mejorar su capacidad para generar embeddings de alta calidad en contextos legales. #### Metodología 1. **Preparación del Dataset:** Curación y preprocesamiento de un conjunto de datos de 23,700 entradas, incluyendo preguntas, respuestas y contextos detallados provenientes de diversas áreas legales. 2. **Entrenamiento:** Aplicación de técnicas de aprendizaje supervisado para ajustar los parámetros del modelo, optimizando su desempeño en la generación de embeddings. 3. **Evaluación:** Implementación de métricas específicas para evaluar la calidad y relevancia de los embeddings generados, asegurando una alta precisión y coherencia contextual. ### Resultados y Beneficios #### Calidad de los Embeddings El modelo finamente ajustado BGE-M3 ahora demuestra una capacidad superior para generar embeddings que capturan de manera efectiva las complejidades del lenguaje y contexto legal, lo que resulta en mejoras significativas en la precisión y relevancia de la información recuperada. #### Aplicaciones Prácticas - **Sistemas de Recuperación de Información:** Mejora en la precisión de los motores de búsqueda legales, facilitando el acceso rápido a documentos y jurisprudencia relevante. - **Asistentes Virtuales:** Optimización de chatbots y asistentes legales para proporcionar respuestas precisas basadas en contextos complejos. - **Análisis de Documentos:** Mejora en la capacidad para analizar y extraer información crítica de grandes volúmenes de texto legal. #### Evaluaciones de Rendimiento - **Exactitud de Embeddings:** Incremento del 84% en la precisión de los embeddings generados para consultas legales específicas. - **Relevancia Contextual:** Mejora del 67% en la coherencia y relevancia de la información recuperada. - **Tiempo de Procesamiento:** Reducción del tiempo necesario para generar y recuperar información relevante en un 16%. ### Conclusiones Este avance posiciona al modelo BGE-M3 como una herramienta fundamental para aplicaciones de recuperación de información en el ámbito legal, facilitando el acceso a conocimientos especializados y mejorando la eficiencia en la prestación de servicios jurídicos. Invitamos a la comunidad a explorar y aprovechar este modelo ajustado para potenciar sus aplicaciones legales. #### Acceso al Modelo El modelo BGE-M3 ajustado para RAG está disponible para su implementación y uso. Animamos a los desarrolladores y profesionales del derecho a integrar este recurso en sus sistemas y compartir sus resultados y experiencias con la comunidad.