from sentence_transformers import CrossEncoder
model = CrossEncoder('model_name', max_length=512)
query = 'How many people live in Berlin?'
docs = ['Berlin has a population of 3,520,031 registered inhabitants in an area of 891.82 square kilometers.', 'New York City is famous for the Metropolitan Museum of Art.']
pairs = [(query, doc) for doc in docs]
scores = model.predict(pairs)
Usage with Transformers
With the transformers library, you can use the model like this:
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch
model = AutoModelForSequenceClassification.from_pretrained('model_name')
tokenizer = AutoTokenizer.from_pretrained('model_name')
features = tokenizer(['How many people live in Berlin?', 'How many people live in Berlin?'], ['Berlin has a population of 3,520,031 registered inhabitants in an area of 891.82 square kilometers.', 'New York City is famous for the Metropolitan Museum of Art.'], padding=True, truncation=True, return_tensors="pt")
model.eval()
with torch.no_grad():
scores = model(**features).logits
print(scores)
Performance
The performance was evaluated on three datasets:
TREC-DL19 EN-EN
: The original
TREC 2019 Deep Learning Track
: Given an English query and 1000 documents (retrieved by BM25 lexical search), rank documents with according to their relevance. We compute NDCG@10. BM25 achieves a score of 45.46, a perfect re-ranker can achieve a score of 95.47.
TREC-DL19 DE-EN
: The English queries of TREC-DL19 have been translated by a German native speaker to German. We rank the German queries versus the English passages from the original TREC-DL19 setup. We compute NDCG@10.
GermanDPR DE-DE
: The
GermanDPR
dataset provides German queries and German passages from Wikipedia. We indexed the 2.8 Million paragraphs from German Wikipedia and retrieved for each query the top 100 most relevant passages using BM25 lexical search with Elasticsearch. We compute MRR@10. BM25 achieves a score of 35.85, a perfect re-ranker can achieve a score of 76.27.
We also check the performance of bi-encoders using the same evaluation: The retrieved documents from BM25 lexical search are re-ranked using query & passage embeddings with cosine-similarity. Bi-Encoders can also be used for end-to-end semantic search.
msmarco-MiniLM-L6-en-de-v1 huggingface.co is an AI model on huggingface.co that provides msmarco-MiniLM-L6-en-de-v1's model effect (), which can be used instantly with this cross-encoder msmarco-MiniLM-L6-en-de-v1 model. huggingface.co supports a free trial of the msmarco-MiniLM-L6-en-de-v1 model, and also provides paid use of the msmarco-MiniLM-L6-en-de-v1. Support call msmarco-MiniLM-L6-en-de-v1 model through api, including Node.js, Python, http.
msmarco-MiniLM-L6-en-de-v1 huggingface.co is an online trial and call api platform, which integrates msmarco-MiniLM-L6-en-de-v1's modeling effects, including api services, and provides a free online trial of msmarco-MiniLM-L6-en-de-v1, you can try msmarco-MiniLM-L6-en-de-v1 online for free by clicking the link below.
cross-encoder msmarco-MiniLM-L6-en-de-v1 online free url in huggingface.co:
msmarco-MiniLM-L6-en-de-v1 is an open source model from GitHub that offers a free installation service, and any user can find msmarco-MiniLM-L6-en-de-v1 on GitHub to install. At the same time, huggingface.co provides the effect of msmarco-MiniLM-L6-en-de-v1 install, users can directly use msmarco-MiniLM-L6-en-de-v1 installed effect in huggingface.co for debugging and trial. It also supports api for free installation.
msmarco-MiniLM-L6-en-de-v1 install url in huggingface.co: