Argument parsing with structured class.
Project description
ReRanker
ReRanker for hybrid retrieval.
For end-to-end text query service, check qtext.
Ranking
rank(query: str, docs: list[str])
- cross-encoder model
- cohere model
- diversity (Max Marginal Relevance)
rank(docs: list[Record])
- time decay with expressions
- title n-gram with bm25
- content n-gram with bm25
- document boost with expressions
- title embedding with content embedding
- title keywords with content keywords
- combination of the above features
Services
You can start all the service with the following command:
docker compose -f serving/compose.yaml up -d
Installation
pip install reranker
Usage
If you need the cross-encoder model service, you can start the server with the following command:
docker compose -f serving/compose.yaml up -d encoder
If you need the semantic highlight service, you can start the server with the following command:
docker compose -f serving/compose.yaml up -d colbert
from datetime import datetime, timedelta
from reranker import ReRanker, CrossEncoderClient, TimeDecayRanker
reranker = ReRanker(
steps=[
CrossEncoderClient(
model_name="cross-encoder/ms-marco-MiniLM-L-6-v2",
addr="http://localhost:8000",
),
TimeDecayRanker(decay_rate=0.5),
]
)
reranker.rank(
query="What is the capital of France?",
docs=[
"Paris is the capital of France.",
"The Eiffel Tower is in Paris.",
"The Louvre is in Paris.",
],
)
reranker.rank(
query=Record(
text="What is the capital of France?",
timestamp=datetime.now(),
),
docs=[
Record(
text="Paris is the capital of France.",
timestamp=datetime.now() - timedelta(days=1),
),
Record(
text="The Eiffel Tower is in Paris.",
timestamp=datetime.now() - timedelta(days=2),
),
Record(
text="The Louvre is in Paris.",
timestamp=datetime.now() - timedelta(days=3),
),
]
)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
reranker-0.2.3.tar.gz
(15.7 kB
view details)
Built Distribution
File details
Details for the file reranker-0.2.3.tar.gz
.
File metadata
- Download URL: reranker-0.2.3.tar.gz
- Upload date:
- Size: 15.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.0.0 CPython/3.12.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5e1ea0932d336b3181a6ecb4f511c1ed4bd5c907396b348fee7f28e0fee84da9 |
|
MD5 | 3aea16e40dd18983ca929a99fc0bfc09 |
|
BLAKE2b-256 | 21f4f58cda799752c0cecdcc6918d14117e13f2270c83351dd123a5bd13f1049 |
File details
Details for the file reranker-0.2.3-py3-none-any.whl
.
File metadata
- Download URL: reranker-0.2.3-py3-none-any.whl
- Upload date:
- Size: 9.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.0.0 CPython/3.12.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 86165605ef6a52b8de0f68dec80f3ca379b017f278215ad3aa1e5a9ac022f8e3 |
|
MD5 | 38278e49a9989e580134d182b2cb3007 |
|
BLAKE2b-256 | 88cd8291fe526e2776ab4dda2477d6d100ee3a02edcdb3f9b6f0d8a0419036c4 |