Former-commit-id: f978fa2c62ff2450af6df845bc4a5e05b48b9ac3
pull/160/head
Kye 2 years ago
parent 9173403a15
commit 3f639104db

@ -1,3 +1,3 @@
"""Agents, workers and bosses"""
from ..agents.workers import worker_node
from ..agents.workers.worker_ultranode import UltraNode
from .workers.WorkerUltraNode import UltraNode

@ -1,3 +1,3 @@
from .worker_agent import worker_node
from .WorkerNode import worker_node
from .worker_ultranode import UltraNode
from .WorkerUltraNode import UltraNode

File diff suppressed because it is too large Load Diff

@ -1,95 +0,0 @@
# General
import os
import pandas as pd
from langchain.experimental.autonomous_agents.autogpt.agent import AutoGPT
from langchain.chat_models import ChatOpenAI
from langchain.agents.agent_toolkits.pandas.base import create_pandas_dataframe_agent
from langchain.docstore.document import Document
import asyncio
import nest_asyncio
# Tools
from contextlib import contextmanager
from typing import Optional
from langchain.agents import tool
from langchain.tools.file_management.read import ReadFileTool
from langchain.tools.file_management.write import WriteFileTool
from langchain.tools import BaseTool, DuckDuckGoSearchRun
from langchain.text_splitter import RecursiveCharacterTextSplitter
from pydantic import Field
from langchain.chains.qa_with_sources.loading import load_qa_with_sources_chain, BaseCombineDocumentsChain
# Memory
import faiss
from langchain.vectorstores import FAISS
from langchain.docstore import InMemoryDocstore
from langchain.embeddings import OpenAIEmbeddings
from langchain.tools.human.tool import HumanInputRun
# from swarms.agents.workers.auto_agent import
from swarms.agents.workers.visual_worker import multimodal_agent_tool
from swarms.tools.main import Terminal, CodeWriter, CodeEditor, process_csv, WebpageQATool
class WorkerAgent:
def __init__(self, objective: str, api_key: str):
self.objective = objective
self.api_key = api_key
self.worker = self.create_agent_worker()
def create_agent_worker(self):
os.environ['OPENAI_API_KEY'] = self.api_key
llm = ChatOpenAI(model_name="gpt-4", temperature=1.0)
embeddings_model = OpenAIEmbeddings()
embedding_size = 1536
index = faiss.IndexFlatL2(embedding_size)
vectorstore = FAISS(embeddings_model.embed_query, index, InMemoryDocstore({}), {})
query_website_tool = WebpageQATool(qa_chain=load_qa_with_sources_chain(llm))
web_search = DuckDuckGoSearchRun()
tools = [
web_search,
WriteFileTool(root_dir="./data"),
ReadFileTool(root_dir="./data"),
multimodal_agent_tool,
process_csv,
query_website_tool,
Terminal,
CodeWriter,
CodeEditor
]
agent_worker = AutoGPT.from_llm_and_tools(
ai_name="WorkerX",
ai_role="Assistant",
tools=tools,
llm=llm,
memory=vectorstore.as_retriever(search_kwargs={"k": 8}),
human_in_the_loop=True,
)
agent_worker.chain.verbose = True
return agent_worker
# objective = "Your objective here"
# api_key = "Your OpenAI API key here"
# worker_agent = WorkerAgent(objective, api_key)
# objective = "Your objective here"
# worker_agent = WorkerAgent(objective)

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

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

Loading…
Cancel
Save