agent.py 1006 B

12345678910111213141516171819202122232425262728293031323334353637
  1. """
  2. find_agent 工厂 — 组装 Agent 实例。
  3. 每个业务 Agent 都应提供 create_xxx_agent() 工厂函数,
  4. 统一注册本 Agent 的工具 + 共享基础设施工具。
  5. """
  6. from __future__ import annotations
  7. from pathlib import Path
  8. from supply_agent import Agent
  9. from supply_agent.config import Settings
  10. from agents.find_agent.tools import register_all_tools
  11. _PROMPT_PATH = Path(__file__).parent / "prompt" / "system_prompt.md"
  12. FIND_AGENT_SYSTEM_PROMPT = _PROMPT_PATH.read_text(encoding="utf-8")
  13. def create_find_agent(
  14. settings: Settings | None = None,
  15. *,
  16. model: str | None = None,
  17. ) -> Agent:
  18. """创建 find_agent 实例,注册所有相关工具。"""
  19. agent = Agent(
  20. settings=settings,
  21. name="find_agent",
  22. model=model or "google/gemini-3-flash-preview",
  23. system_prompt=FIND_AGENT_SYSTEM_PROMPT,
  24. max_iterations=60,
  25. temperature=0.2,
  26. )
  27. # 本 Agent 专属工具
  28. register_all_tools(agent.tools)
  29. return agent