From 8339fcf0d8ea9a66275767b41c3563cc118f1382 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Boschi?= Date: Mon, 8 Jul 2024 13:21:34 +0200 Subject: [PATCH] fix: astradb ingests twice (#2573) --- .../base/langflow/components/vectorstores/AstraDB.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/backend/base/langflow/components/vectorstores/AstraDB.py b/src/backend/base/langflow/components/vectorstores/AstraDB.py index 40b578932..0850449ac 100644 --- a/src/backend/base/langflow/components/vectorstores/AstraDB.py +++ b/src/backend/base/langflow/components/vectorstores/AstraDB.py @@ -162,7 +162,8 @@ class AstraVectorStoreComponent(LCVectorStoreComponent): ), ] - def _build_vector_store_no_ingest(self): + def _build_vector_store(self): + # cache the vector store to avoid re-initializing and ingest data again if self._cached_vectorstore: return self._cached_vectorstore @@ -224,6 +225,8 @@ class AstraVectorStoreComponent(LCVectorStoreComponent): except Exception as e: raise ValueError(f"Error initializing AstraDBVectorStore: {str(e)}") from e + self._add_documents_to_vector_store(vector_store) + self._cached_vectorstore = vector_store return vector_store @@ -266,8 +269,7 @@ class AstraVectorStoreComponent(LCVectorStoreComponent): return args def search_documents(self) -> list[Data]: - vector_store = self._build_vector_store_no_ingest() - self._add_documents_to_vector_store(vector_store) + vector_store = self._build_vector_store() logger.debug(f"Search input: {self.search_input}") logger.debug(f"Search type: {self.search_type}") @@ -300,6 +302,5 @@ class AstraVectorStoreComponent(LCVectorStoreComponent): } def build_vector_store(self): - vector_store = self._build_vector_store_no_ingest() - self._add_documents_to_vector_store(vector_store) + vector_store = self._build_vector_store() return vector_store