核心结论(TL;DR)
🥇 异步 FC 商用化:Gemini Live API 语义最精细
Gemini Live API 的 NON_BLOCKING 行为 + scheduling 三档中断调度(INTERRUPT / WHEN_IDLE / SILENT)是目前商用 API 中对"结果注入时机"控制粒度最细的实现,最接近 AsyncLM 论文的中断语义。
🥈 gpt-realtime:语音异步 FC 体验标杆
OpenAI gpt-realtime(2025-08 GA)实现"长耗时函数不打断会话流",模型在等待工具结果时继续自然对话,并原生支持远程 MCP 服务器与 SIP 电话接入,产品化完成度最高。
🥉 千问:覆盖面最广,异步语义最保守
Qwen 系列 FC 覆盖文本 / VL / Omni / Omni-Realtime / Audio-Realtime 全线(含开源自部署),语音端到端 FC 已可"不打断对话流";但并行调用需显式开启 parallel_tool_calls,且无公开的中断调度 API。
一、文本模型 Function Call 能力总表
对比维度覆盖用户要求的调用模式、并发能力、中断机制、延迟优化与推理策略。
| 对比维度 | 千问 Qwen 系列 | GPT / OpenAI 系列 | Gemini / Google 系列 |
|---|---|---|---|
| 首次官方支持 FC | 2023 下半年(早期经 Qwen-Agent ReAct 提示实现;DashScope 后提供原生 tools 协议)(早期时间点官方未单独公告,标注为约数) | 2023-06-13(gpt-4-0613 / gpt-3.5-turbo-0613,业界首个原生 FC API) | 2023-12(Gemini 1.0 Pro 随 API 发布支持 FC) |
| 当前支持模型 | 商用:qwen-max / qwen-plus / qwen-turbo / qwen-flash 及 qwen3.6-plus 等新版;开源:Qwen3.5 / Qwen3 / Qwen2.5 系列;多模态:Qwen3-VL、Qwen3.5-Omni GA | GPT-3.5-Turbo†、GPT-4†、GPT-4 Turbo†、GPT-4o、GPT-4.1、o 系列及后续(†早期版本已陆续退役)GA | Gemini 2.5 Pro / Flash 等现役全系(Gemini Ultra 未开放 FC API 即退役;Pro 1.0→2.5 持续支持)GA |
| 并行 Function Calls | 支持,默认关闭:需显式设置 parallel_tool_calls=true,否则多任务只返回 1 个调用(阿里云官方文档明确) |
支持,默认开启:2023-11 DevDay 随 gpt-4-1106 / gpt-3.5-turbo-1106 推出,可用 parallel_tool_calls=false 关闭 |
支持:并行 FC + 独有的组合式 FC(compositional,自动串联依赖调用),Gemini 2.0 起完整支持 |
| 调用模式控制 | tool_choice:auto / 指定函数 / none |
tool_choice:auto / required / 指定函数 / none;另有 Structured Outputs strict:true(2024-08)保证参数 100% 符合 Schema |
tool_config.mode:AUTO / ANY(强制调用)/ NONE;Python SDK 提供自动函数执行(SDK 代为执行并回传) |
| 流式参数输出 | 支持(OpenAI 兼容 delta 流式) | 支持(tool_calls delta 增量事件,可做提前派发) |
支持(streamGenerateContent) |
| 异步 FC / 中断注入(文本 API) | 无·同步循环;Qwen3 思考模式可与 FC 结合(近似交错思考,需推理框架配合)框架层 | 无·文本 Chat/Responses API 为同步循环(异步能力在 Realtime 语音接口,见下表) | 无·文本 API 为同步循环(异步能力在 Live API,见下表) |
| 推理策略适配(ReAct 等) | Qwen-Agent 框架原生 ReAct;开源模型经 vLLM --tool-call-parser hermes 自部署 FC;Hermes 格式模板 |
原生 FC 即"内化的 ReAct"(判断→调用→观察→再判断);Agents SDK / Responses API 提供内置工具编排 | 组合式 FC 将多步 ReAct 链压缩进单轮自动执行;ADK(Agent Development Kit)提供编排 |
| MCP 生态 | 支持(百炼平台 MCP 市场 + Qwen-Agent MCP 客户端) | 支持(Responses API / Realtime API 远程 MCP,2025) | 支持(Gemini API SDK 内建 MCP 支持) |
二、三大系列详细分析
1️⃣ 千问 Qwen 系列 阿里云百炼 / DashScope + 开源双轨
- 商用闭源线:qwen-max、qwen-plus、qwen-turbo、qwen-flash 全部支持 FC,通过 OpenAI 兼容接口或 DashScope 原生接口调用;
parallel_tool_calls需显式开启是与 OpenAI 的最大差异(官方文档说明:默认多任务仅返回首个调用)。 - 开源自部署线:Qwen2.5 / Qwen3 / Qwen3.5 开源系列均具备 FC 能力,官方推荐 vLLM 部署时加
--enable-auto-tool-choice --tool-call-parser hermes,即可获得 OpenAI 兼容的工具调用端点——这是三家中唯一可完全私有化的 FC 方案。 - 思考+工具:Qwen3 起支持思考模式(
enable_thinking)与 FC 共存,配合 vLLM 的 interleaved thinking 支持可实现"思考→调用→结果→再思考"的交错模式(框架层能力,非 API 原生异步)。 - 注意:开源 Qwen2.5-Omni 不支持 FC(官方 GitHub issue #33 确认);语音场景 FC 需使用商用 Omni-Realtime / Audio-Realtime 系列(见语音表)。
2️⃣ GPT / OpenAI 系列 FC 概念的定义者,事实标准
- 时间线:2023-06 首创原生 FC(gpt-4-0613 / gpt-3.5-turbo-0613)→ 2023-11 并行工具调用(gpt-4-1106-preview,即 GPT-4 Turbo 首版)→ 2024-08 Structured Outputs
strict模式(约束解码保证 JSON 100% 合法)→ 2024-10 Realtime API Beta → 2025-08 gpt-realtime GA(异步 FC)。 - GPT-3.5 / GPT-4 / GPT-4 Turbo 现状:均支持 FC,但 GPT-4 仅支持串行 FC(不支持 parallel),并行能力从 GPT-4 Turbo(1106)开始;这些早期模型已陆续进入退役周期,新项目官方建议使用 GPT-4o 及后续模型。
- 精度保证:
strict:true下用约束解码把参数生成限制在 JSON Schema 语法内,是三家中最早提供"格式 100% 合法"承诺的。 - 工具生态:Responses API 内置 web search / file search / code interpreter 等托管工具 + 远程 MCP,FC 与内置工具可混用。
3️⃣ Gemini / Google 系列 组合式调用 + 最细异步调度语义
- 时间线:2023-12 Gemini 1.0 Pro API 支持 FC → 2024-12 Gemini 2.0 引入并行 FC + 组合式 FC + Live API → 2025 Live API 加入
NON_BLOCKING异步 FC 与scheduling调度 → 现役 Gemini 2.5 全系 GA。 - 组合式 FC(Compositional):独有能力——模型可在一次响应过程中自动把"函数 A 的输出作为函数 B 的输入"串联执行(配合 SDK 自动执行),等价于把 LLMCompiler 式 DAG 编排内化进模型,减少多轮往返。
- 模式控制:
tool_config的 ANY 模式可强制模型必须调用工具(并可限定候选函数白名单),适合确定性流程。 - Gemini Ultra 说明:Ultra 1.0(2024-02)主要面向 Gemini Advanced 订阅,未成为 FC API 主力即被 1.5/2.x Pro 取代,故 FC 对比以 Pro / Flash 线为准。
三、调用模式:同步 vs 异步(含学术前沿定位)
按"异步程度"分层,标注每层在三大系列中的落地位置与成熟度。
| 层次 | 机制 | Qwen | GPT/OpenAI | Gemini | 成熟度 |
|---|---|---|---|---|---|
| L1 并行调用 | 单轮返回多个 tool_call,客户端并发执行 | ✔ 需开启 | ✔ 默认(2023-11 起) | ✔(2.0 起) | GA |
| L2 依赖编排 | DAG 规划、依赖调用自动串联 | ✘ 需外接框架(Qwen-Agent) | ✘ 需外接框架(LLMCompiler 等) | ✔ 组合式 FC 原生内化 | GA(Gemini) |
| L3 流式/提前派发 | 参数 delta 流式输出,增量解析提前执行 | ✔ delta 事件 | ✔ delta 事件 | ✔ 流式接口 | 客户端自行实现 |
| L4 会话级异步 + 结果注入 | 调用不阻塞会话流,结果完成后异步注入,可控注入时机 | ✔ 仅语音线(Omni-Realtime,不打断对话流) | ✔ 仅语音线(gpt-realtime,边聊边等结果) | ✔ 语音线最完整(NON_BLOCKING + 三档 scheduling) | GA(语音接口) |
| L5 解码流 token 级中断 | AsyncLM:[CALL] 不停机 + [INTR] 中断注入解码流 | ✘ | ✘ | ✘ | 学术(arXiv 2412.07017) |
| L5' 交错思考 | thinking ↔ tool 细粒度交替,保留推理链 | ✔ Qwen3+框架层(vLLM interleaved thinking) | ✔ o 系列推理+工具(Responses API 保留推理项) | ✔ thinking 模型+FC(2.5 系列 thought signatures) | 逐步 GA 中 |
INTERRUPT(立刻打断模型当前语音输出播报结果)/ WHEN_IDLE(等模型说完再播报)/ SILENT(静默入上下文,不主动播报)——这是"结果注入时机"的会话级中断控制。
四、语音大模型 Function Call 支持程度对比表(重点)
对比对象为三家的端到端语音实时接口(Speech-to-Speech),这是异步 FC 真正商用落地的战场。
| 对比维度 | OpenAI Realtime API gpt-realtime / gpt-4o-realtime |
Google Gemini Live API 2.5 Flash Native Audio 等 |
千问 Omni/Audio Realtime Qwen3.5-Omni-Realtime / Qwen-Audio-3.0-Realtime |
|---|---|---|---|
| 架构 | 端到端 S2S(语音进语音出,无级联 ASR/TTS) | 端到端 S2S(Native Audio)+ 半级联可选 | 端到端 S2S(Omni 全模态) |
| FC 支持 | ✔ 完整 tools 协议,语音中直接触发 GA 2025-08(Beta 自 2024-10) | ✔ 与普通生成同构的 FC + 内置 Google 搜索/代码执行工具 GA | ✔ DashScope SDK / WebSocket 原生协议 GA(Omni-Realtime 自主工具调用见阿里云产品公告,公告未标注发布日期) |
| 异步 FC(不阻塞会话) | ✔ gpt-realtime 起长耗时函数不打断会话流,模型边等边聊(官方博客明确) | ✔ behavior: NON_BLOCKING 声明异步;企业版 Live API 默认全部非阻塞 |
✔ 官方公告"全程无需打断对话流";但无公开的注入时机控制参数 |
| 中断/结果注入调度 | 部分:结果经 function_call_output 事件异步注入,注入后需客户端触发 response.create 才播报(社区多帖验证),无时机档位 |
最精细:scheduling 三档——INTERRUPT(立刻打断播报)/ WHEN_IDLE(说完再播)/ SILENT(静默入上下文) |
未公开:结果回传后由模型自行衔接,无调度参数 |
| 用户打断(barge-in)与 FC 竞态 | ✔ 服务端 VAD 自动截断;FC 与语音播报竞态需客户端处理(社区已知坑:函数立即执行可能打断未说完的话) | ✔ 原生打断处理;SILENT 档位在打断场景仍有社区反馈的边缘问题 | ✔ 支持打断(VAD);FC 竞态细节文档披露较少 |
| 流式参数事件 | ✔ function_call_arguments.delta / .done |
✔ toolCall 消息(BidiGenerateContent) | ✔ WebSocket 事件流 |
| MCP / 扩展 | ✔ 远程 MCP 服务器 + SIP 电话接入 + 图像输入 | ✔ 内置工具(搜索/代码执行)可与 FC 混用 | ✔ 百炼 MCP 生态;可指挥其他 Agent |
| 开源可自部署 | ✘ | ✘ | 部分:开源 Qwen2.5-Omni 无 FC(issue #33),语音 FC 仅商用 API |
| 技术成熟度综合 | ⭐⭐⭐⭐⭐ 产品化最成熟,生态最大 | ⭐⭐⭐⭐⭐ 异步语义设计最先进 | ⭐⭐⭐⭐ 快速追赶,公告新、文档细节较少 |
五、ASR / TTS 与 Function Call 的关系澄清
ASR 本身不做 FC
纯语音识别模型(Whisper、Paraformer、SenseVoice 等)只输出文本,不具备也不需要 FC 能力。级联架构(ASR→LLM→TTS)中,FC 完全发生在中间的 LLM 层;ASR 对 FC 的贡献是流式出字快慢——它决定 LLM 能多早开始决策调用,影响端到端延迟。
TTS 的角色:播报与打断的执行端
TTS(CosyVoice、ElevenLabs 等)在 FC 过程中的"中断处理"是工程层能力:收到新的播报指令或用户 barge-in 时立刻停流。级联方案里"函数执行中先说一句『正在查询』"的过渡话术,就是编排层驱动 TTS 实现的,模型本身无感。
端到端 vs 级联:FC 支持的分水岭
端到端 S2S 模型(上表三家)把 FC 决策融进语音流,才有"边说边调"的原生异步;级联方案的 FC 能力=所选 LLM 的能力,异步体验靠编排框架(Pipecat、LiveKit Agents 等)拼装。选型建议:低延迟语音 Agent 优先端到端接口。
六、性能指标对比
| 指标 | 数值 | 对比基线 | 出处 / 性质 |
|---|---|---|---|
| AsyncLM 任务完成延迟降低 | 1.6× – 5.4× | 同步 FC 循环 | arXiv 2412.07017 学术 |
| LLMCompiler 并行编排提速 | 最高 3.7× 延迟 / 6.7× 成本降低 / +9% 准确率 | ReAct 串行 | arXiv 2312.04511,ICML 2024 学术 |
| 并行 FC vs 串行(N 个独立调用) | 理论上限 ≈ N× 往返轮次缩减(N 调用 1 轮 vs N 轮) | 逐个串行调用 | 机制推导,三家并行 FC 通用 原理 |
| 语音异步 FC 体验收益 | 消除"死寂等待"(长耗时工具期间会话不中断) | 同步语音 FC(静音等待数秒) | OpenAI gpt-realtime 官方博客 / Google Cloud Live API 文档 官方描述 |
| FC 精度基准 | 三家现役旗舰在 BFCL(Berkeley Function-Calling Leaderboard)均为第一梯队,排名随版本频繁变动 | — | 建议实时查 BFCL 排行榜取最新名次,本页不锁定具体分数 动态 |
七、信源清单(多信源交叉验证)
检索与核对日期:2026-07-27。官方文档为准,社区帖用于验证实际行为与已知问题。
- 阿里云百炼官方:Function Calling 工具调用(支持模型清单 / parallel_tool_calls 说明) 官方 · 已全文抓取核对
- 阿里云产品公告:Qwen3.5-Omni Realtime API 支持自主工具调用("无需打断对话流") 官方公告
- Qwen 官方文档:函数调用(vLLM hermes parser 自部署方案) 官方
- QwenLM GitHub issue #33:开源 Qwen2.5-Omni 不支持 Function Call 官方仓库 · 社区确认
- OpenAI 官方博客:Introducing gpt-realtime(异步 FC / MCP / SIP,2025-08) 官方
- OpenAI 官方文档:Realtime conversations(FC 事件流) 官方
- OpenAI GPT 模型发布时间线(FC 2023-06-13:gpt-4-0613 / gpt-3.5-turbo-0613) 第三方整理 · 与官方 changelog 一致
- OpenAI 社区:Realtime FC 结果注入后需触发 response 的实际行为 社区验证
- OpenAI 社区:gpt-realtime 异步工具调用行为讨论 社区验证
- Google AI 官方文档:Gemini Function Calling(并行 / 组合式 / tool_config 模式) 官方
- Google AI 官方文档:Live API 工具使用(NON_BLOCKING + scheduling) 官方
- Google Cloud 官方文档:Live API 异步函数调用(默认非阻塞 / INTERRUPT vs WHEN_IDLE vs SILENT 实践建议) 官方
- LiveKit Agents issue:Gemini Live NON_BLOCKING 三档 scheduling 集成 社区验证
- Google AI 论坛:SILENT 档位在打断场景的边缘问题 社区验证
- AsyncLM: Asynchronous LLM Function Calling(Yale,2024-12,1.6–5.4× 延迟降低) 学术
- LLMCompiler: An LLM Compiler for Parallel Function Calling(Berkeley,ICML 2024,3.7×/6.7×/+9%) 学术
- vLLM 官方文档:Interleaved Thinking(交错思考框架层支持) 官方(推理框架)
- Berkeley Function-Calling Leaderboard(BFCL):FC 精度动态基准 学术基准