AI 进化论:从 Function Calling 到 MCP

AI 进化论:从 Function Calling 到 MCP

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')classWeatherTool(BaseTool): description ='获取指定城市的实时天气' parameters =[{'name':'city','type':'string','description':'城市名称,如:北京','required':True}]defcall(self, params:str,**kwargs)->str:# 这里模拟调用 APIimport json args = json.loads(params) city = args['city']returnf"{city}今天晴转多云,25度,适合摸鱼。"

二、 实战演练:搭建你的“门票数据助手”

1. 业务场景介绍

我们需要搭建一个能查询门票销量的助手。它基于 tkt_orders 数据表,包含订单时间、用户 ID、省份、订单金额等字段。

在这里插入图片描述

2. 进阶:一次调用,搞定查询 + 可视化

传统模式下,查数据和画图是分开的。但在进阶版 exc_sql 工具中,我们实现了 自动推断图表字段 并直接返回 Markdown 表格和图片。

核心逻辑实现:

  • SQL 查询: 执行 SQL 获取结果集 df
  • 自动绘图: 优先选字符串列做 X 轴,数值列做 Y 轴。
  • 样式设置: 自动处理标签倾斜 45 度,防止文字重叠。
# 自动推断并绘图的逻辑片段 x_candidates = df.select_dtypes(include=['object']).columns.tolist() x = x_candidates if x_candidates else df.columns y_fields = df.select_dtypes(include=['number']).columns.tolist()import matplotlib.pyplot as plt plt.figure(figsize=(8,5))for col in y_fields: plt.bar(df[x].astype(str), df[col], label=col) plt.xticks(rotation=45) plt.savefig('chart.png')

三、 MCP:AI 界的“USB-C”接口协议来了!

1. 什么是 MCP?

专业解释:Model Context Protocol (MCP) 是 Anthropic 推出的开放协议标准。它旨在标准化 LLM 与外部数据源、工具之间的交互方式,实现“一次开发,多模型兼容”。

大白话解读: 以前每个厂商的 AI 接口都不一样,像极了那个满地找充电线的年代(iPhone 是 Lightning,安卓是 Micro-USB)。​MCP 就是 AI 界的 USB-C​,管你是 Claude、GPT 还是 Qwen,只要插上这个“标准插口”,工具就能通通用起来!

2. MCP 核心架构

  • MCP Host: 运行 AI 的环境(如 Cursor, Claude Desktop)。
  • MCP Client: 负责发起请求的“翻译官”。
  • MCP Server: 提供具体功能的“工具库”。

AI模型/Host

MCP Client

MCP Server

高德地图API

本地数据库

GitHub/Slack


四、 玩转 MCP:从旅游攻略到桌面统计

1. CASE:高德地图旅游助手

通过配置 amap-maps-mcp-server,AI 可以自主调用关键词搜索、路径规划、天气查询等功能,直接为你生成一份详尽的大连一日游攻略,甚至帮你写好 HTML 网页呈现。

在这里插入图片描述

2. CASE:桌面 TXT 统计器(MCP SDK 实战)

使用 Python 的 FastMCP 框架,几行代码就能让 AI 拥有“查看你桌面文件”的超能力。

from pathlib import Path from mcp.server.fastmcp import FastMCP mcp = FastMCP("桌面统计器")@mcp.tool()defcount_desktop_txt_files()->int:"""统计桌面上 .txt 文件的数量""" desktop_path = Path("~/Desktop").expanduser()returnlen(list(desktop_path.glob("*.txt")))if __name__ =="__main__": mcp.run()

五、 脑洞大开:未来 3 大拓展方案

在原有功能的基础上,我们可以进一步把 AI 的“触角”伸向更远的地方:

  1. 智能家居“边缘大脑”:
    • 方案: 利用 MCP 协议连接本地 Home Assistant 服务器。
    • 价值: 告别云端延时。即便断网,你也能对 AI 说:“看我眼神行事,把卧室灯调成猛男粉。”
  2. AI 投资情报局:
    • 方案: 集成 Tavily 搜索 MCP + 实时股价 Function Calling。
    • 价值: AI 自动抓取半导体行业新闻,结合你本地的持仓数据,自动画出盈亏分析图并给出“割肉”建议。
  3. 自动化“代码裁缝”:
    • 方案: 开发一个具备文件修改权限的 MCP Server,接入 IDE。
    • 价值: 发现 Bug 后,AI 不仅仅是“建议”,它能直接“上手”改代码,测通后顺便帮你把 Jira 单子也关了。

六、 总结与互动引导

从私有的 Function Calling 到开放的 ​MCP​,AI 正在从“只会聊天的复读机”进化为“能干活的打工人”。底层能力的进化,意味着开发门槛的进一步降低。

在这里插入图片描述
看到这里的都是真爱!既然 AI 都能帮我统计桌面 TXT 了,你觉得它还有什么“离谱”的用途?A. 帮我自动回复老板的钉钉(要带幽默感那种)B. 监控我的心率,一旦看到心仪的妹子就自动帮我点外卖送花C. 自动识别代码里的屎山,并发出尖叫声

