Rerankers Module
The rerankers module provides methods to reorder retrieved documents by relevance to the query.Quick Start
Reranker Types
Classes
RerankResult
Dataclass for reranking results.RerankerProtocol
Protocol for reranker implementations.SimpleReranker
Built-in keyword-based reranker (no external dependencies).RerankerRegistry
Registry for managing reranker implementations.Using with Knowledge
Creating Custom Rerankers
Thread Safety
RerankerRegistry is a thread-safe singleton — register, get, list_rerankers, and clear are all guarded by an internal lock, and concurrent get_reranker_registry() calls always return the same instance.
Safe to call from multiple agents at once — no external locking required. Since PraisonAI #5197.
LLM Reranker Example
Performance
- SimpleReranker is pure Python with no dependencies
- LLM reranker makes API calls (latency depends on provider)
- Cross-encoder requires sentence-transformers (loaded lazily)
RerankerRegistryoperations acquire a lightweight lock — negligible overhead in single-threaded use, noKeyErroror iteration errors under concurrent register/clear

