AI Agent 原理与实践:从提示词到自主执行

AI Agent = 大模型 + 规划 + 工具 + 记忆。让大模型不仅能回答问题,还能自主执行复杂任务。

什么是 AI Agent?

传统 LLM 是一个被动的回答者——你问它答,没有记忆,无法行动。

AI Agent 则不同,它把大模型当作一个能自主决策的执行者

用户目标 → 理解意图 → 制定计划 → 调用工具 → 执行反馈 → 迭代优化

An AI Agent is an LLM with agency — it can perceive, plan, act, and learn.


Agent 的四大核心组件

1. 🔧 工具调用(Tool Use)

LLM 本身无法搜索网页、执行代码、读写文件。Agent 通过工具调用扩展能力边界。

常见工具类型:

  • 搜索:Bing/Google 搜索
  • 代码执行:Python REPL、bash
  • API 调用:HTTP 请求
  • 文件操作:读文档、写文件
# LangChain Tool 定义示例
from langchain.agents import tool

@tool
def search_wikipedia(query: str) -> str:
    """Search Wikipedia for information."""
    return wikipedia.summary(query, sentences=2)

@tool
def calculate(expression: str) -> str:
    """Evaluate a mathematical expression."""
    return str(eval(expression))

2. 🧠 记忆机制(Memory)

Agent 需要记住几类信息:

类型 作用 实现方式
短期记忆 对话上下文 消息历史
长期记忆 跨会话知识 向量数据库
情景记忆 当前任务状态 工作区变量
# 简单的记忆实现
memory = ConversationBufferMemory(
    memory_key="chat_history",
    return_messages=True
)

3. 📋 规划能力(Planning)

面对复杂任务,Agent 需要分解问题

Chain of Thought (CoT):让模型逐步思考 ReAct:交替进行 Reasoning 和 Action

问题:我需要预订下周去上海的机票和酒店
↓
分解:
  1. 查下周一到周三的机票
  2. 搜索上海酒店(日期:周一到周三)
  3. 对比价格
  4. 预订最合适的选项

4. 🎭 角色设定(System Prompt)

给 Agent 一个清晰的角色定义:

你是一个专业的旅行规划助手。
- 熟悉各大航空公司的航线和价格规律
- 了解上海主要商务区酒店分布
- 始终优先考虑性价比
- 遇到不确定信息时,主动搜索核实

主流框架对比

框架 特点 学习曲线 适用场景
LangChain 功能最全,生态丰富 中等 复杂定制 Agent
AutoGen 微软出品,多智能体协作 中等 多 Agent 协作
CrewAI 角色驱动,简洁直观 较低 快速原型
LlamaIndex 知识检索增强更强 中等 RAG 场景
AutoGPT 全自主,极简接口 实验性项目

实战:一个天气查询 Agent

from langchain.agents import initialize_agent, AgentType
from langchain_openai import ChatOpenAI
from langchain.tools import Tool

# 定义工具
def get_weather(city: str) -> str:
    """获取城市天气"""
    # 实际项目中调用天气 API
    return f"{city}今天晴天,25°C"

tools = [Tool(
    name="天气查询",
    func=get_weather,
    description="用于查询天气的工具"
)]

# 初始化 Agent
llm = ChatOpenAI(model="gpt-4o")
agent = initialize_agent(
    tools=tools,
    llm=llm,
    agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION,
    verbose=True
)

# 执行
result = agent.run("上海明天天气怎么样?需要穿什么衣服?")

当前局限与挑战

虽然 Agent 概念火热,但在生产环境中仍面临挑战:

  1. 可靠性:多步执行中某一步失败,整个任务可能崩溃
  2. 成本:每次工具调用都有延迟和费用
  3. 安全性:Agent 自主执行有风险,需要权限控制
  4. 幻觉:规划步骤中仍可能产生错误判断

💡 小结

AI Agent 代表着 LLM 从”应答者”到”执行者”的进化。虽然还不完美,但已经在代码生成、数据分析、自动化流程等场景展现巨大潜力。

核心启示:不要把 AI Agent 当成银弹,它最适合流程明确、容错率高、有监控的场景。


相关阅读:大模型上下文窗口之争:1M tokens意味着什么?