fix: hybrid search

This commit is contained in:
Timothy Jaeryang Baek 2025-11-24 05:52:18 -05:00
parent cea99175ca
commit 662a1fac47

View file

@ -90,6 +90,19 @@ class VectorSearchRetriever(BaseRetriever):
embedding_function: Any embedding_function: Any
top_k: int top_k: int
def _get_relevant_documents(
self, query: str, *, run_manager: CallbackManagerForRetrieverRun
) -> list[Document]:
"""Get documents relevant to a query.
Args:
query: String to find relevant documents for.
run_manager: The callback handler to use.
Returns:
List of relevant documents.
"""
async def _aget_relevant_documents( async def _aget_relevant_documents(
self, self,
query: str, query: str,
@ -1231,6 +1244,24 @@ class RerankCompressor(BaseDocumentCompressor):
extra = "forbid" extra = "forbid"
arbitrary_types_allowed = True arbitrary_types_allowed = True
def compress_documents(
self,
documents: Sequence[Document],
query: str,
callbacks: Optional[Callbacks] = None,
) -> Sequence[Document]:
"""Compress retrieved documents given the query context.
Args:
documents: The retrieved documents.
query: The query context.
callbacks: Optional callbacks to run during compression.
Returns:
The compressed documents.
"""
async def acompress_documents( async def acompress_documents(
self, self,
documents: Sequence[Document], documents: Sequence[Document],