"""
Retrieval module for AI Service.
[AC-AISVC-16] Provides retriever implementations with plugin architecture.
RAG Optimization: Two-stage retrieval, RRF hybrid ranking, metadata filtering.
"""

from app.services.retrieval.base import (
    BaseRetriever,
    RetrievalContext,
    RetrievalHit,
    RetrievalResult,
)
from app.services.retrieval.indexer import (
    IndexingProgress,
    IndexingResult,
    KnowledgeIndexer,
    get_knowledge_indexer,
)
from app.services.retrieval.metadata import (
    ChunkMetadata,
    ChunkMetadataModel,
    KnowledgeChunk,
    MetadataFilter,
    RetrievalStrategy,
    RetrieveRequest,
    RetrieveResult,
)
from app.services.retrieval.optimized_retriever import (
    OptimizedRetriever,
    RRFCombiner,
    TwoStageResult,
    get_optimized_retriever,
)
from app.services.retrieval.vector_retriever import VectorRetriever, get_vector_retriever

__all__ = [
    "BaseRetriever",
    "RetrievalContext",
    "RetrievalHit",
    "RetrievalResult",
    "VectorRetriever",
    "get_vector_retriever",
    "ChunkMetadata",
    "ChunkMetadataModel",
    "MetadataFilter",
    "KnowledgeChunk",
    "RetrieveRequest",
    "RetrieveResult",
    "RetrievalStrategy",
    "OptimizedRetriever",
    "get_optimized_retriever",
    "TwoStageResult",
    "RRFCombiner",
    "KnowledgeIndexer",
    "get_knowledge_indexer",
    "IndexingProgress",
    "IndexingResult",
]
