clean up workernode init

pull/160/head
Kye 2 years ago
parent ba7a031e7b
commit 257ba5de71

@ -58,43 +58,43 @@ worker_tool = Tool(
description="Useful for when you need to spawn an autonomous agent instance as a worker to accomplish complex tasks, it can search the internet or spawn child multi-modality models to process and generate images and text or audio and so on" description="Useful for when you need to spawn an autonomous agent instance as a worker to accomplish complex tasks, it can search the internet or spawn child multi-modality models to process and generate images and text or audio and so on"
) )
# class WorkerNode(BaseTool):
# """Useful for when you need to spawn an autonomous agent instance as a worker to accomplish complex tasks, it can search the internet or spawn child multi-modality models to process and generate images and text or audio and so on """
# name = "WorkerNode" class WorkerNodeInitializer:
# description = "A worker node that can perform complex tasks" def __init__(self, openai_api_key):
self.openai_api_key = openai_api_key
# def __init__(self, llm, tools, vectorstore):
# super().__init__() def initialize_llm(self, llm_class, temperature=0.5):
# self.llm = llm return llm_class(openai_api_key=self.openai_api_key, temperature=temperature)
# self.tools = tools
# self.vectorstore = vectorstore def initialize_tools(self, llm_class):
llm = self.initialize_llm(llm_class)
# def create_agent(self, ai_name, ai_role, human_in_the_loop, search_kwargs): web_search = DuckDuckGoSearchRun()
# self.agent = AutoGPT.from_llm_and_tools( tools = [
# ai_name=ai_name, web_search,
# ai_role=ai_role, WriteFileTool(root_dir=ROOT_DIR),
# tools=self.tools, ReadFileTool(root_dir=ROOT_DIR),
# llm=self.llm, process_csv,
# memory=self.vectorstore.as_retriever(search_kwargs=search_kwargs), WebpageQATool(qa_chain=load_qa_with_sources_chain(llm)),
# human_in_the_loop=human_in_the_loop, ]
# ) return tools
# self.agent.chain.verbose = True
def initialize_vectorstore(self):
# # @tool embeddings_model = OpenAIEmbeddings(openai_api_key=self.openai_api_key)
# # name="Worker AutoBot Agent", embedding_size = 1536
# # description="Useful for when you need to spawn an autonomous agent instance as a worker to accomplish complex tasks, it can search the internet or spawn child multi-modality models to process and generate images and text or audio and so on", index = faiss.IndexFlatL2(embedding_size)
# def _run( return FAISS(embeddings_model.embed_query, index, InMemoryDocstore({}), {})
# self, prompt: str, run_manager: Optional[CallbackManagerForToolRun] = None
# ) -> str: def create_worker_node(self, llm_class=ChatOpenAI):
# """Use the tool.""" worker_tools = self.initialize_tools(llm_class)
# tree_of_thoughts_prompt = """ vectorstore = self.initialize_vectorstore()
# Imagine three different experts are answering this question. All experts will write down each chain of thought of each step of their thinking, then share it with the group. Then all experts will go on to the next step, etc. If any expert realises they're wrong at any point then they leave. The question is... worker_node = WorkerNode(llm=self.initialize_llm(llm_class), tools=worker_tools, vectorstore=vectorstore)
# """ worker_node.create_agent(ai_name="Swarm Worker AI Assistant", ai_role="Assistant", human_in_the_loop=False, search_kwargs={})
# self.agent.run([f"{tree_of_thoughts_prompt}{prompt}"]) return worker_node
# return "Task completed by WorkerNode"
# async def _arun( # usage
# self, prompt: str, run_manager: Optional[AsyncCallbackManagerForToolRun] = None def worker_node(api_key):
# ) -> str: initializer = WorkerNodeInitializer(api_key)
# """Use the tool asynchronously.""" worker = initializer.create_worker_node()
# raise NotImplementedError("WorkerNode does not support async") return worker

@ -1,11 +1,11 @@
from swarms.tools.agent_tools import * from swarms.tools.agent_tools import *
from swarms.agents.workers.worker import WorkerNode from swarms.agents.workers.worker_agent import WorkerNode
from swarms.agents.boss.boss_agent import BossNode from swarms.agents.boss.boss_agent import BossNode
# from swarms.agents.workers.omni_worker import OmniWorkerAgent # from swarms.agents.workers.omni_worker import OmniWorkerAgent
# from swarms.tools.main import RequestsGet, ExitConversation # from swarms.tools.main import RequestsGet, ExitConversation
# visual agent # visual agent
from swarms.agents.workers.worker import worker_tool from swarms.agents.workers.worker_agent import worker_tool
import logging import logging
logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s') logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s')

@ -1,6 +1,6 @@
import unittest import unittest
import swarms import swarms
from swarms.agents.workers.worker import WorkerNode from swarms.agents.workers.worker_agent import WorkerNode
from swarms.agents.boss.boss_agent import BossNode from swarms.agents.boss.boss_agent import BossNode
class TestSwarms(unittest.TestCase): class TestSwarms(unittest.TestCase):

Loading…
Cancel
Save