是的,理解正确!在 **Function Calling** 和 **GPT Actions** 中,"tools" 的确有所不同:
1. **Function Calling**:
- **工具**:这里的 "tools"(函数)通常是我们自己在本地定义的函数。模型会根据定义生成参数,但实际的函数调用和执行是由你自己的代码负责的。
- **用例**:适用于需要模型与自定义逻辑、数据库或应用的本地函数交互的场景,例如查询内部数据、执行本地运算等。
- **实现方式**:模型只是根据 JSON Schema 提供参数,生成函数调用的细节。真正的执行权由你的应用来控制。
1. **GPT Actions**:
- **工具**:在 GPT Actions 中,"tools" 通常指的是公开的 API 接口或第三方服务。GPT Actions 会自动调用这些 API,并将结果反馈给用户。
- **用例**:适用于访问在线服务、查询外部系统数据或执行操作的场景,例如查询天气、调取金融数据、创建第三方系统中的记录等。
- **实现方式**:GPT Actions 会自动生成 API 请求的 JSON 参数并执行 API 调用,把复杂的 API 调用细节对用户隐藏。
**总结**
- **Function Calling** 适合调用**本地自定义函数**,用于访问内部逻辑或资源,**由应用负责实际执行**。
- **GPT Actions** 适合调用**外部公开的接口**,直接**执行并返回外部数据**,无需用户处理 API 细节。