Explorar o código

use threading to insert docs into the db (#1191)

Robert Brennan hai 1 ano
pai
achega
6b0408d47c
Modificáronse 1 ficheiros con 6 adicións e 0 borrados
  1. 6 0
      agenthub/monologue_agent/utils/memory.py

+ 6 - 0
agenthub/monologue_agent/utils/memory.py

@@ -1,3 +1,5 @@
+from threading import Thread
+
 import chromadb
 from llama_index.core import Document
 from llama_index.core.retrievers import VectorIndexRetriever
@@ -85,6 +87,10 @@ class LongTermMemory:
         )
         self.thought_idx += 1
         logger.debug('Adding %s event to memory: %d', t, self.thought_idx)
+        thread = Thread(target=self._add_doc, args=(doc,))
+        thread.start()  # We add the doc concurrently so we don't have to wait ~500ms for the insert
+
+    def _add_doc(self, doc):
         self.index.insert(doc)
 
     def search(self, query: str, k: int = 10):