GravityFalls / python /tools /knowledge_tool.py
frdel
Docker + SSH, AgentConfig class
deab47c
raw
history blame
877 Bytes
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)