← AI 术语表

AI 术语表 · 基础 · 智能体 · 语言模型

Function Calling

Function Calling(函数调用)是指 AI 模型为回答问题需要使用外部程序的功能(函数)时,按规定格式生成“请用哪些值执行哪个函数”的请求的功能。实际执行不由模型负责,而由使用该模型的应用负责。

关于这个术语
难度
基础 · AI 新闻中常见的技术术语
加入时间
2026-10-08
通俗解释 这类似于接到食客(用户)点单的服务员(模型)不亲自下厨,而是把规定格式的点菜单(函数调用)交给后厨,再把做好的菜端给食客。不过这个比喻没有体现出:服务员可能写错点菜单,所以后厨(应用)需要核对内容。

工作原理

开发者先告诉模型可以使用的函数列表。每个函数都附有说明,写明名称、功能和需要接收的值(参数)。用户提问后,模型判断是直接回答还是需要使用函数,必要时以 JSON 等规定格式输出函数名称和参数。应用按照这个请求实际执行函数,并把结果交回模型,模型再根据结果写出最终回答。

Function Calling 的一个循环用户提问 → LLM; 函数列表 → LLM(预先告知); LLM → 调用请求; 调用请求 → 应用执行; 应用执行 → 外部 API·数据库(查询); 应用执行 → LLM(结果); LLM → 最终回答用户提问函数列表名称·说明·参数LLM判断是否需要函数调用请求函数名称 + 参数应用执行外部 API·数据库最终回答预先告知查询结果
Function Calling 的一个循环 模型只生成函数调用请求,实际执行由应用负责。执行结果必须返回给模型,才能得出最终回答。

为什么重要

LLM 只根据学到的内容生成文本,因此无法自行得知今天的天气、公司数据库中的订单记录等外部最新信息,也无法执行发送邮件之类的操作。Function Calling 是把模型与这类外部系统连接起来的基本通道。由于模型以规定格式而非自由文本发出请求,程序可以稳定地读取并处理这些请求。AI 智能体轮流使用多种工具来完成工作,也是建立在这一功能之上的。

注意事项

关键在于模型并不直接执行函数,只生成执行请求。模型可能编造不存在的函数或填错参数,因此应用一侧需要检查格式和数值。对于会花钱或删除数据的函数,执行前让人工确认更安全。业界中它与“工具使用(Tool Use)”几乎同义,而 MCP 则是把这种工具连接方式标准化,供多个服务共同使用。

示例

如果向旅行 App 中的 AI 助手询问“告诉我下周六去釜山的火车”,模型不会编造答案,而是生成一个请求,要求带着出发地·目的地·日期的值调用“火车时刻表查询”函数。应用从实际的订票系统获取时刻表并交回模型后,模型把它整理成易读的句子展示给用户。主要的 LLM API 都默认提供这一功能,业务自动化聊天机器人和编程智能体也以同样的方式调用外部功能。

相关术语