【Harness Loop Engineering】工具调用层:Tool Use协议与执行沙箱设计
【Harness Loop Engineering】工具调用层:Tool Use协议与执行沙箱设计导读:没有工具的LLM只能聊天,有了工具才能行动。但在Agent拿到"双手"的同时,也握住了能够摧毁系统的"利刃"。本文将系统拆解Tool Use协议演进(Function Calling→MCP)、工具描述工程、三层隔离沙箱架构、超时与资源限制,并给出完整的工具调用管道实现,帮你构建既强大又安全的Agent工具调用层。一、引言:工具调用是Agent的"手"1.1 没有工具的LLM只能聊天大语言模型本质上是文本生成器——它能理解问题、推理方案,但无法真正"做"任何事。它不能读文件、不能执行命令、不能搜索网络、不能提交代码。没有工具的Agent,就像一个满腹经纶但四肢被束缚的专家,只能纸上谈兵。工具调用(Tool Use)赋予Agent行动能力。当Agent通过推理决定"我需要查看这个文件的内容"时,它不是在猜测文件内容,而是调用read_file工具真正读取文件。这种从"说"到"做"的跨越,是Agent区别于Chatbot的根本分界线。1.2 一个工具调用失败的案例2024年某AI编程助手曾发生过这样的安全事故:Agent在修复一个构建错误时,推理出需要清理编译缓存,于是执行了