Readme
Files and versions
Updated 6 months ago
towhee
Rerank QA Content
Description
The Rerank operator is used to reorder the list of relevant documents for a query. It uses the MS MARCO Cross-Encoders model to get the relevant scores and then reorders the documents.
Code Example
- Run with ops
from towhee import ops
op = ops.rerank(threshold=0)
res = op('What is Towhee?',
['Towhee is Towhee is a cutting-edge framework to deal with unstructure data.', 'I do not know about towhee', 'Towhee has many powerful operators.', 'The weather is good' ])
- Run a pipeline
from towhee import ops, pipe, DataCollection
p = (pipe.input('query', 'doc')
.map(('query', 'doc'), ('doc', 'score'), ops.rerank(threshold=0))
.flat_map(('doc', 'score'), ('doc', 'score'), lambda x, y: [(i, j) for i, j in zip(x, y)])
.output('query', 'doc', 'score')
)
DataCollection(p('What is Towhee?',
['Towhee is Towhee is a cutting-edge framework to deal with unstructure data.', 'I do not know about towhee', 'Towhee has many powerful operators.', 'The weather is good' ])
).show()
Factory Constructor
Create the operator via the following factory method
towhee.rerank(model_name: str = 'cross-encoder/ms-marco-MiniLM-L-12-v2')
Parameters:
model_name: str
The model name of CrossEncoder, you can set it according to the Model List.
threshold: float
The threshold for filtering with score
device: str
Interface
This operator is used to sort the documents of the query content and return the score, and can also set a threshold to filter the results.
Parameters:
query: str
The query content.
docs: list
A list of sentences to check the correlation with the query content.
Return: List[str], List[float]
The list of documents after rerank and the list of corresponding scores.
More Resources
- The guide to rerank-english-v3.0 | Cohere: rerank-english-v3.0: a reranking model for English documents and semi-structured data (JSON); context length: 4096 tokens.
- Optimizing RAG with Rerankers: The Role and Trade-offs - Zilliz blog: Rerankers can enhance the accuracy and relevance of answers in RAG systems, but these benefits come with increased latency and computational costs.
- What Are Rerankers and How They Enhance Information Retrieval - Zilliz blog: Rerankers are specialized components in information retrieval systems that perform a crucial second-stage evaluation of search results.
- Building an Intelligent QA System with NLP and Milvus - Zilliz blog: The Next-Gen QA Bot is here
- The guide to rerank-english-v2.0 | Cohere: rerank-english-v2.0: a reranking model for English language documents with a context length of 512 tokens.
| 24 Commits | ||
---|---|---|---|
|
1.1 KiB
|
2 years ago | |
|
3.2 KiB
|
6 months ago | |
|
91 B
|
2 years ago | |
|
13 B
|
1 year ago | |
|
5.6 KiB
|
10 months ago | |
|
47 KiB
|
2 years ago | |
|
4.1 KiB
|
2 years ago |