在 REPL 中组合工具调用
REPL as Tool Composition
在编程层明确连接工具的输入和输出,组合已知的调用。
以下示例与示意结果由本站编写,用于说明方法,不是模型实测结果。
使用场景
你要读取两份允许的日志再总结,教学读取接口返回 ok/text/path或ok=false/error,传输也可能reject。Promise成功返回不一定表示业务读取成功,组合层必须检查两种失败。
具体做法
只用当前文档支持的API组织数据流,独立读取可并行,收齐settled结果后逐项检查传输状态及业务错误。保留路径与实际日志,失败项另记录;摘要只使用已观察数据,依赖后续步骤顺序执行。不让一个循环吞异常或因一个拒绝就漏掉其他结果。
反例
调用未注册便捷API,使用Promise.all遇到一个错误就丢弃其余结果;fulfilled对象含业务error也当日志摘要。
改进写法
按教学已核实readLog(path)接口读取logs/a.log与logs/b.log,使用Promise.allSettled收齐。逐项检查rejected,以及fulfilled值中的ok=false;成功的text连同path交摘要,失败列原因和未读范围。只有收集检查完才执行依赖步骤,不编造日志或调用实际宿主没有的readLog。
为什么这样改
编程层把等待、分支和错误传播写成可检查数据流。检查fulfilled内部状态尤其重要,否则“工具返回了对象”会被误当任务成功;分离失败又保留其他有效数据。
如何验证
教学A成功/B拒绝应保留A并列B传输失败;B fulfilled但ok=false时标读取失败,不把error字段当内容。最终两路径都有处置。
检查没有摘要未读日志或隐藏错误,组合代码实际API与范围已核对。本篇不读取真实日志。
适用边界
工具信封和业务错误形状依宿主而异,先读接口,不通用假设字段。REPL也有权限、生命周期和输出边界;编排代码不会自动合法化并发写入,原文未确认。
原文与版本
暂未找到可链接的原文。本文示例由本站编写,用来说明方法。
如何收录这些方法