Spaces:
Sleeping
Sleeping
File size: 3,296 Bytes
910ae58 4fb4269 910ae58 4fb4269 910ae58 4fb4269 910ae58 4fb4269 910ae58 4fb4269 910ae58 4fb4269 910ae58 4fb4269 910ae58 4fb4269 910ae58 4fb4269 910ae58 4fb4269 910ae58 4fb4269 910ae58 4fb4269 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 |
from args import Args
from itf_agent import IAgent
from llm_factory import AgentPreset
from toolbox import Toolbox
PRIMARY_AGENT_PRESET = AgentPreset(Args.primary_llm_interface, Args.primary_model,
temperature = None, max_tokens = 2048, repeat_penalty = None)
SECONDARY_AGENT_PRESET = AgentPreset(Args.primary_llm_interface, Args.secondary_model,
temperature = None, max_tokens = 2048, repeat_penalty = None)
VISION_AGENT_PRESET = AgentPreset(Args.vlm_interface, Args.vision_model,
temperature = None, max_tokens = 2048, repeat_penalty = None)
class Manager(IAgent):
"""
Orchestrates the workflow by delegating tasks to specialized nodes and integrating their outputs
"""
def __init__(self):
super().__init__("01_manager.txt", PRIMARY_AGENT_PRESET)
class Auditor(IAgent):
"""
Reviews manager's outputs for accuracy, safety, and quality
"""
def __init__(self):
super().__init__("02_auditor.txt", PRIMARY_AGENT_PRESET)
class Summarizer(IAgent):
"""
Generates concise summaries of conversations or passages.
"""
def __init__(self):
super().__init__("04_summarizer.txt", PRIMARY_AGENT_PRESET)
class Solver(IAgent):
"""
Central problem-solving node that coordinates with specialized experts based on task requirements
"""
def __init__(self):
super().__init__("03_solver.txt", 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", 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__("08_reasoner.txt", PRIMARY_AGENT_PRESET, tools)
class OutputGuard(IAgent):
"""
Performs logical reasoning, inference, and step-by-step problem-solving
"""
def __init__(self):
super().__init__("11_output_guard.txt", SECONDARY_AGENT_PRESET)
class ImageHandler(IAgent):
"""
Processes, analyzes, and generates information related to images
"""
def __init__(self):
super().__init__("09_image_handler.txt", VISION_AGENT_PRESET)
class VideoHandler(IAgent):
"""
Processes, analyzes, and generates information related to videos
"""
def __init__(self):
super().__init__("10_video_handler.txt", VISION_AGENT_PRESET)
|