fix(toolset): 工具传递改为展开的 tools 列表,不再用 FunctionToolset 包装

前端/DB 仍用 toolset 做逻辑分组管理,但传给 pydantic-ai Agent 时
把 toolset 内的 callable 展开为 tools=[] 扁平列表,MCP server 等
需要 toolset 语义的单独走 toolsets=[] 参数。解决工具"存在但调不了"的问题。

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-06-05 19:05:59 +00:00
parent 78d03388c0
commit b15eeb9e74
8 changed files with 76 additions and 67 deletions
@@ -47,6 +47,7 @@ class RegulatoryNode:
global_state_machine: GlobalStateMachine,
provider_title: str,
model_id: str,
tools=None,
toolsets=None,
locale: str | None = None,
custom_system_prompt: str | None = None,
@@ -59,7 +60,8 @@ class RegulatoryNode:
global_state_machine: 全局状态机
provider_title: 供应商名
model_id: 模型id
toolsets: 已装配好的 FunctionToolset 列表
tools: 展开的 tool callable 列表
toolsets: MCP 等外部 toolset 列表
locale: 语言代码(zh/en),控制system prompt语言
custom_system_prompt: 管理员自定义追加提示词(可选)
Returns:
@@ -84,6 +86,7 @@ class RegulatoryNode:
system_prompt=system_prompt,
deps_type=RegulatoryNodeDeps,
agent_name="regulatory_node",
tools=tools,
toolsets=toolsets,
)