24Arys11's picture
minor refactoring
f49023b
raw
history blame
2.64 kB
from args import Args
from itf_agent import IAgent
from toolbox import Toolbox
class Manager(IAgent):
"""
Orchestrates the workflow by delegating tasks to specialized nodes and integrating their outputs
"""
def __init__(self):
super().__init__("01_manager.txt", Args.PRIMARY_AGENT_PRESET)
class Auditor(IAgent):
"""
Reviews manager's outputs for accuracy, safety, and quality
"""
def __init__(self):
super().__init__("02_auditor.txt", Args.PRIMARY_AGENT_PRESET)
class Summarizer(IAgent):
"""
Generates concise summaries of conversations or passages.
"""
def __init__(self):
super().__init__("03_summarizer.txt", Args.PRIMARY_AGENT_PRESET)
class Solver(IAgent):
"""
Central problem-solving node that coordinates with specialized experts based on task requirements
"""
def __init__(self):
super().__init__("04_solver.txt", Args.PRIMARY_AGENT_PRESET)
class Researcher(IAgent):
"""
Retrieves and synthesizes information from various sources to answer knowledge-based questions
"""
def __init__(self):
toolbox = Toolbox.web_search
tools = [
toolbox.duckduckgo_text_search,
toolbox.duckduckgo_images_search,
toolbox.duckduckgo_videos_search
]
super().__init__("05_researcher.txt", Args.PRIMARY_AGENT_PRESET, tools)
class Reasoner(IAgent):
"""
Performs logical reasoning, inference, and step-by-step problem-solving
"""
def __init__(self):
math_toolbox = Toolbox.math
encryption_toolbox = Toolbox.encryption
tools = [
math_toolbox.symbolic_calc,
math_toolbox.unit_converter,
encryption_toolbox.ascii_decode,
encryption_toolbox.ascii_encode,
encryption_toolbox.base64_decode,
encryption_toolbox.base64_encode,
encryption_toolbox.caesar_cipher_decode,
encryption_toolbox.caesar_cipher_encode,
encryption_toolbox.caesar_cipher_brute_force,
encryption_toolbox.reverse_string
]
super().__init__("06_reasoner.txt", Args.PRIMARY_AGENT_PRESET, tools)
class Viewer(IAgent):
"""
Processes, analyzes, and generates information related to images
"""
def __init__(self):
super().__init__("07_viewer.txt", Args.VISION_AGENT_PRESET)
class OutputGuard(IAgent):
"""
Performs logical reasoning, inference, and step-by-step problem-solving
"""
def __init__(self):
super().__init__("08_output_guard.txt", Args.SECONDARY_AGENT_PRESET)