From 207e319a7071917e67a6cfb2ea38cdf525e4683d Mon Sep 17 00:00:00 2001 From: iocuydi <46613640+iocuydi@users.noreply.github.com> Date: Thu, 19 Jan 2023 16:48:13 -0600 Subject: [PATCH] Add search_kwargs option for VectorDBQAWithSourcesChain (#657) Allows for passing additional vectorstore params like namespace, etc. to VectorDBQAWithSourcesChain Example: `chain = VectorDBQAWithSourcesChain.from_llm(OpenAI(temperature=0), vectorstore=store, search_kwargs={"namespace": namespace})` --- langchain/chains/qa_with_sources/vector_db.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/langchain/chains/qa_with_sources/vector_db.py b/langchain/chains/qa_with_sources/vector_db.py index 14fbf004..f4244b74 100644 --- a/langchain/chains/qa_with_sources/vector_db.py +++ b/langchain/chains/qa_with_sources/vector_db.py @@ -14,7 +14,12 @@ class VectorDBQAWithSourcesChain(BaseQAWithSourcesChain, BaseModel): vectorstore: VectorStore """Vector Database to connect to.""" k: int = 4 + """Number of results to return from store""" + search_kwargs: Dict[str, Any] = {} + """Extra search args""" def _get_docs(self, inputs: Dict[str, Any]) -> List[Document]: question = inputs[self.question_key] - return self.vectorstore.similarity_search(question, k=self.k) + return self.vectorstore.similarity_search( + question, k=self.k, **self.search_kwargs + )