大模型学习笔记:从 Transformer 到 Prompt、RAG 与 Agent

大模型学习笔记:从 Transformer 到 Prompt、RAG 与 Agent

大模型,通常指 Large Language Model,也就是大语言模型。它的核心能力是:基于上下文预测下一个 token,并在大规模数据和参数的支撑下,表现出理解、生成、推理、总结、翻译、写代码等能力

这篇笔记主要记录我对大模型的基础理解,内容包括:大模型是什么、Transformer 的基本思想、训练流程、Prompt 工程、RAG、微调、Agent,以及学习路线。


1. 什么是大模型

大模型可以简单理解为一个非常大的神经网络模型,它通过学习大量文本数据,掌握语言规律、知识关联和一定程度的推理模式。

常见的大模型包括:

  • GPT 系列
  • Claude 系列
  • Gemini 系列
  • Llama 系列
  • Qwen 系列
  • DeepSeek 系列
  • GLM 系列

大语言模型的输入和输出通常都是文本,但它背后的处理单位不是“字”或“词”,而是 token


2. Token 是什么

Token 是模型处理文本的基本单位。

一段文本会先被 tokenizer 切分成 token,再送入模型。例如:

1
我喜欢人工智能

可能会被切成类似下面的形式:

1
[我, 喜欢, 人工, 智能]

英文中,一个单词可能是一个 token,也可能被拆成多个 token。中文中,一个字、一个词或词的一部分都有可能成为 token。

为什么 token 很重要?

  • 模型的上下文长度通常按 token 计算
  • API 计费通常和 token 数量有关
  • 输入越长,消耗资源越多
  • 输出越长,生成时间越长

可以简单记住:

1
大模型不是直接理解一句话,而是把文本拆成 token 后进行计算。

3. 大模型的基本工作方式

大语言模型最核心的训练目标可以概括为:

1
根据前面的内容,预测下一个 token。

比如给模型输入:

1
今天的天气真

模型可能会预测下一个 token 是:

1

然后继续预测:

1
今天的天气真好

再预测后面的 token。

这就是自回归生成,也就是模型一个 token 一个 token 地生成内容。

虽然这个目标看起来很简单,但当模型参数足够大、训练数据足够多、训练方法足够好时,它会表现出复杂能力,例如:

  • 文章写作
  • 代码生成
  • 信息总结
  • 多轮对话
  • 数学推理
  • 指令理解
  • 工具调用
  • 复杂任务规划

4. Transformer 是什么

现代大语言模型大多基于 Transformer 架构。

Transformer 的核心思想是:通过注意力机制,让模型在处理一个 token 时,可以关注上下文中其他重要 token

传统循环神经网络在处理长文本时容易遗忘前面的信息,而 Transformer 可以更高效地建模长距离依赖。

Transformer 中最重要的概念是:

  • Embedding
  • Positional Encoding / Position Embedding
  • Self-Attention
  • Multi-Head Attention
  • Feed Forward Network
  • Layer Normalization
  • Residual Connection

5. Embedding:把文字变成向量

模型不能直接处理文字,所以需要先把 token 转成向量。

例如:

1
"猫" -> [0.12, -0.35, 0.78, ...]

这个向量就是 embedding。

Embedding 的作用是把离散的 token 映射到连续的向量空间中。意思相近的词,在向量空间中的距离也可能更近。

比如:

1
猫、狗、动物

它们在语义上相关,所以对应的向量可能比较接近。


6. 位置编码:让模型知道顺序

Transformer 本身不像 RNN 那样天然按顺序处理文本,所以需要额外加入位置信息。

例如下面两句话:

1
2
我喜欢你
你喜欢我

它们使用的字类似,但顺序不同,意思也不同。

位置编码的作用就是告诉模型:

1
每个 token 出现在序列中的哪个位置。

这样模型才能区分不同语序带来的语义差异。


7. Attention:注意力机制

注意力机制可以理解为:模型在处理当前 token 时,会判断上下文中哪些 token 更重要。

