Coverage for /home/admin/Documents/AI/applications/lexigram-dev/lexigram/experimental/ai/lexigram-ai-rag/src/lexigram/ai/rag/reranking/types.py: 100%
10 statements
« prev ^ index » next coverage.py v7.15.4, created at 2026-08-25 07:19 +0800
« prev ^ index » next coverage.py v7.15.4, created at 2026-08-25 07:19 +0800
1"""Types for reranking operations."""
3from __future__ import annotations
5from dataclasses import dataclass, field
8@dataclass(frozen=True)
9class RerankResult:
10 """Result of a reranking operation.
12 Attributes:
13 documents: Reranked documents (most relevant first).
14 scores: Relevance scores (parallel to documents).
15 original_count: Number of documents passed to reranker.
16 reranked_count: Number of documents returned (may be < original if top_k applied).
17 model_name: Name of the reranking model used.
18 metadata: Additional reranking metadata.
19 """
21 documents: list[str]
22 scores: list[float]
23 original_count: int
24 reranked_count: int
25 model_name: str
26 metadata: dict = field(default_factory=dict)