AI 进化论:从 Function Calling 到 MCP

一、给 AI 装上手脚:Function Calling 到底是个啥?
1. 专业解释与大白话解读
专业解释: Function Calling(函数调用)是模型厂商(如 OpenAI、阿里云 Qwen)提供的私有接口功能。它允许开发者预定义一组工具(函数),当模型判断用户意图需要调用外部数据或执行特定操作时,它会输出符合函数签名的结构化参数(JSON),由后端执行后再将结果反馈给模型生成最终回复。
大白话解读: 想象你雇了一个很有才华但没手没脚的'军师'(大模型)。如果你问他'今天外面几度?',他只能瞎编。但如果你递给他一个温度计(Function),告诉他怎么读数,他就能先看温度计,再告诉你:'主公,外面 35 度,建议宅着。'
生活案例: 这就像点外卖。你(用户)对大模型说'我饿了'。大模型(外卖员)不会自己做饭,但他知道调用'美团下单'这个函数,填好'红烧肉'和'你的地址',最后把热腾腾的饭菜送到你手里。
2. 核心功能与代码示例
在 Qwen-Agent 等框架中,Function Calling 可以实现实时数据获取、复杂数学计算和外部系统操作。
# 示例:一个简单的天气查询函数注册
from qwen_agent.tools.base import BaseTool, register_tool
@register_tool('get_weather')
class WeatherTool(BaseTool):
description = '获取指定城市的实时天气'
parameters = [{'name':'city','type':'string','description':'城市名称,如:北京','required':True}]
def call(self, params:str,**kwargs)->str:
# 这里模拟调用 API
import json
args = json.loads(params)
city = args['city']
return