例如:

1
小明把书放进书包里,因为它很重。

这里的“它”更可能指“书”,而不是“书包”。模型需要根据上下文判断指代关系。

Self-Attention 会计算 token 之间的相关性,让模型知道:

1
当前 token 应该重点关注哪些上下文 token。

Multi-Head Attention 则可以理解为:模型从多个角度看上下文。

一个头可能关注语法关系,另一个头可能关注语义关系,还有一个头可能关注指代关系。


8. 大模型为什么需要很多参数

参数可以理解为模型内部可学习的权重。

参数越多,模型理论上可以存储和表达更复杂的模式。但参数多并不一定就绝对更好,还需要:

  • 高质量数据
  • 合理训练方法
  • 足够算力
  • 好的模型结构
  • 对齐和安全训练
  • 推理优化

大模型能力不是单纯由参数量决定的,而是多个因素共同作用的结果。


9. 大模型的训练流程

一个大语言模型通常会经历几个阶段:

1
预训练 -> 指令微调 -> 偏好对齐 -> 部署与推理优化

9.1 预训练

预训练阶段会使用大量文本数据,让模型学习语言规律和世界知识。

常见数据来源包括:

  • 网页文本
  • 书籍
  • 论文
  • 代码
  • 百科
  • 问答数据

预训练的目标通常是预测下一个 token。

这一阶段成本很高,需要大量 GPU、数据和工程系统。

9.2 指令微调

预训练后的模型虽然会补全文本,但不一定会很好地听人类指令。

例如用户输入:

1
请总结下面这段话

模型需要理解这是一个任务,而不是简单续写。

指令微调就是用大量“指令-回答”数据训练模型,让它学会按照人类指令完成任务。

9.3 偏好对齐

偏好对齐的目标是让模型的回答更符合人类偏好,例如:

  • 更有帮助
  • 更真实
  • 更安全
  • 更符合上下文
  • 不胡编乱造
  • 避免有害输出

常见方法包括 RLHF、DPO 等。

9.4 推理优化

模型训练好之后,还需要部署到线上提供服务。

推理阶段关注:

  • 响应速度
  • 显存占用
  • 并发能力
  • 上下文长度
  • 成本控制
  • 模型量化
  • KV Cache

10. Prompt 是什么

Prompt 就是用户给模型的输入提示。

一个简单的 prompt:

1
请用三句话解释什么是机器学习。

一个更明确的 prompt:

1
你是一名人工智能老师,请用高中生能理解的语言,用三句话解释什么是机器学习,并给一个生活中的例子。

后者通常效果更好,因为它提供了:

  • 角色
  • 目标
  • 受众
  • 输出长度
  • 表达风格
  • 示例要求

11. Prompt 工程常用技巧

11.1 明确角色

1
你是一名资深 Python 后端工程师。

11.2 明确任务

1
请帮我检查下面这段 FastAPI 代码是否存在问题。

11.3 明确输出格式

1
请用 Markdown 表格输出,包含:问题、原因、修改建议。

11.4 给出背景信息

1
这个项目是一个个人博客系统,后端使用 FastAPI,数据库使用 PostgreSQL。

11.5 给出示例

1
2
3
4
5
请按照下面格式输出:

标题:
摘要:
正文:

一个好的 prompt 通常不是越长越好,而是越清楚越好。


12. 大模型的常见参数

调用大模型 API 时,经常会看到一些参数。

12.1 temperature

temperature 控制输出的随机性。

  • 数值低:输出更稳定、更保守
  • 数值高:输出更发散、更有创造性

常见经验:

1
2
写代码、事实问答:temperature 低一些
写故事、头脑风暴:temperature 高一些

12.2 top_p

top_p 也是控制采样范围的参数。

它会从累计概率达到某个阈值的一组 token 中采样。

通常不建议同时大幅调整 temperaturetop_p,除非你清楚自己在做什么。

12.3 max_tokens

