工具调用是模型生成的结构化文本,其中指定要调用的工具及其参数。它本身不会执行任何操作,必须由运行框架读取并执行。每次工具调用由模型在一次模型提供商请求中生成。
一次工具调用的生命周期如下:
工具调用与其他模型输出一样,通过下一 Token 预测生成,因此也可能以同样方式出错:路径不存在、命令根本没有某个选项,或参数看似合理却并不正确。运行框架执行的是实际写出的内容,而不是模型原本“想表达”的意图——路径拼错时,未必会优雅地报错,也可能直接编辑错误文件。
用法:
“它说自己运行了测试,但文件时间戳完全没有变化。”
“检查对话记录——它真的生成了工具调用,还是只描述了‘运行测试’?模型只负责产生调用;如果运行框架没有执行,就什么也没发生。”