评论区留下你的脑洞,点赞最高的我考虑写个 Demo 出来!

转载声明

本文为原创内容。转载请注明出处,并保留原文链接。

参考链接

  1. Model Context Protocol 官方文档
  2. Qwen-Agent 开源仓库
  3. Tavily AI 搜索服务
  4. 高德开放平台

Read more

从 “渐进式披露” 到 “能力即文件”:Claude Agent Skills 的技术本质、架构变革与生态影响

从 “渐进式披露” 到 “能力即文件”:Claude Agent Skills 的技术本质、架构变革与生态影响

引言 人工智能(Artificial Intelligence,AI)智能体(Agent)技术正在经历从通用能力向专业化能力的范式转变。在这一变革浪潮中,Anthropic 于 2025 年 10 月发布的 Agent Skills 方法代表了 AI 能力扩展机制的一次重要创新。这项技术的核心价值在于,它通过一种基于文件系统的模块化架构,将领域专业知识封装为可复用的技能单元,使得通用大模型能够动态按需加载特定能力,从而在保持上下文效率的同时实现专业化任务执行。不同于传统的提示工程或工具调用模式,Agent Skills 采用 “渐进式披露” 的加载机制,仅在与任务相关时才将详细指令载入上下文窗口,这一设计有效解决了长期困扰 AI Agent 系统的上下文瓶颈问题。从企业实践来看,早期采用者已报告了显著的生产力提升,某医疗保健软件公司的 21 天试点项目记录了 49 个 AI 增强用例,累计节省超过 680 小时的工作时间。本报告将系统性地解构 Claude

By Ne0inhk
深入浅出 NVIDIA CUDA 架构与并行计算技术

深入浅出 NVIDIA CUDA 架构与并行计算技术

🐇明明跟你说过:个人主页 🏅个人专栏:《深度探秘:AI界的007》 🏅 🔖行路有良友,便是天堂🔖 目录 一、引言 1、CUDA为何重要:并行计算的时代 2、NVIDIA在GPU计算领域的角色 二、CUDA简介 1、什么是CUDA 2、CUDA的历史与发展 三、CUDA架构解析 1、GPU vs CPU:架构对比 2、CUDA核心组件 四、CUDA编程模型 1、CUDA程序的基本结构 2、Kernel函数与线程层级 3、内存管理与数据传输(Host ↔ Device) 一、引言 1、CUDA为何重要:并行计算的时代 🧠 单核时代的终结 曾几何时,我们对计算性能的追求是这样的: “CPU 主频越高越好,

By Ne0inhk
一文看懂 Modbus RTU 协议:核心架构、报文解析与现场调试避坑指

一文看懂 Modbus RTU 协议:核心架构、报文解析与现场调试避坑指

目录 一、 核心架构:主从式结构 (Client/Server) 二、 常见传输模式:RTU 与 TCP 三、 数据模型:四类存储寄存器 四、 常用功能码 (Function Codes) 五、 报文结构示例 (Modbus RTU) 六、 常见问题与排查思路 一、 核心架构:主从式结构 (Client/Server) Modbus 采用典型的主从式通信模型: 主站 (Master/Client):唯一的指令发起方,同一网络内同一时刻仅存在一台主站,负责主动查询从站数据 / 下发控制指令; 从站 (Slave/Server):指令被动响应方,每台从站配备唯一站号(ID),仅在被主站点名调用时反馈数据 / 执行指令,无主动发送数据的权限; * 注意: 从站不会主动发送数据,只有在被主站“

By Ne0inhk
计算机毕业设计springboot烟草订购系统 基于SpringBoot的烟草商品在线采购与供应链管理平台 基于SpringBoot的卷烟电商交易与库存调度系统

计算机毕业设计springboot烟草订购系统 基于SpringBoot的烟草商品在线采购与供应链管理平台 基于SpringBoot的卷烟电商交易与库存调度系统

计算机毕业设计springboot烟草订购系统jh994018 (配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。 随着互联网技术的飞速发展,各行各业都在逐步实现信息化和网络化,烟草行业也不例外。传统的烟草订购流程涉及多个环节,从生产商到批发商再到零售商,每一环节都需要大量的人工操作和纸质文件,这不仅增加了交易的时间成本,也提高了出错的概率。此外,由于缺乏有效的信息共享机制,供应链各方难以实时掌握市场需求和库存状况,导致资源配置不够高效。为了提高烟草行业的流通效率,降低运营成本,并满足市场监管的需求,开发一个烟草订购系统显得尤为重要。系统化的订购流程可以大幅度减少人力物力的消耗,简化订购手续,缩短产品从生产到销售的周期,从而提高整个供应链的效率。 本文档详细阐述了一个基于B/S架构的烟草订购系统的设计与实现过程。系统采用Java语言开发,后端使用SpringBoot框架,前端采用Vue.js技术,数据库选用MySQL。系统分为管理员、用户和商家三大角色,涵盖了完整的电商业务流程与后台管理功能。文档从系统开发技术

By Ne0inhk