max_tokens 控制模型最多生成多少 token。

它不是控制输入长度,而是控制输出长度上限。

12.4 context window

上下文窗口表示模型一次能处理的最大 token 数,包括输入和输出。

如果上下文太长,模型可能无法完整处理,或者成本会明显增加。


13. 大模型的幻觉问题

幻觉是指模型生成了看似合理但实际错误的内容。

例如:

  • 编造不存在的论文
  • 编造 API 参数
  • 编造历史事件
  • 错误引用数据
  • 对不确定的信息给出肯定回答

为什么会有幻觉?

因为模型本质上是在根据概率生成文本,而不是像数据库一样精确检索事实。

减少幻觉的方法:

  • 给模型提供可靠上下文
  • 要求模型说明不确定性
  • 使用 RAG 接入资料库
  • 对关键事实进行外部验证
  • 对输出结果做人工审核
  • 限制模型只基于给定材料回答

14. RAG 是什么

RAG 是 Retrieval-Augmented Generation,中文常译为检索增强生成。

它的基本思路是:

1
先从知识库中检索相关资料,再把资料连同问题一起交给大模型回答。

普通大模型问答:

1
用户问题 -> 大模型 -> 回答

RAG 问答:

1
用户问题 -> 检索系统 -> 相关文档 -> 大模型 -> 回答

RAG 的优点:

  • 可以使用私有知识库
  • 可以更新知识,不必重新训练模型
  • 可以减少幻觉
  • 可以让回答带引用来源
  • 适合企业文档问答、客服、知识库助手

15. RAG 的基本流程

一个简单的 RAG 系统通常包括:

1
文档收集 -> 文档切分 -> 向量化 -> 存入向量数据库 -> 检索 -> 组装 Prompt -> 大模型回答

15.1 文档切分

长文档不能直接全部塞给模型,所以要切成小块。

例如:

1
一篇 10000 字文档 -> 多个 500 字左右的 chunk

切分时要注意:

  • chunk 太小:上下文不完整
  • chunk 太大:检索不精准,成本高
  • 最好保留标题、层级、来源信息

15.2 向量化

向量化就是把文本转成 embedding 向量。

语义相近的文本,向量距离也更近。

15.3 向量数据库

常见向量数据库或检索组件包括:

  • FAISS
  • Milvus
  • Chroma
  • Weaviate
  • pgvector
  • Elasticsearch / OpenSearch

15.4 检索

用户提问后,系统会把问题也转成向量,然后找到最相似的文档片段。

15.5 生成回答

最后把检索到的内容和用户问题一起交给大模型,让模型基于资料回答。


16. 微调是什么

微调是指在已有大模型基础上,用特定数据继续训练,让模型更适合某个任务或领域。

常见微调方式:

  • Full Fine-tuning:全参数微调
  • LoRA:低秩适配
  • QLoRA:量化后的 LoRA 微调
  • Adapter:插入小模块进行训练

微调适合:

  • 固定格式输出
  • 特定语气风格
  • 专业领域任务
  • 分类、抽取、结构化生成
  • 让模型学习某类稳定模式

不适合把频繁变化的知识硬塞进模型。对于经常变化的知识,更推荐 RAG。


17. RAG 和微调怎么选

可以简单这样判断:

需求 更适合
查询企业内部文档 RAG
知识经常更新 RAG
需要引用来源 RAG
固定输出格式 微调
学习特定写作风格 微调
专业领域任务模式稳定 微调
既要知识库又要固定风格 RAG + 微调

一句话总结:

1
知识问题优先 RAG,行为模式问题考虑微调。

18. Agent 是什么

Agent 可以理解为:不只是回答问题,而是能够根据目标进行规划、调用工具、观察结果、继续执行的系统。

普通聊天模型:

1
用户问题 -> 模型回答

Agent:

1
用户目标 -> 模型规划 -> 调用工具 -> 观察结果 -> 调整计划 -> 完成任务

