Spaces:
Sleeping
Sleeping
File size: 1,219 Bytes
a34068e | 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 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | import logging
from functools import lru_cache
from app.core.bm25 import BM25Index, get_bm25
from app.core.embedder import EmbedderService, get_embedder
from app.core.generator import AnswerGenerator
from app.core.llm import GeminiService, get_llm
from app.core.query_analyzer import QueryAnalyzer
from app.core.reranker import RerankerService, get_reranker
from app.core.retriever import HybridRetriever
from app.core.vectorstore import VectorStoreService, get_vectorstore
logger = logging.getLogger(__name__)
def dep_embedder() -> EmbedderService:
return get_embedder()
def dep_vectorstore() -> VectorStoreService:
return get_vectorstore()
def dep_bm25() -> BM25Index:
return get_bm25()
def dep_reranker() -> RerankerService:
return get_reranker()
def dep_llm() -> GeminiService:
return get_llm()
@lru_cache
def dep_query_analyzer() -> QueryAnalyzer:
return QueryAnalyzer()
def dep_retriever() -> HybridRetriever:
return HybridRetriever(
vectorstore=get_vectorstore(),
bm25=get_bm25(),
embedder=get_embedder(),
)
def dep_generator() -> AnswerGenerator:
return AnswerGenerator(
llm=get_llm(),
reranker=get_reranker(),
)
|