File size: 877 Bytes
2d2ee7a
 
 
 
 
 
 
deab47c
 
201c475
 
bab921d
201c475
 
bab921d
 
201c475
 
 
 
 
 
5266ca3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
from agent import Agent
from . import online_knowledge_tool
from . import memory_tool
import concurrent.futures



from python.helpers.tool import Tool, Response
from python.helpers import files

class Knowledge(Tool):
    def execute(self, question="", **kwargs):
        with concurrent.futures.ThreadPoolExecutor() as executor:
            # Schedule the two functions to be run in parallel
            future_online = executor.submit(online_knowledge_tool.process_question, question)
            future_memory = executor.submit(memory_tool.process_query, self.agent, question)

            # Wait for both functions to complete
            online_result = future_online.result()
            memory_result = future_memory.result()

        result = f"# Online sources:\n{online_result}\n\n# Memory:\n{memory_result}"
        return Response(message=result, break_loop=False)