我的ai基础扫盲
1. Token 它是AI理解文字的最小单位。不是直接把每个字喂给AI,而是先切碎成Token。 * 怎么切? 常见汉字(如“你”、“好”)通常1个字=1个Token。生僻字或英文长单词(如“Congratulations”)可能1个词=好几个Token。标点符号也算。 * 通俗理解:就像你跟AI说话要“买票”,一个字可能要买1张票,生僻字或长单词可能要买2-3张票。AI处理的总票数,就是Token数。
2. 上下文(Context) 指AI在回答时能记住的、之前对话内容的容量。 * 通俗理解:就像AI的“短期记忆”。你问完第1句,它能记住;问完第10句,可能就忘了第1句的内容。上下文越大,它的“记忆容量”就越大,能一次性处理更长的文章或对话。比如上下文128K,大概能一次读完《三体》三部曲的文本量。
3. 缓存击中率(Cache Hit Rate) 这主要是为了省钱和提速。当你重复问相似问题时,AI不必重新计算,而是从“缓存”(像抽屉里的草稿本)里直接拿现成答案。 * 缓存击中(Hit):抽屉里正好有你要的草稿,直接拿来用 → 快且便宜。 * 缓存未击中(Miss):抽屉里没有,必须从头算 → 慢且贵。 * 击中率:你问10次,有7次直接拿现成的 → 击中率70%。击中率越高,系统越聪明、越省钱。
一句话总结它们的关系:
你发过去的一段文字(切成若干个Token),AI会结合它的短期记忆(上下文)来理解;如果大量重复请求能直接从缓存拿结果(缓存击中率高),反应就快,成本也低。
1. API(应用程序接口)
广义 CS 上的 API:
就像餐厅里的 服务员。你(客户端)想点菜(要某个功能/数据),不需要自己冲进厨房炒菜,只需要告诉服务员你要什么,服务员去后厨(服务器)拿来给你。
关键点:API 就是一套约定好的“点菜方式”——你按规矩喊一声,它就帮你干活,你不用管背后是怎么做的。
AI 上的 API:
本质一样,但后厨换成了 大模型。
你没法直接把脑子连到 ChatGPT 上,所以通过 AI 公司提供的 API,发一句话(带你的 Token 和参数),AI 服务器算完后把结果返回给你。
通俗例子:你写一个小程序,里面调用 chatgpt.api(“讲个笑话”),API 就会替你把这句话传到 OpenAI 的机房,再把生成的笑话拿回来。你不用自己部署几百亿参数的模型。
MCP(Model Context Protocol,模型上下文协议)就像为AI生态定制的 “USB-C接口” 。
在解释它之前,我们先用一个比喻来联想一下。
🔌 从“私人定制”到“通用标准”
想象一下AI是个想买东西的人,但需要连接各种外部工具。 * 过去 (无MCP):为了用每个新工具,AI都需要一根专用的、定制的充电线,非常麻烦。 * 现在 (有MCP):MCP定义了一个统一的“USB-C”接口标准。AI只需学习这一种“插口”,就能连接任何一个支持MCP的工具(比如数据库、搜索引擎等),即插即用。
简单来说,MCP就是一套开放标准,它用一个通用语言,统一了AI大模型与外部世界(数据、工具、API等)的连接方式。
🏗️ MCP的“三角关系”
为了让这套标准运行起来,有三个关键角色各司其职:
- 1. Host (应用/客户端):这是你直接交互的AI应用(如Claude桌面版、Cursor等)。它是沟通的发起者,负责理解你的需求,并找到合适的“专家”来帮忙。
- 2. Server (服务端/专家):这是个只懂“MCP语言”的“专家”程序,专门负责完成某一类具体任务,比如读数据库、处理文件或查天气预报。它准备好向任何发来请求的“Host”提供服务。
- 3. Tool (工具):“专家”胸前的徽章,标注了他能完成的精准技能,比如“查询当日天气”。大模型正是通过“Tool”的描述来了解并调用某项特定能力的。
🤝 MCP的“一呼百应”协作
它给AI行业带来的最大好处是“标准化”和“解耦”。MCP将AI的“思考能力”与“执行能力”彻底分离,这意味着一个MCP Server写好,可以被成千上万个MCP Host调用。开发者再也不用为每个AI产品重复“造轮子”,整个生态的效率大大提升。
一个例子:一个开发者编写了一个
MCP Server - 天气专家。从此,所有支持MCP的AI应用(如Claude、Cursor等),都能直接获得这个查天气的能力,无需额外开发。
明白了,之前的解释可能还是有点抽象。我们用一个更生活化的场景,从头搭建一个MCP的例子,你就能彻底搞懂。
场景:你想让AI帮你查一下“今天杭州的天气”,然后根据天气推荐穿什么。
没有MCP的时候(传统方式)
- 你问AI:“杭州今天天气怎么样?”
- AI说:“对不起,我不知道实时天气,我的知识截止到去年。”
- 你必须自己去打开浏览器、搜天气、看到“25度、晴”,然后把这段文字复制粘贴给AI。
- AI看到文字后说:“哦,25度晴,建议穿短袖。”
- 问题:换一个AI(比如从ChatGPT换到Claude),你还得重复这个过程。每个AI都要你手动喂数据。
有MCP的时候
你事先设置好一个MCP Server(可以理解为一个“天气小助手”),这个小助手知道怎么从气象网站拿数据,并且它只说MCP标准语言。
然后你的AI应用(比如Claude桌面版)天生就懂MCP语言。于是对话变成:
- 你问AI:“杭州今天天气怎么样?”
- AI(作为MCP Host)听懂后,自动用MCP标准格式去问那个“天气小助手”(MCP Server):“请给我杭州今天的天气。”
- 小助手去气象网取回数据:“25度,晴。”
- 小助手用MCP标准格式把数据返回给AI。
- AI看到数据,分析说:“25度晴,建议穿短袖。”
你全程只跟AI说了一句话。AI自己调用工具拿到了实时信息。
MCP三个角色的明确分工(用上面的例子)
| 角色 | 在这个例子里是谁 | 通俗理解 |
|---|---|---|
| MCP Host | 你的AI应用(Claude桌面版) | 像指挥官,理解你的需求,决定调用哪个工具,但不亲自干活。 |
| MCP Server | 那个“天气小助手”程序 | 像专家,只会干一件事(查天气),按标准格式提供服务。 |
| MCP 协议 | 两者之间沟通的规矩 | 像USB-C接口标准,只要双方都支持,就能直接插上用。 |
再换一个角度:MCP解决的核心痛点
没有MCP:每个AI产品(ChatGPT、Claude、文心一言、通义千问...)如果要接入天气功能,都必须各自写一套代码去调用天气API。写一遍不难,但如果要接入100个不同工具(数据库、邮箱、日历、股票、地图...),每个AI产品都要写100套适配代码——重复造轮子。
有了MCP:开发者只需要写一次“天气MCP Server”,所有支持MCP的AI产品(Host)都能直接用它。写一次,“插”给所有AI用。
这就像USB接口的诞生:以前每个厂商做自己的充电口,换手机就得换线;现在统一成Type-C,一根线通吃所有设备。
模型 vs 框架:Skill 是谁的能力?
🧠 核心认知:AI 编程助手 = 三层架构
很多人以为 Skill、Tool、Memory 这些高级功能是模型自带的(比如"只有 GPT-4 或 Claude 才有")。其实不是。
┌────────────────────────────┐
│ ③ 模型层 (Model) │ ← 只做:文字进 → 推理 → 文字出
│ GPT / Claude / DeepSeek │ 不知道文件、Skill、工具是什么
└──────────┬─────────────────┘
│ 纯 API 调用(文本进出)
┌──────────▼─────────────────┐
│ ② 框架层 (Framework) │ ← 负责:Skill 匹配、工具调度、
│ Copilot / Cursor / │ Memory 管理、上下文拼装
│ Codex CLI │ 把"超能力"包装成文本喂给模型
└──────────┬─────────────────┘
│ VS Code API
┌──────────▼─────────────────┐
│ ① 编辑器层 (Editor) │ ← 文件系统、终端、UI
│ VS Code / JetBrains │
└────────────────────────────┘
📦 模型只做一件事:文字进,文字出
模型不知道文件系统长什么样,不知道 VS Code 是什么,甚至不知道 "Skill" 这个概念存在。
| 功能 | 框架做的事 | 模型做的事 |
|---|---|---|
| Skill | 扫描 SKILL.md → 匹配触发条件 → 拼进 system prompt | 读取 prompt 中的指令,按说明执行 |
| Tool(读文件/搜代码) | 定义工具签名 → 接收调用 → 实际执行 → 返回结果 | 决定"我该调用哪个工具" |
| Memory | 存储/检索记忆文件 → 拼入上下文 | 根据记忆内容调整行为 |
🔌 Tool Calling 的本质
"Function Calling" 或 "Tool Use" 不是模型真的在调用函数:
- 框架告诉模型:"你现在有这些工具可用:[read_file, create_file, ...]"
- 模型输出一段 JSON:
{"tool": "read_file", "path": "/foo/bar.ts"} - 框架解析 JSON → 实际执行 → 把结果文本返回给模型
所以只要模型能学会"输出特定格式的 JSON",就能拥有 Tool Calling。DeepSeek、Qwen、GLM 都支持 → 接入 Copilot 框架后,Skill、Memory、文件操作全部可用。
💡 生活类比
| 类比 | 框架 | 模型 |
|---|---|---|
| 手机 | iOS(App 管理、通知、权限) | A 芯片(只管算) |
| 电脑 | Windows(窗口、文件、进程) | CPU(只管算) |
| 浏览器 | Chrome(标签页、扩展) | V8 引擎(只执行 JS) |
CPU 不知道什么是窗口,但 OS 包装好一切,CPU 只管算。
🎯 一句话总结
Skill 是框架能力,不是模型能力。 OpenAI 和 Anthropic 把两者打包营销,让人误以为只有 GPT/Claude 才有这些功能——实际上,任何支持 Tool Calling 的模型接上好框架,都能拥有同样的超能力。