feat: add evaluation service module for RAG and Agent (#2070)

This commit is contained in:
Aries-ckt
2024-10-18 17:42:11 +08:00
committed by GitHub
parent 253c367ceb
commit 811ce63493
29 changed files with 1263 additions and 61 deletions

View File

@@ -184,6 +184,7 @@ class IndexStoreBase(ABC):
max_threads,
)
@abstractmethod
def similar_search(
self, text: str, topk: int, filters: Optional[MetadataFilters] = None
) -> List[Chunk]:
@@ -196,16 +197,26 @@ class IndexStoreBase(ABC):
Return:
List[Chunk]: The similar documents.
"""
return self.similar_search_with_scores(text, topk, 0.0, filters)
async def asimilar_search(
self,
query: str,
topk: int,
filters: Optional[MetadataFilters] = None,
) -> List[Chunk]:
"""Async similar_search in vector database."""
return await blocking_func_to_async_no_executor(
self.similar_search, query, topk, filters
)
async def asimilar_search_with_scores(
self,
doc: str,
query: str,
topk: int,
score_threshold: float,
filters: Optional[MetadataFilters] = None,
) -> List[Chunk]:
"""Aynsc similar_search_with_score in vector database."""
"""Async similar_search_with_score in vector database."""
return await blocking_func_to_async_no_executor(
self.similar_search_with_scores, doc, topk, score_threshold, filters
self.similar_search_with_scores, query, topk, score_threshold, filters
)