文章目录
- 1 Tools简介
-
- 1.1 工具调用的方式
-
- 1.1.1 方式1:直接调用(测试)
- 1.1.2 方式2:绑定到模型(主流)
- 1.2 工具调用的整体流程
- 1.3 从Message流转看工具的调用
-
- 1.3.1 初始化模型(前提)
- 1.3.2 不使用@tool修饰
- 1.3.3 使用@tool修饰
- 1.3.4 图示(以不使用@tool为例)
- 1.4 工具调用流程总结
- 2 工具的定义方式1:不使用@tool
-
- 2.1 模型绑定工具并发送请求
- 2.2 工具描述的各部分详解
-
- 2.2.1 了解convert_to_openai_tool
- 2.2.2 description说明
- 2.2.3 传参说明简介
- 2.2.4 传参类型简介
- 2.2.5 传参默认值简介
步骤1:模型绑定工具,步骤2:模型生成工具调用请求,步骤3:开发者手动执行工具,步骤4:将工具执行结果ToolMessage传递给模型生成最终结果。不使用@tool修饰的函数,需要手动拼接ToolMessage。Agent通过工具的这些注释docstring(遵循Google风格)来理解工具的用途和调用时机,因此清晰、准确的文档字符串是工具能被正确调用的前提。
1 Tools简介
要构建更强大的AI工程应用,只有生成文本这样的“ 纸上谈兵 ”能力自然是不够的。 借助工具,大模型才能从“ 认识世界 ”走向“ 改变世界 ”。 工具是构建智能体的核心要素之一。
工具是赋予大语言模型与外部世界交互能力 的关键组件,从而能让智能体执行搜索、计算、数据库查询、邮件发送或调用第三方API等,进而构建功能强大的AI应用。 
1.1 工具调用的方式
在LangChain中,工具(Tools)实际上是指明确定义了输入和输出的可调用函数 。因此, 工具调用(Tool Calling))也被称为函数调用(Function Calling) 。 具体有两种调用方式:





