Team Ai
Modelpublic

hsilvosa/bne-biencoder-entity-linker

sourceHugging Facecc-by-4.0updated 2mo agoView on Hugging Face
0likes28downloads
Model Card

BNE BiEncoder Entity Linker & Disambiguator

This model is a high-performance Spanish Bi-Encoder fine-tuned on the Biblioteca Nacional de España (BNE) Linked Data dataset (260 million RDF triples). It maps unstructured text mentions of historical authors, literary works, and library subjects to 768-dimensional normalized dense vectors for vector search and entity disambiguation to stable BNE URIs.

Benchmark Evaluation Results

MetricScoreDescription
Recall@10.9920Top-1 disambiguation accuracy to target BNE URI
Recall@50.9970Top-5 candidate retrieval coverage
Recall@100.9990Top-10 candidate retrieval coverage
MRR0.9943Mean Reciprocal Rank across entity retrieval
NDCG@50.9948Normalized Discounted Cumulative Gain at rank 5

Model Details

  • —Foundation Model: dccuchile/bert-base-spanish-wwm-cased (BETO)
  • —Parameters: ~110 Million
  • —Training Dataset: hsilvosa/bne-linked-data (1.35M owl:sameAs authority links, BNE authority titles, and bibliographic metadata)
  • —Loss Function: MultipleNegativesRankingLoss (MNRL)
  • —Embedding Dimension: 768

Usage

python
from sentence_transformers import SentenceTransformer
from sklearn.metrics.pairwise import cosine_similarity

# Load model directly from Hugging Face Hub or local path
model = SentenceTransformer("hsilvosa/bne-biencoder-entity-linker")

# Encode queries and candidate entities
query_embeddings = model.encode(["Miguel de Cervantes Saavedra", "Cantar de mio Cid"])
entity_embeddings = model.encode(["Cervantes Saavedra, Miguel de (1547-1616)", "Cantar de mio Cid. Poema épico"])

similarities = cosine_similarity(query_embeddings, entity_embeddings)
print("Similarity scores:", similarities)

Intended Use & Limitations

This model is designed for entity linking, disambiguation, and semantic retrieval over Spanish historical, literary, and bibliographic resources.