1. Prompt 提示词:AI交互的起点
用户提示词(User Prompt)
用户直接向AI提出的问题或指令,如:
- "帮我写一封商务邮件"
- "解释量子计算的基本原理"
- "将这段代码从Python转换为JavaScript"
系统提示词(System Prompt)
AI的"角色设定",定义其:
- 角色身份:专家、助手、创意伙伴等
- 行为准则:如何回答问题、避免什么内容
- 风格特征:正式、随意、幽默等
- 知识范围:特定领域专家或通用助手
技术实现:
python
# 典型的API调用结构
messages = [
{"role": "system", "content": "你是一个专业的软件工程师..."},
{"role": "user", "content": "请review这段代码..."}
]
2. Function Calling:AI的"双手"延伸
为什么需要Function Calling?
核心问题:AI的"信息茧房"与现实需求脱节
-
知识时效性问题
- 训练数据截止时间(如GPT-4截止到2023年4月)
- 无法获取实时信息:股票价格、最新新闻、天气预报
-
能力边界限制
- 无法执行现实世界操作:发邮件、订机票、查询数据库
- 不能进行计算:数学运算、数据分析、图表生成
-
交互方式原始
python# 旧方式:模糊的自然语言描述 user: "你能帮我查一下北京的天气吗?" AI: "我无法直接查询天气,但你可以..." # 新方式:结构化函数调用 AI: 调用 get_weather(location="北京") 返回: {"temperature": 22, "condition": "晴朗"}
3. Agent:AI的"智能代理"
从Function Calling到Agent的演进
简单函数调用 → 复杂任务执行
python
单一函数:查询天气
↓
组合函数:查询天气 + 建议穿衣 + 规划行程
↓
自主Agent:感知需求 → 规划步骤 → 调用函数 → 评估结果 → 调整策略
Agent的核心能力
-
任务分解
python# 复杂任务:"帮我规划一个三天的北京旅游行程" → 分解为: 1. 查询北京景点 2. 获取天气信息 3. 查询酒店价格 4. 规划交通路线 5. 生成详细日程 -
工具管理
- 选择合适的函数
- 处理函数依赖关系
- 管理调用顺序
-
状态维护
- 记住之前步骤的结果
- 处理错误和重试
- 保持任务连贯性
-
决策能力
- 判断是否需要调用函数
- 选择最佳函数组合
- 评估结果质量
AutoGPT:早期Agent的典型代表
架构设计:
python
用户目标 → 规划器 → 执行器 → 工具调用 → 结果评估 → 记忆存储 → 下一轮循环
关键创新:
- 循环机制:不断评估进展,调整策略
- 长期记忆:保存任务上下文和历史
- 自我反思:分析失败原因,改进方法
局限性:
- 效率问题:过多思考循环
- 成本高昂:频繁API调用
- 可靠性:容易陷入死循环
4. MCP(Model Context Protocol):下一代标准
为什么需要MCP?
现有问题:
-
碎片化生态系统
- 每个AI平台有自己的工具接口
- 开发者需要为不同平台重复开发
- 用户无法跨平台使用相同工具
-
上下文管理困难
python# 传统方式:上下文丢失 对话1: "查询北京的天气" 对话2: "那明天呢?" # AI不知道"明天"指哪里 # MCP方式:保持上下文 工具调用 + 上下文管理 = 理解"明天"指"北京的明天" -
安全和权限管理
- 缺乏统一的权限模型
- 难以控制工具访问范围
- 审计和监控困难
MCP的核心设计
协议层:
yml
# MCP工具描述
mcp_tool:
name: "weather_service"
version: "1.0"
endpoints:
- method: "GET"
path: "/weather/{city}"
parameters:
- name: "city"
type: "string"
required: true
capabilities:
- "real-time-data"
- "multi-location"
permissions:
- "read-only"
关键特性:
-
标准化工具发现
- 自动检测可用工具
- 统一描述格式
- 版本管理
-
智能上下文管理
- 跨对话保持工具状态
- 自动参数填充
- 历史调用记录
-
细粒度权限控制
ymlpermissions: - scope: "weather_data" operations: ["read"] conditions: - max_calls_per_day: 100 - allowed_locations: ["北京", "上海", "广州"] -
互操作性
- 跨AI模型工作
- 支持多种编程语言
- 云和本地部署
5. 技术栈全景图
架构演进
python
第一代:直接对话
用户 ↔ Prompt ↔ AI模型
第二代:增强对话
用户 ↔ Prompt ↔ AI模型 ↔ Function Calling ↔ 外部工具
第三代:智能代理
用户 ↔ Agent ↔ AI模型 ↔ 工具编排 ↔ 多个工具 ↔ 记忆系统
第四代:标准化生态
用户 ↔ Agent ↔ MCP协议层 ↔ 标准化工具 ↔ 上下文管理