Overview
This is an open source, high performance, multilingual model. It works well on messy data and short queries expected to return medium-length passages of text (1-2 paragraphs).
This model returns a relevance score for a query and passage. A sigmoid function can map the relevance score to a float value in the range [0,1].
Reranking models are designed to provide superior accuracy over retriever models but are much slower, so this model should not be used with more than a few hundred documents. Due to the slowness of rerankers, we recommend using them in a two-stage retrieval system: use a retrieval to pull in a smaller number of documents from a larger database and then rerank the smaller number of documents using a reranker.
Installation
pip install -U pinecone
Reranking
See rerank for instructions for using bge-reranker-v2-m3
with the Pinecone Inference API rerank
endpoint.
from pinecone import Pinecone
pc = Pinecone("API-KEY")
query = "Tell me about Apple's products"
results = pc.inference.rerank(
model="bge-reranker-v2-m3",
query=query,
documents=[
"Apple is a popular fruit known for its sweetness and crisp texture.",
"Apple is known for its innovative products like the iPhone.",
"Many people enjoy eating apples as a healthy snack.",
"Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces.",
"An apple a day keeps the doctor away, as the saying goes.",
],
top_n=3,
return_documents=True,
)
print(query)
for r in results.data:
print(r.score, r.document.text)