From e544ff8ba31f3cc66040b7b0e4cfc3f9f7f1812f Mon Sep 17 00:00:00 2001 From: Lorenze Jay <63378463+lorenzejay@users.noreply.github.com> Date: Tue, 1 Jul 2025 10:14:39 -0700 Subject: [PATCH] refactor: streamline collection handling in RAGStorage (#3097) Replaced the try-except block for collection retrieval with a single call to get_or_create_collection, simplifying the code and improving readability. Added logging to confirm whether the collection was found or created. --- src/crewai/memory/storage/rag_storage.py | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/crewai/memory/storage/rag_storage.py b/src/crewai/memory/storage/rag_storage.py index fd4c77838..995bb4a7e 100644 --- a/src/crewai/memory/storage/rag_storage.py +++ b/src/crewai/memory/storage/rag_storage.py @@ -71,14 +71,10 @@ class RAGStorage(BaseRAGStorage): self.app = chroma_client - try: - self.collection = self.app.get_collection( - name=self.type, embedding_function=self.embedder_config - ) - except Exception: - self.collection = self.app.create_collection( - name=self.type, embedding_function=self.embedder_config - ) + self.collection = self.app.get_or_create_collection( + name=self.type, embedding_function=self.embedder_config + ) + logging.info(f"Collection found or created: {self.collection}") def _sanitize_role(self, role: str) -> str: """