@ -474,14 +474,32 @@ class AzureSearch(VectorStore):
Returns :
Returns :
List [ Document ] : A list of documents that are most similar to the query text .
List [ Document ] : A list of documents that are most similar to the query text .
"""
"""
docs_and_scores = self . semantic_hybrid_search_with_score (
docs_and_scores = self . semantic_hybrid_search_with_score _and_rerank (
query , k = k , filters = kwargs . get ( " filters " , None )
query , k = k , filters = kwargs . get ( " filters " , None )
)
)
return [ doc for doc , _ in docs_and_scores ]
return [ doc for doc , _ , _ in docs_and_scores ]
def semantic_hybrid_search_with_score (
def semantic_hybrid_search_with_score (
self , query : str , k : int = 4 , filters : Optional [ str ] = None
self , query : str , k : int = 4 , * * kwargs : Any
) - > List [ Tuple [ Document , float ] ] :
) - > List [ Tuple [ Document , float ] ] :
"""
Returns the most similar indexed documents to the query text .
Args :
query ( str ) : The query text for which to find similar documents .
k ( int ) : The number of documents to return . Default is 4.
Returns :
List [ Document ] : A list of documents that are most similar to the query text .
"""
docs_and_scores = self . semantic_hybrid_search_with_score_and_rerank (
query , k = k , filters = kwargs . get ( " filters " , None )
)
return [ ( doc , score ) for doc , score , _ in docs_and_scores ]
def semantic_hybrid_search_with_score_and_rerank (
self , query : str , k : int = 4 , filters : Optional [ str ] = None
) - > List [ Tuple [ Document , float , float ] ] :
""" Return docs most similar to query with an hybrid query.
""" Return docs most similar to query with an hybrid query.
Args :
Args :
@ -551,6 +569,7 @@ class AzureSearch(VectorStore):
} ,
} ,
) ,
) ,
float ( result [ " @search.score " ] ) ,
float ( result [ " @search.score " ] ) ,
float ( result [ " @search.reranker_score " ] ) ,
)
)
for result in results
for result in results
]
]