Agent 常见能力:

  • 调用搜索工具
  • 调用数据库
  • 调用代码执行器
  • 调用浏览器
  • 读写文件
  • 调用业务 API
  • 多步骤任务规划

例如用户说:

1
帮我分析这个 CSV 文件,生成图表,并写一份总结。

Agent 可能会执行:

  1. 读取文件
  2. 分析字段
  3. 清洗数据
  4. 生成图表
  5. 总结发现
  6. 输出报告

19. Function Calling / Tool Calling

工具调用是让大模型连接外部系统的重要方式。

模型本身不能真正查数据库、发邮件、下订单、执行代码。它需要通过工具接口完成这些动作。

一个工具调用的过程通常是:

1
2
3
4
5
6
用户提出任务
模型判断需要调用工具
模型生成工具参数
系统执行工具
工具返回结果
模型基于结果继续回答

例如查询天气:

1
2
3
4
5
6
{
"tool_name": "get_weather",
"arguments": {
"city": "Tokyo"
}
}

工具调用让大模型从“会说话”变成“能做事”。


20. 多模态大模型

多模态模型不仅能处理文本,还能处理图像、音频、视频等信息。

常见多模态任务:

  • 图片理解
  • 图表分析
  • OCR 识别
  • 视频摘要
  • 语音对话
  • 文生图
  • 图像编辑
  • 多模态问答

例如:

1
上传一张报错截图,让模型分析问题原因。

或者:

1
上传一张图表,让模型总结趋势。

多模态能力让大模型不再局限于纯文本输入。


21. 大模型应用开发常见架构

一个典型的大模型应用可能包含:

1
2
3
4
5
6
7
8
9
10
11
前端页面

后端 API

Prompt 模板

模型 API / 本地模型

工具系统 / RAG 系统

数据库 / 向量库 / 文件系统

常见组件:

  • 前端:React、Vue、Next.js
  • 后端:FastAPI、Flask、Node.js
  • 模型接口:OpenAI API、Anthropic API、本地模型服务
  • 向量库:FAISS、Milvus、Chroma、pgvector
  • 编排框架:LangChain、LlamaIndex、Haystack
  • 数据库:PostgreSQL、MySQL、MongoDB
  • 缓存:Redis
  • 部署:Docker、Kubernetes、云服务

22. 学习大模型需要掌握哪些基础

22.1 Python 基础

需要掌握:

  • 函数
  • 虚拟环境
  • 包管理
  • 文件读写
  • API 请求
  • 常用数据结构

22.2 机器学习基础

建议了解:

  • 训练集、验证集、测试集
  • 损失函数
  • 梯度下降
  • 过拟合
  • 神经网络
  • embedding

22.3 深度学习基础

建议了解:

  • 张量
  • 反向传播
  • 激活函数
  • 优化器
  • GPU 训练
  • Transformer

22.4 工程基础

做大模型应用时,工程能力非常重要:

  • HTTP API
  • 数据库
  • Docker
  • 日志
  • 异步任务
  • 权限控制
  • 成本控制
  • 监控告警

23. 大模型学习路线

可以按下面路线学习:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Python 基础

机器学习基础

深度学习基础

Transformer 原理

Prompt 工程

调用大模型 API

RAG 应用开发

Agent 和工具调用

模型微调

部署和优化

如果以应用开发为目标,可以先学:

1
Prompt -> API 调用 -> RAG -> Agent -> 部署

如果以算法研究为目标,可以先学:

1
数学基础 -> 机器学习 -> 深度学习 -> Transformer -> 训练优化

24. 一个简单的大模型 API 调用示例

下面用伪代码展示一次模型调用的大致过程:

1
2
3
4
5
6
7
8
9
10
11
12
13
from openai import OpenAI

client = OpenAI()

response = client.chat.completions.create(
model="gpt-4.1-mini",
messages=[
{"role": "system", "content": "你是一名耐心的人工智能老师。"},
{"role": "user", "content": "请解释什么是 RAG。"},
],
)

