File size: 1,617 Bytes
af383cf
 
 
 
 
 
 
 
7ae0dd2
 
 
 
 
af383cf
7ae0dd2
 
af383cf
 
 
 
 
 
 
 
 
 
7ae0dd2
af383cf
 
 
 
 
 
 
 
 
 
7ae0dd2
af383cf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
"""RAG system variants for benchmarking.

Each system implements:
    async def query(self, qa_pair: QAPair) -> SystemOutput

Pass any system's .query method as the `system=` argument to EvaluationPipeline.run().

Systems (ordered by sophistication):
    BaseLLMSystem           β€” no retrieval, pure parametric knowledge
    NaiveRAGSystem          β€” FAISS semantic search only
    HybridRAGSystem         β€” BM25 + FAISS merged with RRF
    RerankingRAGSystem      β€” FAISS + cross-encoder reranker
    HyDERAGSystem           β€” hypothetical document embedding retrieval
    QueryRewritingRAGSystem β€” multi-query retrieval with RRF merge
    AdvancedRAGSystem       β€” hybrid + reranking + query rewriting (all combined)
    AdaptiveRAGSystem       β€” routes each query to the right pipeline dynamically
"""

from eval_framework.systems.shared import SharedIndex
from eval_framework.systems.base_llm import BaseLLMSystem
from eval_framework.systems.naive_rag import NaiveRAGSystem
from eval_framework.systems.hybrid_rag import HybridRAGSystem
from eval_framework.systems.reranking_rag import RerankingRAGSystem
from eval_framework.systems.hyde_rag import HyDERAGSystem
from eval_framework.systems.query_rewriting import QueryRewritingRAGSystem
from eval_framework.systems.advanced_rag import AdvancedRAGSystem
from eval_framework.systems.adaptive_rag import AdaptiveRAGSystem

__all__ = [
    "SharedIndex",
    "BaseLLMSystem",
    "NaiveRAGSystem",
    "HybridRAGSystem",
    "RerankingRAGSystem",
    "HyDERAGSystem",
    "QueryRewritingRAGSystem",
    "AdvancedRAGSystem",
    "AdaptiveRAGSystem",
]