BGE large Legal Spanish Spa Law QA
This is a sentence-transformers model finetuned from BAAI/bge-m3 on the boe-data-sintetic dataset. 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
- Maximum Sequence Length: 8192 tokens
- Output Dimensionality: 1024 dimensions
- Similarity Function: Cosine Similarity
- Training Dataset:
- Language: es
- License: apache-2.0
Model Sources
- Documentation: Sentence Transformers Documentation
- Repository: Sentence Transformers on GitHub
- Hugging Face: Sentence Transformers on Hugging Face
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:
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("pablosi/bge-m3-retrained")
# Run inference
sentences = [
'¿En qué subsistema de contabilidad se realizan las anotaciones contables para la formalización de reintegros del presupuesto de gastos?',
' la columna de haber del concepto 51030 “Otros movimientos internos.\nFormalización de ingresos por cuenta de relaciones internas”».\n\n2. El número 41) FRPG.995, de formalización de reintegros del presupuesto de gastos\n\n\n(minora reconocimientos de obligaciones, propuestas de pago, ordenaciones de pago y\nrealizaciones de pago). Ejercicio corriente, queda redactado en los términos siguientes:\n\n«41.–) FRPG.995, de formalización de reintegros del presupuesto de gastos\n\n\n(minora reconocimientos de obligaciones, propuestas de pago, ordenaciones de\npago y realizaciones de pago). Ejercicio corriente. Las anotaciones contables se\n\n\n-----\n\n# BOLETÍN OFICIAL DEL ESTADO\n\n**Núm. 4** **Sábado 4 de enero de 2020** **Sec. I. Pág. 382**\n\n\nrealizan en los centros de gestión que expidieron las correspondientes propuestas\nde reintegros y en las cajas pagadoras.\n\n41.1 En el subsistema de contabilidad patrimonial.\n\n\n41.1.1 En el centro de gestión que expidió la propuesta de reintegro. Por el\n\n\nimporte total íntegro del documento KRPG de referencia y de forma encadenada se\nrealizan los siguientes asientos con signo negativo:\n\na) Cargo, según proceda, a la subcuenta 40002 “Acreedores por obligaciones\n\n\nrec',
' Subsecre-\nOficina de Control de Aproximación y Torre de Con\xad taría de Aviación Civil.\n##### trol de Aeródromo de Tenerife-Norte. 5.2.6. Estación de Comunicaciones de la ENA.\n\nSegunda: Torres de Control de Aeródromo de Almería, 5.3. Tendrá consideración de periférico, dependiendo de\n##### Sevilla, Alicante, lbiza, Gerona, Menorca, Valencia, San\xad la Sección de Telecomunicaciones Aeronáuticas, el\ntiago, Bilbao, Zaragoza y Lanzarote. Centro de Retransmisión Automática de Madrid, con\nTercera: Torres de Control de Aeródromo de Asturias, nivel orgánico de Sección.\nCórdoba, Fuerteventura, Granada, Hierro, La Coruña, La Se estructurará en dos Negociados:\nPalma, Madrid-Cuatro Vientos, Melilla, Pampona,l Reus,\nSabadell, Santander, San Sebastián y Vigo. — Negociado de Comunicaciones Nacionales.\n\n— Negociado de Comunicaciones Internacionales.\n\nCuando en un aeropuerto existen simultáneamente ofici\xad\n##### na de Control de Aproximación y Torre de Control de 6. Jefaturas de Mantenimiento, enclavadas en los aeropuer\xad\nAeródromo, la Jefatura es conjunta. tos y Centros de Control en que presten servicio, depen\xad\nLas de categoría primera y segunda con nivel orgánico diendo orgánicamente de la Subdirecci',
]
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
- Datasets:
dim_1024anddim_768 - Evaluated with InformationRetrievalEvaluator
| Metric | dim_1024 | dim_768 |
|---|---|---|
| cosine_accuracy@1 | 0.0875 | 0.0946 |
| cosine_accuracy@3 | 0.7494 | 0.7329 |
| cosine_accuracy@5 | 0.8227 | 0.8156 |
| cosine_accuracy@10 | 0.8889 | 0.8889 |
| cosine_precision@1 | 0.0875 | 0.0946 |
| cosine_precision@3 | 0.2498 | 0.2443 |
| cosine_precision@5 | 0.1645 | 0.1631 |
| cosine_precision@10 | 0.0889 | 0.0889 |
| cosine_recall@1 | 0.0875 | 0.0946 |
| cosine_recall@3 | 0.7494 | 0.7329 |
| cosine_recall@5 | 0.8227 | 0.8156 |
| cosine_recall@10 | 0.8889 | 0.8889 |
| cosine_ndcg@10 | 0.5558 | 0.5548 |
| cosine_mrr@10 | 0.4428 | 0.442 |
| cosine_map@100 | 0.4469 | 0.4462 |
Training Details
Training Dataset
boe-data-sintetic
- Dataset: boe-data-sintetic at eccbec3
- Size: 4,221 training samples
- Columns: question and context
- Approximate statistics based on the first 1000 samples:
question context type string string details min: 3 tokensmean: 28.61 tokensmax: 65 tokens min: 6 tokensmean: 312.36 tokensmax: 837 tokens - Samples:
question context ¿Cuál es el carácter de la Jornada Escolar sobre el día Universal del Niño? ica DE EDUCACION Y CIENCIA Segundo.—La Jornada Escolar sobre el día Universal delNiño, que se considerará lectiva a todos los efectos, tendrácarácter didáctico y conmemorativo y se celebrará con la participación de toda la comunidad escolar.###### 18723 dificaORDENla dede 146 dede abriljulio desobre1982convalidaciónpor la que sedelmotí Tercero —La Inspección de Educación Básica del Estado orientulo de Profesor de Educación Física por los co tará y supervisará la realización de las actividades que serrespondientes a que hace referencia el artículo 5.º organicen de acuerdo con las instrucciones que señale la Direcdel Real Decreto 790/1981, de 24 de abril. ción General de Educación Básica.Cuarto.—La Constitución Española, la Declaración UniversalIlustrísimo señor:de los Derechos del Niño y los Pactos y Declaraciones InternaLa Orden ministerial de 6 de abril de 1982 («Boletín Oficial cionales ratificados por España c... ¿Cuál es el salario correspondiente al cargo de Oficial Administrativo de 2.ª? e Administrativo de 2.ª, Jefe de Negociado 2.ª ¿Qué cambio se realiza en la denominación de la partida presupuestaria en la Comunidad Autónoma de Andalucía y Extremadura en el anexo? ecir: K .. quedan afectados creditos,Arqueo bruto de los barcos destinados ...».Fecha Artículo 1.0 5, quinta y sexta líneas, donde dice: «... y 3.142,0de entradaen vigor deDuración la t5tancia o mferiorIgual urSuperiora 5.000 aSuperior 10.000 a Extremadura ...millones a Extremadura ... ). )), debe decir: «... y 3.142,0 millones de pesetas## - a 3.000 TRB o eif:or o eif~~r TRB En el anexo, Sección 21 -Ministerio de Agricultura, Pesca ya 5.000 TRB a IO.COO TRB Alimentación, Servicio/Organismo 109- Instituto Nacional de Reformay Desarrollo Agrario. _###### Períodos Comunidad Autónoma de Andalucía, donde dice: «89211090030comple~ Ordenación y transformación de regadíos», debe decir: «89211090040###### tos de Ordenación y transformación de regadíos».1 enero veinti- Comunidad Autónoma de Extremadura, donde dice: «89211090030de 1990 cuatro Ordenación y transformación de regadíos~), debe decir: «89211090040horas o Ordenación y transformación de regadíos)).fracciónsup... - Loss: MatryoshkaLoss with these parameters:
{ "loss": "MultipleNegativesRankingLoss", "matryoshka_dims": [ 1024, 768 ], "matryoshka_weights": [ 1, 1 ], "n_dims_per_step": -1 }
Evaluation Dataset
boe-data-sintetic
- Dataset: boe-data-sintetic at eccbec3
- Size: 4,221 evaluation samples
- Columns: question and context
- Approximate statistics based on the first 1000 samples:
question context type string string details min: 3 tokensmean: 27.84 tokensmax: 61 tokens min: 31 tokensmean: 325.91 tokensmax: 932 tokens - Samples:
question context ¿Cuál es el motivo por el que el Gobierno del Reino de España considera que la Declaración del Gobierno de la República Islámica de Pakistán es incompatible con el objeto y el fin del Pacto? stado constituye una reserva.El Gobierno del Reino de España considera que laDeclaración del Gobierno de la República Islámica dePakistán mediante la cual subordina la aplicación de lasdisposiciones del Pacto a las disposiciones de la constitución de la República Islámica de Pakistán constituye unareserva que pretende limitar los efectos jurídicos delPacto en su aplicación a la República Islámica de Pakistán.Una reserva que contiene una referencia general al derecho interno, sin precisar su contenido, no permite determinar con claridad en qué medida la República Islámicade Pakistán ha aceptado las obligaciones derivadas delPacto y, en consecuencia, suscita dudas sobre el compromiso de la República Islámica de Pakistán con el objeto yel fin del Pacto .El Gobierno del Reino de España considera que laDeclaración del Gobierno de la República islámica dePakistán mediante la cual subordina las obligaciones derivadas del Pacto Internacional de Derechos Económicos,Sociales y Cult... ¿Qué Plan de Reestructuración se aprobó por Decreto seiscientos noventa y cuatro/mil novecientos setenta y cinco, de Tres de abril? ro, y el apartado b) de este mismocuotas específicas de carácter social ya establecidas puedan punto, artículo y Decreto, modificado por el Decreto tres milser recaudadas en periodo ejecutivo por la vía administrativa cuarenta y nueve/mil novecientos setenta y uno, de veinticincode apremio, habida cuenta, por lo demás, del precedente exis de noviembre, por los que se desarrolla la Ley setenta y ocho/tente en favor del Plan de Reestructuración de la Industria mil novecientos sesenta y ocho, de cinco de diciembre, quedaTextil Lanera, aprobado por Decreto seiscientos noventa y cua rán redactados en la forma siguiente:tro/mil novecientos setenta y cinco, de Tres de abril.«Artículo dieciocho.—Dos. a) En los empleos de Capitán deEn su virtud, a propuesta de los Ministros de Hacienda, TraNavio y asimilados comprenderá a todos los cumplidos de conbajo e Industria, con el informe favorable de las Comisionesdiciones generales y específicas. Caso de que este número noGestor... ¿Cuál es la modalidad de pesca asignada a los buques censados en las modalidades mencionadas en el texto? a Pérez. FE-2-2810 Camariñas Palangre de fondo.E: Lnngitud 44~ 8' N~ latitud 8" 28' W. Nuevo Balbino. FE-2-2677 Finisterre _ Palangre de fondo.F: Longitud 44' 8' N, latitud 8' 37' W. Nuevo HermanosG: Longitud 44" S' N, latitud 8" 37' W. Casina. FE-2-2954 Burela. Volanta.H: Longitud 44' 5' N, latitud 8' 48' W. Nuevo HermanosFraga. FE-2-2731 Burela. Volanta. - Ql;leda reservada en forma exclusiva para el ejercicio de la pesca con Nuevo Jaime Balmes ST-3-1718 Cedeira. Volanta.aparejos de palangre de fondo y artes de enmalle fijo de fondo, para Nuevo José Antonio. FE-3-1740 Cedeira. Volanta.##### . buques censados en las citadas modalidades y con base oficialmente Nuevo Lozano. r Cü-3-1519 Cedeira. Volanta.-----10784 Martes 31 marzo 1992 BüE núm. 78 .,. - Loss: MatryoshkaLoss with these parameters:
{ "loss": "MultipleNegativesRankingLoss", "matryoshka_dims": [ 1024, 768 ], "matryoshka_weights": [ 1, 1 ], "n_dims_per_step": -1 }
Training Hyperparameters
Non-Default Hyperparameters
eval_strategy: stepsper_device_train_batch_size: 32per_device_eval_batch_size: 32gradient_accumulation_steps: 8learning_rate: 3e-05weight_decay: 0.01num_train_epochs: 12lr_scheduler_type: cosinewarmup_ratio: 0.15bf16: Truetf32: Truedataloader_num_workers: 4load_best_model_at_end: Trueoptim: adamw_torch_fusedgradient_checkpointing: Truebatch_sampler: no_duplicates
All Hyperparameters
overwrite_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: 8eval_accumulation_steps: Nonetorch_empty_cache_steps: Nonelearning_rate: 3e-05weight_decay: 0.01adam_beta1: 0.9adam_beta2: 0.999adam_epsilon: 1e-08max_grad_norm: 1.0num_train_epochs: 12max_steps: -1lr_scheduler_type: cosinelr_scheduler_kwargs: {}warmup_ratio: 0.15warmup_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: Truefp16: Falsefp16_opt_level: O1half_precision_backend: autobf16_full_eval: Falsefp16_full_eval: Falsetf32: Truelocal_rank: 0ddp_backend: Nonetpu_num_cores: Nonetpu_metrics_debug: Falsedebug: []dataloader_drop_last: Falsedataloader_num_workers: 4dataloader_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_torch_fusedoptim_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: Falsehub_always_push: Falsegradient_checkpointing: Truegradient_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: Nonedispatch_batches: Nonesplit_batches: 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: no_duplicatesmulti_dataset_batch_sampler: proportional
Training Logs
| Epoch | Step | Training Loss | Validation Loss | dim_1024_cosine_ndcg@10 | dim_768_cosine_ndcg@10 |
|---|---|---|---|---|---|
| 0.6723 | 10 | 0.987 | - | - | - |
| 1.3529 | 20 | 0.452 | - | - | - |
| 2.0336 | 30 | 0.2283 | - | - | - |
| 2.7059 | 40 | 0.0941 | - | - | - |
| 3.3866 | 50 | 0.0624 | 0.1497 | 0.5937 | 0.5904 |
| 4.0672 | 60 | 0.0381 | - | - | - |
| 4.7395 | 70 | 0.0235 | - | - | - |
| 5.4202 | 80 | 0.0204 | - | - | - |
| 6.1008 | 90 | 0.0171 | - | - | - |
| 6.7731 | 100 | 0.0085 | 0.1949 | 0.5714 | 0.5642 |
| 7.4538 | 110 | 0.0107 | - | - | - |
| 8.1345 | 120 | 0.0087 | - | - | - |
| 8.8067 | 130 | 0.0049 | - | - | - |
| 9.4874 | 140 | 0.0073 | - | - | - |
| 10.1681 | 150 | 0.0074 | 0.2107 | 0.5558 | 0.5548 |
| 10.8403 | 160 | 0.0047 | - | - | - |
- The bold row denotes the saved checkpoint.
Framework Versions
- Python: 3.10.14
- Sentence Transformers: 3.3.0
- Transformers: 4.46.2
- PyTorch: 2.2.2
- Accelerate: 1.1.1
- Datasets: 3.1.0
- Tokenizers: 0.20.3
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",
}
MatryoshkaLoss
@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
@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}
}