mirror of
https://github.com/hwchase17/langchain.git
synced 2025-07-07 13:40:46 +00:00
Minor update to ensemble retriever to handle a mix of Documents or str (#14552)
This commit is contained in:
parent
ca7da8f7ef
commit
282362382c
@ -103,6 +103,13 @@ class EnsembleRetriever(BaseRetriever):
|
||||
for i, retriever in enumerate(self.retrievers)
|
||||
]
|
||||
|
||||
# Enforce that retrieved docs are Documents for each list in retriever_docs
|
||||
for i in range(len(retriever_docs)):
|
||||
retriever_docs[i] = [
|
||||
Document(page_content=doc) if not isinstance(doc, Document) else doc
|
||||
for doc in retriever_docs[i]
|
||||
]
|
||||
|
||||
# apply rank fusion
|
||||
fused_documents = self.weighted_reciprocal_rank(retriever_docs)
|
||||
|
||||
@ -130,6 +137,13 @@ class EnsembleRetriever(BaseRetriever):
|
||||
for i, retriever in enumerate(self.retrievers)
|
||||
]
|
||||
|
||||
# Enforce that retrieved docs are Documents for each list in retriever_docs
|
||||
for i in range(len(retriever_docs)):
|
||||
retriever_docs[i] = [
|
||||
Document(page_content=doc) if not isinstance(doc, Document) else doc
|
||||
for doc in retriever_docs[i]
|
||||
]
|
||||
|
||||
# apply rank fusion
|
||||
fused_documents = self.weighted_reciprocal_rank(retriever_docs)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user