--- language: - es license: mit datasets: - hsilvosa/openplacsp library_name: sentence-transformers pipeline_tag: sentence-similarity tags: - public-procurement - semantic-search - cpv base_model: intfloat/multilingual-e5-small --- # Embeddings for Spanish public procurement A semantic encoder fine-tuned on historical versions of Spanish procurement notices and text-to-CPV-description pairs. It is intended for search, related-notice retrieval, version matching, and CPV division retrieval. It was trained from the [hsilvosa/openplacsp](https://huggingface.co/datasets/hsilvosa/openplacsp). ## Temporal evaluation on 2024 | Task | Metric | Base | Fine-tuned | |---|---|---:|---:| | Retrieve another version | Recall@1 | 0.9984 | 0.9982 | | Retrieve another version | Recall@10 | 1.0000 | 0.9998 | | Retrieve a CPV division | Recall@1 | 0.1920 | 0.6846 | | Retrieve a CPV division | Recall@3 | 0.3672 | 0.8550 | Training only uses notices whose first publication date is no later than 2022. The years 2023 and 2024 are reserved for validation and testing. Training uses 150,000 version pairs and 50,000 text-to-CPV pairs with seed 20260817. The source snapshot fingerprint is `fad46713c99abcaa500c7cef9323ae173f8f75c5aca02b299db2d4e96c3ca934` and the model checksum is `e89f3596034c54b46d3959d2c7a33e378c9d67019405c9b6d26e56f207ec01ed`. ## Usage ```python from sentence_transformers import SentenceTransformer model = SentenceTransformer(".") queries = model.encode(["query: mantenimiento de aplicaciones"], normalize_embeddings=True) documents = model.encode(["passage: servicios de desarrollo de software"], normalize_embeddings=True) similarity = model.similarity(queries, documents) ``` ## Limitations The model reflects Spanish administrative language and data published through December 2024. Similarity does not imply legal identity, irregularity, or contractual equivalence. CPV descriptions are short and some divisions have relatively few examples.