vibe.rerank_providers.base

Base class for rerank providers.

Rerank providers score query-document relevance for improving search results. Unlike embeddings (which encode text independently), rerankers use cross-attention to directly compare query and document pairs.

RerankResult

Result from a rerank operation.

RerankProviderConfig

Configuration for rerank providers.

Attributes:
  • model (str) –

    Model identifier

  • top_n (int | None) –

    Default number of top results to return (None = all)

  • batch_size (int) –

    Maximum documents per request

  • api_key (str | None) –

    API key for cloud providers

  • base_url (str | None) –

    Base URL for API endpoint

from_dict

from_dict(config: dict[str, Any]) -> RerankProviderConfig

Create from configuration dictionary.

RerankProvider

Abstract base class for rerank providers.

Subclasses must implement: - rerank(): Score documents against a query

The base class provides: - Configuration handling - Logging setup

model_name

model_name: str

Model identifier.

__init__

__init__(config: dict[str, Any] | None = None) -> None

Initialize the provider.

Parameters:
  • config (dict[str, Any] | None, default: None ) –

    Provider configuration dictionary

rerank

rerank(query: str, documents: list[str], top_n: int | None = None) -> list[RerankResult]

Rerank documents by relevance to query.

Parameters:
  • query (str) –

    Query to rank documents against.

  • documents (list[str]) –

    List of documents to rerank.

  • top_n (int | None, default: None ) –

    Number of top results to return. If None, uses config default or returns all.

Returns:
  • list[RerankResult]

    List of RerankResult sorted by relevance_score descending.