multiagent_space / agents.py
AngelGabrielTroncoso's picture
Update agents.py
5bea1b2 verified
Raw
History Blame Contribute Delete
2.42 kB
from smolagents import (
CodeAgent,
DuckDuckGoSearchTool,
TransformersModel
)
# ======================================================
# MODELO COMPARTIDO
# ======================================================
shared_model = TransformersModel(
model_id="Qwen/Qwen2.5-1.5B-Instruct",
max_new_tokens=256,
dtype="auto"
)
COMMON_IMPORTS = [
"json",
"math",
"statistics"
]
# ======================================================
# AGENTES
# ======================================================
research_agent = CodeAgent(
name="research_agent",
description="Especialista en investigaci贸n web.",
tools=[DuckDuckGoSearchTool()],
model=shared_model,
verbosity_level=0,
additional_authorized_imports=COMMON_IMPORTS
)
hypothesis_agent = CodeAgent(
name="hypothesis_agent",
description="Genera hip贸tesis y oportunidades.",
tools=[],
model=shared_model,
verbosity_level=0,
additional_authorized_imports=COMMON_IMPORTS
)
critic_agent = CodeAgent(
name="critic_agent",
description="Eval煤a riesgos y debilidades.",
tools=[],
model=shared_model,
verbosity_level=0,
additional_authorized_imports=COMMON_IMPORTS
)
strategy_agent = CodeAgent(
name="strategy_agent",
description="Dise帽a estrategias accionables.",
tools=[],
model=shared_model,
verbosity_level=0,
additional_authorized_imports=COMMON_IMPORTS
)
# ======================================================
# MANAGER
# ======================================================
manager_agent = CodeAgent(
name="manager_agent",
description="Coordina todos los agentes.",
tools=[],
model=shared_model,
managed_agents=[
research_agent,
hypothesis_agent,
critic_agent,
strategy_agent
],
verbosity_level=1,
max_steps=6,
additional_authorized_imports=COMMON_IMPORTS
)
# ======================================================
# MAIN
# ======================================================
def run_multiagent_system(task):
final_task = f"""
OBJETIVO:
{task}
FLUJO:
1. Investigar evidencia y tendencias
2. Generar hip贸tesis estrat茅gicas
3. Evaluar riesgos y debilidades
4. Construir estrategia operativa
ENTREGA:
- Clara
- Ejecutiva
- Accionable
"""
result = manager_agent.run(final_task)
return str(result)