Function Calling是一种机制,允许AI大模型在无法直接访问实时数据或外部系统的情况下,通过调用外部工具,如API、数据库、自定义函数等工具,来获取信息或执行操作,从而突破模型自身能力的限制。阿小云分享支持Function Calling功能的大模型及Function Calling工作原理:

Function Calling是什么?
模型支持Function Calling能力,使用Function Calling功能,通过引入外部工具,使得大模型可以与外部世界进行交互。
Function Calling工作原理
Function Calling通过应用程序与大模型之间的多步骤交互实现,如下图:

1、发起第一次模型调用
应用程序向大模型发送用户问题和可用工具清单。
2、接收模型的工具调用指令(工具名称与入参)
若模型判断需要调用外部工具,返回JSON格式的指令,指定函数名称与入参。若模型判断无需调用工具,会返回自然语言格式的回复。
3、在应用端运行工具
应用程序执行指定工具,获取输出结果。
4、发起第二次模型调用
将工具输出结果添加到消息数组(messages),再次调用模型。
5、接收来自模型的最终响应
模型综合工具输出与用户问题,生成自然语言回复。
哪些模型支持Function Calling?
阿里云百炼千问、DeepSeek、GLM、Kimi和MiniMax支持Function Calling的模型版本如下,也可以在阿里云百炼模型广场查看:https://t.aliyun.com/U/fPVHqY 如下图:

千问
文本生成模型:
- 千问Max:Qwen3.7-Max系列、Qwen3.6-Max系列、Qwen3-Max系列、Qwen-Max系列
- 千问Plus:Qwen3.7-Plus系列、Qwen3.6-Plus系列、Qwen3.5-Plus系列、Qwen-Plus系列
- 千问Flash:Qwen3.6-Flash系列、Qwen3.5-Flash系列、Qwen-Flash系列
- 千问Coder:Qwen3-Coder系列、Qwen2.5-Coder系列、Qwen-Coder系列
- 千问Turbo:Qwen-Turbo系列
- Qwen3.6开源系列
- Qwen3.5开源系列
- Qwen3开源系列
- Qwen2.5开源系列
多模态模型:
- 千问VL: Qwen3-VL-Plus系列、 Qwen3-VL-Flash系列
- 千问Omni:Qwen3.5-Omni-Plus系列、Qwen3.5-Omni-Flash系列、Qwen3-Omni-Flash系列
- 千问Omni-Realtime:Qwen3.5-Omni-Plus-Realtime系列、Qwen3.5-Omni-Flash-Realtime系列
- Qwen3-VL 开源系列
DeepSeek
阿里云百炼部署
- deepseek-v4-pro
- deepseek-v4-flash
- deepseek-v3.2
- deepseek-v3.2-exp(非思考模式)
- deepseek-v3.1(非思考模式)
- deepseek-r1
- deepseek-r1-0528
- deepseek-v3
硅基流动部署
- siliconflow/deepseek-v3.2
- siliconflow/deepseek-v3.1-terminus
- siliconflow/deepseek-r1-0528
- siliconflow/deepseek-v3-0324
快手万擎部署
- vanchin/deepseek-v3.2-think
- vanchin/deepseek-v3.1-terminus
- vanchin/deepseek-r1
- vanchin/deepseek-v3
GLM
- glm-5.2
- glm-5.1
- glm-5
- glm-4.7
- glm-4.6
- glm-4.5
- glm-4.5-air
Kimi
阿里云百炼部署
- kimi-k2.6
- kimi-k2.5
- kimi-k2-thinking
- Moonshot-Kimi-K2-Instruct
月之暗面部署
kimi/kimi-k3、kimi/kimi-k2.7-code-highspeed、kimi/kimi-k2.7-code、kimi/kimi-k2.6、kimi/kimi-k2.5
MiniMax
阿里云百炼部署
- MiniMax-M2.5
- MiniMax-M2.1
稀宇科技部署
- MiniMax/MiniMax-M3
- MiniMax/MiniMax-M2.7
- MiniMax/MiniMax-M2.5
- MiniMax/MiniMax-M2.1