大语言模型与智能体工程
大学前沿课程。深入大语言模型(LLM)的原理、微调、RAG 检索增强、Agent 智能体架构,以及多模态模型与具身智能的最新进展。
第一章 大语言模型原理
1.1 从 Transformer 到 GPT
大语言模型的核心架构是 Transformer(2017,Google "Attention Is All You Need"):
关键创新:
- 自注意力机制(Self-Attention):每个 token 可以看到序列中所有其他 token
- 多头注意力(Multi-Head Attention):多个注意力头捕获不同维度的关系
- 位置编码(Positional Encoding):让模型理解 token 的顺序
模型演进路线:
Transformer (2017)
→ GPT-1/2/3 (OpenAI, 2018-2020)
→ BERT (Google, 2018)
→ GPT-4 (OpenAI, 2023)
→ Claude 3 (Anthropic, 2024)
→ Gemini (Google, 2024)
→ Llama 3 (Meta, 2024)
→ 多模态大模型 (2024-)
1.2 预训练与对齐
预训练(Pre-training):
- 在海量文本上训练,学习语言的统计规律
- 目标函数:下一个 token 预测(Next Token Prediction)
- 计算量:GPT-4 估计训练成本超过 1 亿美元
对齐(Alignment):
- SFT(Supervised Fine-Tuning):用高质量问答数据微调
- RLHF(Reinforcement Learning from Human Feedback):人类偏好强化学习
- DPO(Direct Preference Optimization):直接偏好优化,无需奖励模型
- Constitutional AI:用 AI 反馈替代人类反馈(Anthropic)
1.3 开源 vs 闭源模型
| 模型 | 类型 | 参数量 | 特点 |
| GPT-4o | 闭源 | 未公开 | 多模态、速度快 |
| Claude 3.5 Sonnet | 闭源 | 未公开 | 代码能力强 |
| Llama 3.1 405B | 开源 | 405B | Meta 最大开源模型 |
| Qwen 2.5 | 开源 | 7B-72B | 阿里,中文能力强 |
| DeepSeek-V3 | 开源 | 671B MoE | 高效混合专家架构 |
| Mistral Large | 开源/闭源 | 未公开 | 欧洲领先 |
第二章 RAG 检索增强生成
2.1 为什么需要 RAG
LLM 的局限性:
- 知识截止:训练数据有截止日期
- 幻觉问题:可能编造不存在的信息
- 领域知识不足:特定领域(法律、医疗)知识有限
RAG(Retrieval-Augmented Generation) 解决方案:
用户问题 → 检索相关文档 → 拼接上下文 → LLM 生成回答
2.2 RAG 系统架构
核心组件:
- 文档处理管道
- 文档加载(PDF/HTML/Markdown)
- 文本分块(Chunking):固定大小、语义分块、递归分块
- 向量化(Embedding):OpenAI text-embedding-3、BGE、M3E
- 向量数据库
- Milvus / Qdrant / Weaviate / Pinecone
- 存储文档向量,支持近似最近邻搜索(ANN)
- 检索与生成
- 问题向量化
- 相似度检索(Top-K)
- 重排序(Reranking)
- 上下文注入 + LLM 生成
2.3 实践:构建知识库问答系统
from langchain_community.vectorstores import FAISS
from langchain_openai import OpenAIEmbeddings, ChatOpenAI
from langchain.text_splitter import RecursiveCharacterTextSplitter
from langchain.chains import RetrievalQA
# 1. 加载文档
from langchain_community.document_loaders import TextLoader
docs = TextLoader("knowledge_base.txt").load()
# 2. 分块
splitter = RecursiveCharacterTextSplitter(chunk_size=500, chunk_overlap=50)
chunks = splitter.split_documents(docs)
# 3. 向量化 + 存储
embeddings = OpenAIEmbeddings()
vectorstore = FAISS.from_documents(chunks, embeddings)
# 4. 构建问答链
llm = ChatOpenAI(model="gpt-4o-mini", temperature=0)
qa_chain = RetrievalQA.from_chain_type(
llm=llm,
retriever=vectorstore.as_retriever(search_kwargs={"k": 3}),
return_source_documents=True
)
# 5. 提问
result = qa_chain.invoke({"query": "公司的休假政策是什么?"})
print(result["result"])
print("来源:", result["source_documents"])
第三章 Agent 智能体
3.1 从 LLM 到 Agent
LLM 只能"说话",Agent 能"做事"。Agent = LLM + 工具 + 记忆 + 规划。
Agent 核心能力:
| 能力 | 说明 | 实现方式 |
| 工具调用 | 使用 API、数据库、搜索引擎 | Function Calling |
| 记忆 | 短期(对话)+ 长期(向量存储) | Memory Module |
| 规划 | 分解复杂任务为子任务 | ReAct / Plan-and-Solve |
| 反思 | 检查输出质量,自我修正 | Self-Reflection |
3.2 ReAct 框架
ReAct(Reasoning + Acting) 是最经典的 Agent 框架:
思考(Thought)→ 行动(Action)→ 观察(Observation)→ 思考 → ...
示例:
Thought: 我需要查找北京今天的天气
Action: search_weather("北京")
Observation: 北京今天晴,最高温度 28°C
Thought: 用户还问了是否需要带伞
Action: search_rain_probability("北京")
Observation: 降水概率 10%
Thought: 现在可以回答用户了
Final Answer: 北京今天晴天,28°C,降水概率低,不需要带伞
3.3 多 Agent 系统
Multi-Agent 架构模式:
- 协作式:多个 Agent 分工合作完成复杂任务
- 研究员 Agent + 写作者 Agent + 审核员 Agent
- 竞争式:多个 Agent 生成不同方案,选择最优
- 辩论式 Agent(如 AutoGen 的 GroupChat)
- 层级式:Manager Agent 分配任务给 Worker Agent
- CrewAI、LangGraph 的 Supervisor 模式
3.4 实践:用 LangGraph 构建研究 Agent
from langgraph.graph import StateGraph, END
from typing import TypedDict, Annotated
import operator
class AgentState(TypedDict):
query: str
research_results: list
summary: str
messages: Annotated[list, operator.add]
def researcher(state: AgentState):
"""研究 Agent:搜索信息"""
# 调用搜索 API
results = search_web(state["query"])
return {"research_results": results}
def writer(state: AgentState):
"""写作 Agent:生成报告"""
report = generate_report(state["research_results"])
return {"summary": report}
def reviewer(state: AgentState):
"""审核 Agent:检查质量"""
score = evaluate_quality(state["summary"])
if score < 0.8:
return {"messages": ["需要改进,重新研究"]}
return {"messages": ["审核通过"]}
# 构建工作流
workflow = StateGraph(AgentState)
workflow.add_node("research", researcher)
workflow.add_node("write", writer)
workflow.add_node("review", reviewer)
workflow.set_entry_point("research")
workflow.add_edge("research", "write")
workflow.add_edge("write", "review")
workflow.add_conditional_edges("review",
lambda x: "write" if "改进" in x["messages"][-1] else END
)
app = workflow.compile()
result = app.invoke({"query": "2024年AI领域最重要的突破"})
第四章 多模态与具身智能
4.1 多模态大模型
多模态模型能同时处理文本、图像、音频、视频:
| 模型 | 模态 | 特点 |
| GPT-4o | 文本+图像+音频 | 实时语音对话 |
| Gemini 1.5 Pro | 文本+图像+音频+视频 | 100万 token 上下文 |
| Claude 3.5 | 文本+图像 | 强视觉理解 |
| LLaVA | 文本+图像 | 开源多模态 |
4.2 具身智能(Embodied AI)
具身智能 = 大模型 + 机器人身体,让 AI 在物理世界中行动:
技术栈:
视觉语言模型(VLM)
↓ 理解场景、生成指令
机器人操作系统(ROS 2)
↓ 运动规划、控制
硬件执行器(机械臂/移动底盘)
↓ 物理操作
环境反馈(传感器/摄像头)
↓ 闭环控制
前沿方向:
- Figure 01 + OpenAI:人形机器人对话+操作
- Google RT-2:视觉-语言-动作模型
- Tesla Optimus:通用人形机器人
- 宇树科技:四足/人形机器人
4.3 AI 编程助手
大模型正在改变软件开发方式:
| 工具 | 特点 |
| GitHub Copilot | IDE 内代码补全 |
| Cursor | AI-native 代码编辑器 |
| Devin | AI 软件工程师 Agent |
| Claude Code | 终端内 AI 编程助手 |
| Qoder | AI 编程助手,支持多文件编辑 |
第五章 前沿研究方向
5.1 当前研究热点
- 长上下文理解:突破 100万+ token 的上下文窗口
- 推理能力增强:Chain-of-Thought、Tree-of-Thought
- 高效推理:量化(GPTQ/AWQ)、蒸馏、 speculative decoding
- 世界模型:让 AI 理解物理世界的运行规律
- AI 科学发现:AlphaFold 3、AI 数学家、AI 化学家
5.2 伦理与安全
- 对齐问题:确保 AI 的行为符合人类价值观
- 可解释性:理解模型为什么做出某个决策
- 深度伪造检测:识别 AI 生成的虚假内容
- AI 治理:全球 AI 监管框架(EU AI Act、中国生成式 AI 管理办法)
5.3 学习路径
基础:Python + 线性代数 + 概率论
↓
入门:Hugging Face Transformers 库
↓
进阶:微调 LLM(LoRA/QLoRA)、RAG 系统
↓
深入:Agent 架构、多模态模型
↓
前沿:具身智能、世界模型、AI 安全
推荐资源
- 课程:Stanford CS224N(NLP)、Stanford CS324(LLM)
- 书籍:《Build a Large Language Model (From Scratch)》
- 框架:LangChain、LlamaIndex、LangGraph、CrewAI
- 开源模型:Hugging Face Model Hub、Ollama(本地运行)
- 社区:Hugging Face、r/LocalLLaMA、AI 论文 arXiv