print(response.choices[0].message.content)

核心是 messages

1
2
3
4
messages=[
{"role": "system", "content": "设定模型角色和行为"},
{"role": "user", "content": "用户问题"},
]

在真实项目中,还需要考虑:

  • API Key 管理
  • 异常处理
  • 超时重试
  • 日志记录
  • Token 成本
  • 流式输出
  • 上下文截断

25. 一个简单 RAG Prompt 模板

1
2
3
4
5
6
7
8
9
10
你是一个知识库问答助手。请只基于下面提供的资料回答问题。
如果资料中没有答案,请回答“资料中没有提到”。

资料:
{context}

问题:
{question}

回答:

这个模板的重点是约束模型:

1
只基于资料回答,不要自由发挥。

这可以降低幻觉风险。


26. 大模型应用开发要注意的问题

26.1 成本控制

大模型调用通常按 token 计费。需要注意:

  • 不要无意义地塞入过长上下文
  • 对长文档先切分和检索
  • 对重复问题做缓存
  • 控制最大输出长度
  • 根据任务选择合适模型

26.2 响应速度

影响响应速度的因素包括:

  • 模型大小
  • 输入长度
  • 输出长度
  • 网络延迟
  • 是否使用流式输出
  • 是否需要检索或工具调用

26.3 数据安全

企业应用尤其要注意:

  • 不要泄露 API Key
  • 不要把敏感数据发给不可信服务
  • 对用户输入做权限控制
  • 对工具调用做安全限制
  • 对日志中的敏感信息做脱敏

26.4 可观测性

上线后需要记录:

  • 请求耗时
  • 输入 token 数
  • 输出 token 数
  • 错误率
  • 检索命中率
  • 用户反馈
  • 模型回答质量

没有可观测性,就很难持续优化大模型应用。


27. 常见误区

27.1 大模型等于搜索引擎

大模型不是搜索引擎。它可以生成答案,但不保证答案一定真实。需要实时信息时,最好结合搜索或数据库。

27.2 参数越大一定越好

参数大通常能力更强,但也意味着成本更高、速度更慢。实际项目中要根据任务选择合适模型。

27.3 Prompt 可以解决一切问题

Prompt 很重要,但不是万能的。数据质量、系统架构、检索效果、工具设计都很重要。

27.4 RAG 一定能消除幻觉

RAG 可以减少幻觉,但不能完全消除。检索错误、文档质量差、Prompt 约束弱,仍然可能导致错误回答。

27.5 微调可以让模型记住所有知识

微调更适合学习行为模式和输出风格,不适合频繁更新的知识库。知识更新更适合 RAG。


28. 总结

大模型的核心可以从三个层面理解:

1
2
3
原理层:Transformer、Attention、Token、Embedding
应用层:Prompt、RAG、Agent、Tool Calling
工程层:API、数据库、向量库、部署、监控、成本控制

学习大模型时,不需要一开始就追求把所有数学细节都弄懂。更好的方式是:

  1. 先会用模型 API 做简单应用
  2. 再理解 Prompt 和上下文管理
  3. 然后学习 RAG 和 Agent
  4. 最后深入 Transformer、微调和部署优化

一句话总结:

1
大模型不是魔法,它是模型能力、数据、Prompt、工具、系统工程共同作用的结果。

参考关键词

后续可以继续深入学习这些关键词:

  • Transformer
  • Attention
  • Tokenizer
  • Embedding
  • Pre-training
  • Instruction Tuning
  • RLHF
  • DPO
  • RAG
  • Vector Database
  • Agent
  • Function Calling
  • Fine-tuning
  • LoRA
  • Quantization
  • KV Cache
  • Context Window
  • Prompt Engineering

大模型学习笔记:从 Transformer 到 Prompt、RAG 与 Agent
http://zncddh.cn/2026/04/23/大模型学习笔记:从-Transformer-到-Prompt、RAG-与-Agent/
作者
creativity
发布于
2026年4月24日
许可协议