什么是Function Call?

首先,没有Function Call是什么样的?

只能在system prompt里面用自然语言去描述工具,但是大模型是不可控的

它可能回答的参数顺序颠倒,编造天气,或返回JSON格式不对等等

传统的system prompt完全靠大模型去猜,猜是否调用工具,猜返回格式

开发者就需要从五花八门的回答里面解析出正确的工具名和参数,这很复杂


Function Call的本质,是一套大模型和agent之间的标准化工具调用协议

用固定的格式定义好工具

需要调用工具时大模型返回固定的JSON格式的调用指令

那么Tool和Function Call有什么关系呢?

Tool是工具的能力实体,有函数本体,名称,描述,参数的定义

Function Call是调用机制(通信规范),必须通过Function Call去调用tool


Function Call的三部分核心结构

1. 工具定义

name:工具的唯一标识,通过name调用函数本体

description:工具说明,判断要不要调用这个工具的核心依据

parameters:需要什么参数,参数的类型,格式

required:必填参数

  1. AI调用格式(Function Call)

大模型需要调用工具时,会严格返回固定格式的JSON,Agent直接解析这个结构,拿到工具名和参数。

function_call是固定字段,告诉Agent这是一条工具调用指令。Agent会找到check_weather函数,将city和data作为参数传递进去

3. 工具返回结果(Tool Response)

把工具的执行结果,按规范格式回传给大模型。大模型收到结果,决定是否再次调用工具,或者回答用户问题

相关推荐
不好听6134 分钟前
父—子代理为什么要上下文隔离——Sub-Agents
agent
sarasuki27 分钟前
工具设计的坏味道:什么样的定义会让模型乱调
人工智能·agent·设计
产品设计大观32 分钟前
墨刀AI客户端怎么干活?派任务、本地执行、交付PRD和原型
agent·原型·墨刀·prd·ai工作台·墨刀ai客户端·产研
用户31346721435432 分钟前
Agent 开发学习笔记(七):RAG: 从建库到检索到生成
langchain·agent
掘金泥石流1 小时前
从 Palantir AI FDE 到我们的实践:企业交付如何变成产品?
人工智能·架构·agent
wangruofeng1 小时前
从一个 10 万星 AI Agent 项目里,能学到什么真正的软件工程
github·agent·ai编程
掘金泥石流1 小时前
上下文即服务:AI 应用的竞争,为什么会从入口转向 Context?
人工智能·架构·agent
ikun_文1 小时前
LangChina-创建第一个Agent
langchain·agent
掘金泥石流1 小时前
AI 都能写代码了,为什么企业还需要 FDE?
人工智能·架构·agent
4SAPI2 小时前
大模型 API 聚合平台选型指南:企业与个人用户的接入架构、稳定性与成本评估
人工智能·php·agent