PATH 01/LESSON 09/18 分钟
工具调用与确认边界
区分读取、写入、外部副作用与不可逆操作。
课程全目录 · 选择章节
本课学习目标
- • 读取 — 通常可以自动执行
- • 草稿 — 可预览、未提交
- • 写入 — 需要范围说明
- • 不可逆 — 必须明确确认
完成路径
阅读概念与案例 → 完成动手任务 → 勾选实践检查 → 回答检查点 → 保存完成记录。练习由你自行检查,不会假装成自动代码评分。
01 / 核心概念
工具把语言模型的输出变成真实世界中的动作。风险不取决于工具名称,而取决于动作影响范围、可逆性和用户预期。
确认应该成为工作流中的显式状态,而不是一句临时追加的提示词。
02 / 心智模型
读取
通常可以自动执行
草稿
可预览、未提交
写入
需要范围说明
不可逆
必须明确确认
03 / 代码骨架
TYPESCRIPT / CONCEPT
if (tool.impact === "external" || !tool.reversible) {
return { status: "awaiting_confirmation", preview: tool.args };
}
return execute(tool);这是解释结构的代码骨架,外部函数与数据需要在实际项目中实现。
04 / 贯穿案例
放进真实情境里看
助手准备把整理好的故障摘要发到团队频道。生成摘要只是草稿;点击发送会通知真实的人,属于另一个风险等级。
- 01
按影响给动作分级
把读取、私有草稿、内部写入、对外发布分开。判断依据是实际副作用,而不是工具函数名。
- 02
冻结待确认内容
审批卡片展示目标频道、消息全文与预计影响;确认后执行的应是同一份内容,不应悄悄重新生成。
- 03
处理拒绝和过期
拒绝后回到可编辑草稿;审批等待过久应失效,避免旧确认在上下文变化后仍触发动作。
05 / 动手做
用自己的产物检验理解
设计一张“发送摘要”确认卡:列出必须展示的字段、确认按钮的效果,以及拒绝后回到哪个状态。
完成时检查
- 用户能看见目标和最终内容
- 拒绝不会调用发送工具
- 重复确认不会发送两次
自动保存在当前浏览器,不会同步到账户。
06 / 检查点