Replies: 4 comments
|
后续 lifecycle 专题已展开:Tool lifecycle across compaction:动态工具如何跨越上下文压缩与 Session 恢复? #311。它把 Runtime 权威能力状态、Compaction Summary、Provider-native deferred load point 和新的 cache epoch 分开讨论,并给出同进程压缩、Session 恢复、Provider 切换与权限收缩的可证伪实验。 |
2026-08-30 补充:把“发现/授权”与“工具定义如何进入上下文”拆成两条轴前面的候选方案把两个问题混在了一起:
这两个选择可以正交组合。Explicit Intent 不等于一定修改顶层 tools;Adaptive Discovery 也不等于一定绕开缓存。 结合当前 Pi 0.84.1、OpenPI 实现与 Provider 文档,补几条边界:
问题归档: 当前不据此改变默认策略。下一步应先补可复核实验,再讨论“常用前置、冷门渐进”或 adaptive 是否成为默认。 |
开放问题:模型厂商已经优化 Function Call,工具选择成本还重要吗?群聊中提出了一个很好的反问:LLM 厂商普遍针对 Function Call / Tool Use 做过训练,工具即使位于前缀,模型是否已经能很好处理,所谓“注意力干扰”会不会被夸大? 暂定答案只能是:优化会改变成本曲线,但不能推出成本为零。 需要分开验证:
最小对照应固定同一 Provider/model snapshot、任务与工具集合,改变:
同时测 Tool Call 选择与参数正确率、task success、input/cache usage、turn、wall 和 cost。相关证据标准统一进入 #313。 在完成这组对照前,既不能说“工具多必然干扰模型”,也不能说“厂商优化过,所以几十个工具几乎没有代价”。 |
Function Call 训练优化:官方合同能把问题再收紧一步核对官方资料后,可以确认两层不同结论: Source facts
Evidence boundary
因此双方极端说法都不成立:不能只凭“厂商优化过”宣称几十个工具几乎无代价,也不能把某个 Provider 的经验阈值写成普遍模型定律。 |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
这是 OpenPI 产品哲学总纲 #299 的第一个专题。
问题不是“工具越少越好”或“缓存后工具就免费”,而是:在不同模型、Provider、Session 长度和任务分布下,怎样让一项能力产生的价值覆盖它的完整成本?
先统一 Function Call / Tool 的含义
模型输出的是调用意图,真正执行函数的是 Runtime。
一项 Tool 的成本至少包括:
Prompt Cache 主要降低稳定前缀的重复处理成本。它不等于免费,也不会自动消除上下文占用、工具选择干扰、额外往返或长 Tool Result。
还必须把三个指标分开:
Prompt Cache 也不是 OpenPI Session-owned 状态。新 Session 首请求可能复用相同隔离域、模型、TTL 和前缀下的已有 cache;同一长 Session 也可能因 TTL、路由、Compaction 或 prefix 变化而 miss。必须看 Provider-reported usage,不能用“第几轮”推断命中。
两条正交轴
发现与授权
Discovery 和 Authority 的完整讨论见 #312。
Provider 序列化
Pi 0.84.1 只有在 Tool 执行期间发生纯追加
setActiveTools()时,才通过addedToolNames走 native path。before_agent_start直载、tool removal/replacement 会使用普通 active-tool projection;激活同时改变 system prompt snippet/guidelines 时,即使 Schema 可 deferred,旧 prefix 也可能变化。OpenPI 当前默认
explicit,adaptive是用户显式 opt-in。能力组集合尽量单调;但 Background、Tasks、Goal 等生命周期工具仍可能出现或消失,不能把“能力组已加载”理解成顶层工具面永久不变。摊销模型
下面的 first write / later read 指某个精确 Provider、API、模型、隔离域、TTL、路由和可匹配 prefix 下的 cache 生命周期,不对应 OpenPI Session 的首轮/后续轮次。
假设某能力组 Tool Definition 大小为
S,到第K个 turn 才第一次需要它:S,是否按 read/write/fresh 处理取决于实际 cache;S,但第 K 轮可能让截至 K 的失配历史H(K)重新处理或重新写 cache;顶层变更的激活成本更接近:
因此:
“常用工具全量、低频工具渐进”是合理假设,但常用应由真实采用率和净收益定义,不能只根据功能听起来重要。
当前证据
仍然不知道什么
建议的决策标准
在改变默认策略前,至少需要同时测量:
本专题不预设必须保留当前默认。当前暂定方向是:
欢迎提供固定模型、固定任务、固定 Provider、可回放 usage 的反例或数据。请把 Observation、Correlation、Verified Cause 分开陈述。
All reactions