【Agent智能体13 | 工具使用-什么是工具?】 声明本篇博客是以吴恩达的【Agent智能体】教程为基础并对其中的内容做了笔记整理以及个人收获的总结。前面已经介绍完反思设计模式的所有内容了从这篇开始要介绍智能体设计模式中的工具使用这篇主要是介绍一下工具的概念。首先要明确让大模型具体选择和使用工具调用函数的能力就像我们人类一样可以使用很多工具实现更多功能为什么需要工具通过这幅图的对比我们可以看到工具可以让大模型有更强大的功能。没有工具的 LLM上方的流程传统的 LLM 其知识储备截止于训练完成的那一刻且无法直接感知现实世界的实时状态。因此当用户询问“现在几点了”What time is it?时模型只能基于其固有的限制回答“抱歉我无法获取当前时间。”外部工具的引入右侧代码图中展示了一段简单的 Python 代码get_current_time()。这是一个可以获取系统当前真实时间的“工具”。拥有工具的 LLM下方的流程赋予 LLM 访问该工具的能力后面对同样的问题LLM 就可以给出准确的答案“现在是下午 3:20。”It’s 3:20pm.下面简单展示一下简单的工具执行操作这个图揭示了 LLM 内部是如何处理工具调用的调用工具的完整流程上方的流程用户输入提示语用户询问“现在几点了”。LLM查看可用的工具集LLM 接收到问题检查自己拥有的工具箱Tools发现里面有一个get_current_time工具。LLM决定调用哪个工具LLM 意识到要回答这个问题必须使用该工具于是触发工具调用。工具会反馈给大模型工具执行并返回原始结果例如图中的15:20:45。大模型会输出最终结果LLM 接收这个时间数据将其转化为自然语言“It’s 3:20pm.”并输出给用户。工具使用的一个重要方面是可以让大模型自主决定是否使用这些工具中的任何一个自主决策按需选择工具的流程下方的流程用户询问“绿茶里有多少咖啡因”。LLM 同样检查工具箱里面依然只有get_current_time。关键LLM 能够理解语境它判断出“获取当前时间”这个工具对于回答“咖啡因含量”毫无帮助。因此LLM 选择不调用任何工具而是直接利用自己预训练的内部知识库给出答案“绿茶通常每杯含有 25-50 毫克咖啡因…”。工具调用的具体示例 (Examples)场景一网络搜索 (Web Search)用户想找加州山景城附近的意大利餐厅。LLM 动作识别出需要搜索信息调用web_search工具并准确地将用户的话提炼为搜索关键字参数queryrestaurants near Mountain View, CA。场景二数据库查询 (Database Query)用户让我看看买了白色太阳镜的客户。LLM 动作识别出这是一个数据检索需求调用query_database工具并像程序员一样提取出关键字段表名 (tablesales)、产品 (productsunglasses)、颜色 (colorwhite)。场景三数学计算 (Math Calculation)用户存500美元利息5%10年后有多少钱LLM 动作LLM 知道自己直接做复杂数学题容易出错于是调用专用的计算工具。它不仅能调用像interest_calc这样预设好参数的函数甚至能直接写出数学表达式并使用eval工具执行计算500 ∗ ( 1 0.05 ) 10 500 * (1 0.05)^{10}500∗(10.05)10。结论LLM 具备强大的意图识别与参数提取能力。它不仅知道“该用什么工具”还能从口语化的提问中抓取工具运行所需的格式化数据。上面都是单个工具的例子但是很多场景下我们希望为大模型提供多个工具或函数具体例子如下多工具的组合与链式调用 (Multiple tools)当一个任务无法用单一工具完成时LLM 可以按逻辑顺序调用多个工具。复杂任务拆解用户下达了一个复合指令“在我的日历上找一个周四的空闲时间并和 Alice 预约一个会议。”步骤 1收集信息 (调用第一个工具)LLM 接收到指令后评估工具箱包含预约、查日历、删除预约。它判断出第一步必须先知道有哪些时间是空闲的。因此它触发了check_calendar检查日历工具。工具返回了结果周四下午 3pm, 4pm, 6pm 有空。步骤 2执行动作 (调用第二个工具)LLM 接收到了空闲时间数据。现在它进入任务的第二阶段创建会议。它再次调用工具这次选择了make_appointment创建预约并智能地从上一步的时间列表中挑了一个例如 3pm作为参数传给该工具执行。工具返回结果“会议创建成功”。步骤 3最终反馈LLM 将所有操作的结果汇总用自然语言向用户报告“您的预约已设定在周四下午 3 点与 Alice 进行。”通过上面的单个工具调用以及多个工具调用的例子我们不难发现工具对于LLM来说是很重要的能提供给LLM更强大的外部感知能力如果这篇文章对你有帮助欢迎点赞、评论、关注、收藏。你们的支持是我前进的动力