Skip to content

[Feature] 区分本地工具与模型供应商托管工具的执行归属 #247

Open

Description

@Aias00

目标与基线

当前 ToolCall 主要描述 id/name/arguments,独立 ReAct 需明确哪些工具由宿主执行,哪些由模型服务端执行。供应商返回的托管搜索等事件不能被当作待本地执行任务。

ARGI Core 76d44429fdaa6a69320e21a1cb77119d0889d792 / Extensions 495414b76a37aca4d7c1022d973a8e5b9a7e92e6;AgentScope Java 参考 7976a20d7c59f535737f2df1b16a2bc24051575a。本单来自源码/文档对照,是能力建设建议,不是已复现的生产 BUG 或已完成的功能。

参考:https://github.com/agentscope-ai/agentscope-java/blob/7976a20d7c59f535737f2df1b16a2bc24051575a/agentscope-core/src/main/java/io/agentscope/core/ReActAgent.java#L4744

建议阶段:优先论证执行边界,逐供应商支持。

范围与验收

  • 论证中立执行归属与供应商专有载荷的表达,区分本地工具调用、服务端已完成结果、服务端待续接;不要直接在 Core 暴露供应商 SDK 类型。
  • 适配器根据明确协议事实映射归属,模型普通文本或业务 metadata 不能自行声称某工具已授权/执行。
  • 服务端已有结果的调用不再本地执行;需要继续供应商回合时按其协议续接,缺能力明确拒绝,不能把未知工具归属静默降级。
  • 日志、事件、usage 和效果语义保留来源,托管工具不能被伪装成本地沙箱已约束的执行;配置中声明其能力及权限边界。
  • 覆盖同回合混合调用、已完成/待续接、重复结果、失败/取消和不支持适配器,用 stub 协议验证后再按实际供应商集成测试。

关联与实现边界

#125、#126、#196、#209、#236。优先基于真实适配需求扩展,避免通用 API 预设所有供应商特性。

复用已有定义、运行身份、日志、预算、授权及存储契约,不新建竞争的数据权威来源。独立 Agent/Workflow 不依赖 Graph/Loop;第三方协议、客户端 SDK 与外部后端留可选适配侧,Core 不导入 AgentScope SDK 或 Extensions。逻辑职责不自动对应新增 Maven 模块。先以模型无关/参考后端验证,再按范围给出真实服务或跨实例证据。破坏性变更需比较兼容方案,说明收益、消费者影响、目标版本与迁移/回滚;不因参考项目采用某设计而机械照搬。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions