from abc import ABC, abstractmethod from core.rag.models.document import Document class BaseRerankRunner(ABC): @abstractmethod def run( self, query: str, documents: list[Document], score_threshold: float | None = None, top_n: int | None = None, user: str | None = None, ) -> list[Document]: """ Run rerank model :param query: search query :param documents: documents for reranking :param score_threshold: score threshold :param top_n: top n :param user: unique user id if needed :return: """ raise NotImplementedError