



那么大模型是怎么实现 Function Call 的呢,其大概流程是这样的:
1. 用户输入;
2. LLM 开始生成回应,直到意识到需要工具调用时;
3. 暂停原有 Token 生成,开始生成函数调用的参数;
4. 外部系统截获函数参数,执行后返回结果;
5. LLM 基于返回结果和前文,继续生成完整回应。
为了方便更好的理解,我们基于 Claude 生成了一个演示动画。

有些时候,我们会发现 LLM 这个数字员工给出的结果是有幻觉的,本质就是上面三个部分存在问题。认知基座的缺陷会导致逻辑推理不合理,幻觉也会且总会来自于缺少外部信息的补充。
就像老板常常认为员工已经知道,但员工其实不知道一样,亦或者是员工知道的内容是过时的。这恰恰对应了我们认为模型已经知道,但模型实际上在预训练过程中缺少相关数据,以及模型知道的是在预训练时的旧知识,但到当下已经发生改变,比如物价等。
这里额外提到一个的来自特工的好朋友,清华系开源智能体框架 Eko,对 Function Call 的使用非常灵性。其大概原理是有一个规划层和执行层。规划层对整个任务进行规划,以 Function Call 的方式自动生成工作流,并反馈到执行层,而执行层则是一个个小的智能体,以 Function Call 的形式执行具体任务。
而作为推理模型的 R1 若在 Function Call 的能力稳定后,相信其能在类似框架下展现非常强的能力!

业内都说 2025 都是 AI Agent 元年,而 Deepseek R1 的爆火又为这 2025 年的 AI 开了好头。根据经典 Agent 公式可以明确的是,工具调用是 Agent 的基石。


而字节率先将 DeepSeek 支持了 Function Call。现在,模型会自己思考判断是否该调用插件,该调用哪个插件。
比如我在这里添加了联网搜索插件,但提出了一个无需调用该插件的问题,于是模型在思考过程中判断出无需调用,给出了回复。










原创文章,作者:特工宇宙,如若转载,请注明出处:https://www.agent-universe.cn/2025/02/43329.html