LangChain 的 Tool 类(包括 BaseTool 和 StructuredTool)通过 参数校验、输入解析、函数调用 的流程,将外部函数与 Agent 的逻辑对接。以下是其内部逻辑的详细解析:
1. 工具与函数对接的核心机制
(1) 工具的定义方式
LangChain 提供了两种主要方式定义工具:
- 继承
BaseTool:手动实现_run方法。 - 使用
StructuredTool或装饰器:通过函数类型注解自动生成参数校验。
(2) 参数校验的核心:args_schema
无论是哪种方式,工具的参数校验均依赖 args_schema 属性,它通常是一个 Pydantic 模型,定义了参数的类型、名称和验证规则。
2. 具体对接流程
步骤 1:定义参数校验模型
通过 Pydantic 定义参数结构,确保输入参数的类型和格式正确。
from pydantic import BaseModel, Field
class MultiplyInput(BaseModel):
a: float
![STM32单片机入门学习——第40节: [11-5] 硬件SPI读写W25Q64](https://i-blog.csdnimg.cn/direct/a8d908602f5a417ba564991076396886.png)
















