AI 大模型应用开发知识体系详解
大模型应用开发已从简单的 API 调用演进为一整套涵盖基础原理、提示工程、检索增强生成(RAG)、智能体、微调、部署与监控的工程化体系。以下按从基石到前沿的顺序,全面梳理核心知识点并附详解。
一、大模型技术基石
1.1 Transformer 与注意力机制
-
核心思想:抛弃循环结构,完全基于自注意力捕捉全局依赖关系。
-
自注意力:对输入序列中每个词,计算它与其他所有词的关联分数,加权求和得到上下文表示。公式为
Attention(Q,K,V) = softmax(QK^T/√d_k)V。 -
多头注意力:并行进行多组注意力计算,让模型从不同子空间学习特征。
-
位置编码:因 Transformer 没有时序概念,需加入正弦或可学习的位置编码。
-
为何重要:大模型的并行训练能力、长程依赖捕捉、缩放定律都基于此架构,理解它能帮你在开发中定位上下文窗口限制、推理成本等问题。
1.2 预训练 → 指令微调 → 对齐
-
预训练:在海量语料上做下一个 token 预测,获得通用语言能力与知识。
-
指令微调:用 (指令, 答案) 对训练模型遵循人类意图,是应用开发直接依赖的能力。
-
RLHF/DPO:基于人类偏好进一步对齐,使回答更有用、无害。DPO 直接用偏好对优化而无需显式奖励模型,训练更稳定。
-
开发启示:你调用的 API 已经过这些阶段,理解其训练范式能帮助预判模型行为,例如何时容易产生幻觉、为什么需要系统提示词。
1.3 Tokenization 与嵌入
-
Token 化:将文本切分为模型可识别的最小单元。主流算法 BPE、SentencePiece。一个中文汉字大致 1.5~2 个 token。
-
为什么重要:API 计费按 token,上下文窗口受 token 数限制。设计 prompt 时需控制长度,并了解 token 边界对生成质量的影响(如数字、代码的切分)。
-
嵌入向量:把文本映射到高维语义空间的稠密向量,语义相近的文本向量距离近。用于 RAG 的语义检索、聚类、分类。
-
嵌入模型选型:如 text-embedding-3、BGE、E5 等,需关注维度、最大长度、MTEB 基准得分。
1.4 解码策略
-
贪心搜索:每步选概率最高 token,确定性强,但易产生重复。
-
Temperature:控制概率分布的尖锐程度。高值(>1)增加随机性,低值(<0.5)近乎确定。
-
Top-p(核采样):只从累积概率达 p 的最小 token 集合中采样,动态调整候选集。
-
Top-k:仅从概率最高的 k 个 token 中采样。
-
频率/存在惩罚:抑制已出现词,减少重复。
-
实践:创意生成用高 temp + top-p;代码/事实性任务用低 temp 或 greedy。
1.5 大模型的固有边界
-
幻觉:生成看似合理但事实错误的内容。源于统计模式匹配而非真正的理解。
-
知识截止:训练数据有截止日期,实时信息无法回答。
-
上下文窗口:一次可处理的最大 token 数限制了多轮对话和长文档。
-
推理能力局限:纯语言模型在多步逻辑、数学推理中易出错,需要思维链或外部分工具辅助。
-
应对之道:RAG 注入外部知识,Agent 调用工具,严格输出格式约束,以及人工审核回路。
二、提示工程与 LLM 编程范式
2.1 提示工程方法论
-
零样本提示:直接提问,依赖模型已有能力。
-
少样本提示:提供 2~5 个示例,帮助模型理解任务格式和风格。
-
思维链:在示例或指令中加入“让我们一步一步思考”,引导模型产生中间推理步骤,大幅提升复杂推理准确率。
-
自一致性:生成多条思维链并投票选出最一致答案。
-
ReAct:交替进行推理与行动,让模型解释下一步要做什么并调用工具,是 Agent 的基础模式。
-
提示结构:角色、目标、步骤、约束、输出格式、示例。系统提示词用于设定整体行为,用户提示词承载具体任务。
2.2 结构化输出与函数调用
-
JSON 模式:指导模型输出合法 JSON,便于下游解析。可使用 constrained decoding 强制语法合规(如 outlines、guidance 库)。
-
Function Calling / Tool Use:模型不直接执行函数,而是输出函数名和参数 JSON,由你的应用执行。这实现了模型与外部系统安全衔接。
-
实践要点:函数描述需精确;定义清晰的参数 schema;处理模型不调用或参数错误的情况;考虑多重调用和并行调用。
2.3 API 调用与流式处理
-
Chat Completion API:构造 messages 列表(system/user/assistant/tool),获得生成结果。
-
流式响应:设置
stream=True,通过 SSE 逐步接收 token,实现打字机效果,降低用户等待感。 -
异步与并发:使用
AsyncOpenAI或协程池处理大量请求,配合速率限制(RPM/TPM)控制器。 -
错误处理:网络重试、超时、内容过滤触发等,需实现指数退避重试和降级策略。
2.4 上下文与记忆管理
-
短期记忆:将历史消息填入 messages 列表。受窗口限制,需裁剪或摘要压缩。
-
滑动窗口 + 摘要:保留最近 N 轮对话,将更早内容用模型摘要后作为系统消息注入。
-
持久化记忆:将关键事实抽取为实体-关系,存入数据库或向量库,新对话时检索相关记忆注入 prompt。
-
Token 计数:使用
tiktoken等库精确计数,确保不超限并预留输出空间。
三、核心应用框架
3.1 LangChain & LangGraph
-
LangChain:
-
Chain:将 LLM 调用与其他组件串联(如 prompt + LLM + 输出解析器)。
-
Agent:封装了 ReAct/工具调用的决策循环。
-
Tool:把任意 Python 函数包装为工具描述接口。
-
Memory:多种对话记忆形式。
-
适合快速原型搭建,但高度抽象有时难以调试,生产环境需谨慎定制。
-
-
LangGraph:用于构建有状态、多参与者的 Agent 工作流,核心是状态图(节点=计算步骤,边=条件流转)。支持并行分支、检查点与回溯。Agent 开发的事实标准之一。
3.2 LlamaIndex
-
专注于数据索引与检索增强生成。
-
核心概念:
-
Document→Node解析为节点。 -
IngestionPipeline:加载、切分、嵌入、存储一体化。 -
QueryEngine:封装检索-生成过程。 -
ChatEngine:结合对话上下文的检索式问答。
-
-
提供丰富的检索策略:递归检索、子问题查询、多跳推理等,是 RAG 应用的首选库之一。
3.3 其他重要工具与协议
-
DSPy:声明式编程框架,用程序定义 LLM 管道,自动优化提示和少样本示例,将提示工程转为超参优化。适合追求高性能、可复现的项目。
-
MCP:Anthropic 提出的开放协议,标准化 AI 模型与外部工具/数据源的连接方式。实现一个 MCP 服务器即可被任何支持 MCP 的客户端调用,极大降低工具集成成本。
-
A2A:Google 推出的 Agent-to-Agent 协议,使不同框架构建的 Agent 可以相互发现、通信与协作。多 Agent 系统互操作的基础。
-
Ollama:本地运行开源模型的简易工具,适合开发和测试。
四、检索增强生成(RAG)
4.1 RAG 流程与设计
-
离线索引:加载文档 → 文本提取 → 智能分块 → 向量化 → 存入向量库。
-
在线查询:用户问题向量化 → 在向量库中检索 Top-K 相关块 → 拼接成上下文 → 与提示词一起送 LLM 生成答案。
-
适用场景:企业内部知识库问答、文档辅助撰写、客服、合规审查等需基于特定数据的场景。
4.2 文档解析与分块策略
-
解析:PDF 需处理多栏、表格、扫描件;使用
PyMuPDF、Unstructured、LlamaParse(云解析)等。 -
分块:
-
固定大小重叠:最基础,如 512 token,重叠 50 token。
-
语义分块:依据句子或段落的嵌入相似度边界来切分,保持语义完整。
-
递归分块:按段落→句子→词逐级分割。
-
保留元数据:文档标题、页码、日期等,用于过滤和溯源。
-
-
块大小权衡:小块提升检索精度,但可能丢失上下文;大块保留上下文,但检索相关性可能稀释。常采用小检索大上下文:检索时用小粒度,返回结果时扩展相邻块或整段文档。
4.3 嵌入与向量数据库
-
嵌入模型选择:维度、最大 token、多语言、适配领域(如代码、医学)。可用
sentence-transformers评估。 -
向量数据库:
-
Chroma:轻量,适合原型。
-
Milvus / Zilliz Cloud:分布式高性能,十亿级。
-
Pinecone:全托管,上手快。
-
Weaviate / Qdrant:混合搜索能力强。
-
pgvector:基于 PostgreSQL,与业务库同库。
-
-
索引类型:HNSW、IVF 等,影响召回率与速度。
4.4 检索优化与重排序
-
混合检索:结合稀疏检索(BM25,对关键词敏感)与稠密检索(向量语义),利用
加权和或倒数排名融合综合排序。 -
元数据过滤:只在特定日期、来源、分类内检索,缩小范围提升精度。
-
重排序:用重排序模型(如 Cohere Rerank、BGE-Reranker)对检索的 Top-K 结果重新打分,大幅提升相关块排序。实践经验:初次检索取较多结果(如 20-30),经重排序筛选前 5-10 送入 LLM。
4.5 高级 RAG 范式
-
Self-RAG:模型自我反思,判断是否需要检索,评价检索结果的相关性与支持度,选择性地采纳。
-
Corrective RAG:对检索文档进行相关性评估,不相关则回退到网页搜索等替代来源,自我修正。
-
Graph RAG:从文档中提取实体和关系构建知识图谱,检索时提取子图与向量块共同构成上下文,回答全局性、总结性问题效果显著(如 Microsoft GraphRAG)。
-
多跳 RAG:复杂问题需从多个文档中逐步获取信息,可结合子问题拆分、迭代检索。
4.6 RAG 评估
-
忠实度:回答是否完全基于提供的上下文,不捏造事实。
-
答案相关度:答案是否回应了问题。
-
上下文精度与召回:检索到的块是否相关、是否遗漏关键信息。
-
评估工具:RAGAS 框架自动化评估,LangSmith/LangFuse 进行线上观测与评估。
五、AI Agent(智能体)
5.1 Agent 核心原理
-
感知 → 规划 → 行动:接收目标与观察,决定下一步调用哪个工具并组织参数,将结果反馈回推理循环。
-
ReAct 模式:思考行动交织,每步输出
思考:我需要查天气… 行动:get_weather(城市)。 -
工具定义:名称、自然语言描述、参数 JSON schema。描述质量直接影响模型选择正确性。
-
执行循环:模型生成调用指令 → 沙盒执行并返回结果 → 将结果作为新 observation 注入消息 → 模型决定下一步或终止。
5.2 Function Calling 与 MCP 协议
-
原生 Function Calling:OpenAI/Anthropic/国产模型原生支持输出结构化工具调用,由平台端执行。
-
MCP 协议:标准化客户端-服务器架构。Agent 充当 MCP 客户端,连接到各种 MCP 服务器(文件系统、数据库、浏览器、API)。服务器暴露资源、工具和提示模板,实现插拔式工具生态。
-
实现要点:工具执行必须安全隔离(沙盒、权限控制);超时与错误处理;避免循环和无限递归。
5.3 规划与记忆
-
规划策略:
-
结构化计划:先规划任务步骤列表(Plan),再逐步执行。
-
动态执行:边做边调整。
-
思维树:探索多条路径并回溯评估。
-
-
记忆系统:
-
工作记忆:当前对话历史。
-
短期记忆:会话窗口内上下文。
-
长期记忆:将事件、事实存储到向量库,检索相关记忆增强推理。可结合知识图谱记忆。
-
情景记忆:存储成功/失败经验供以后参考。
-
5.4 多 Agent 协作
-
协作模式:
-
顺序:一个 Agent 输出作为另一个输入。
-
辩论/竞争:多个 Agent 生成候选答案并互相批评,最终融合。
-
层级:管理者 Agent 分配任务、汇总结果。
-
-
框架:AutoGen(微软)、CrewAI、LangGraph 多 Agent。
-
A2A 协议:让不同实现、不同供应商的 Agent 能够互操作,支持任务委托、结果传输和状态同步。多 Agent 系统的“HTTP”。
5.5 Agent 安全
-
提示注入:通过工具返回的内容或第三方数据注入恶意指令。需对工具输入输出做清理、权限最小化、人工确认危险操作。
-
越狱:用精心构造的提示绕过安全约束。实施输入护栏、内容审核。
-
预算与速率控制:限制 Agent 的最大步数、总 token 消耗、工具调用次数。
六、模型微调
6.1 微调时机与策略
-
何时微调:需要模型学习特定风格、格式、领域知识,且 RAG 或提示工程无法满足;或需降低延迟/成本(小模型+微调替代大模型)。
-
全量微调:更新所有参数,需大量 GPU 内存,容易灾难性遗忘。
-
高效参数微调:
-
LoRA:冻结原模型,注入可训练的低秩矩阵,参数量极小。
-
QLoRA:在 4-bit 量化模型上应用 LoRA,进一步降低显存。
-
Prefix-Tuning / Adapter:类似思想。
-
-
推荐实践:优先 QLoRA 微调 7B~70B 开源模型,单卡/多卡皆可,成本低,效果不亚于全参微调。
6.2 数据构建
-
指令数据格式:
{"instruction": "...", "input": "...", "output": "..."}。 -
数据来源:人工标注、现有数据集洗牌、用强模型蒸馏(合成数据)。
-
质量大于数量:几百条高质量、多样化、准确的示例即可显著改善特定任务。
-
数据清洗:去重、去除格式错误、过滤有害内容、长度截断、任务分布平衡。
6.3 微调工具链
-
Hugging Face Transformers + PEFT + TRL:基本库,适合自定义训练。
-
LLaMA-Factory:图形化+命令行一体,支持上百种模型,集成 LoRA/QLoRA、全参微调、DPO、奖励建模等。微调入门和快速迭代首选。
-
Axolotl:配置驱动,丰富的数据集格式支持。
-
评估:训练/验证 loss,以及针对任务的人工或自动评测(如 BLEU、ROUGE、LLM-as-judge)。
6.4 微调 vs RAG 决策
|
特性 |
微调 |
RAG |
|
知识更新 |
重新训练 |
实时更新向量库 |
|
外部知识依赖 |
内化到模型权重 |
在上下文中注入 |
|
风格/格式控制 |
强 |
弱(依赖提示) |
|
幻觉控制 |
可能内化错误 |
可溯源,便于审核 |
|
成本 |
前期训练成本高 |
推理时检索开销 |
七、模型部署与推理优化
7.1 模型量化
-
目标:降低内存/显存占用,提高推理速度,精度损失可控。
-
GPTQ:训练后量化,需校准数据集,适用于 GPU。
-
AWQ:激活感知权重量化,保护重要权重,精度更高。
-
bitsandbytes:支持 LoRA 训练和推理时的 4/8 bit 量化,与 Hugging Face 无缝集成。
-
GGUF + llama.cpp:用于 CPU/Apple Silicon 边缘推理的量化格式。
7.2 推理引擎
-
vLLM:PagedAttention 实现高吞吐连续批处理,支持多模型服务,是生产环境部署的首选。
-
TensorRT-LLM:NVIDIA 深度优化的推理引擎,利用 Tensor Cores,极致性能。
-
TGI:Hugging Face 文本生成推理,易用,兼容 HF 生态。
-
Ollama:本地开发测试,一行命令运行模型。
-
选型考虑:吞吐、延迟、并发用户数、模型并行、多 LoRA 热加载等。
7.3 部署架构
-
模型网关:统一入口,路由请求到不同模型,实现 AB 测试、灰度发布。
-
自动扩缩:基于请求队列长度自动增减实例。
-
KV Cache 优化:KV 缓存管理直接影响并发能力,长上下文的缓存压缩技术如 MLA(Multi-Query Latent Attention)等也很重要。
-
安全防护:在网关层集成内容审核、敏感词过滤、速率限制。
八、生产级系统设计
8.1 缓存与成本控制
-
精确缓存:对相同 prompt 返回缓存结果,适合系统提示固定、用户查询重复的场景。多数 API 提供内置语义无关缓存。
-
语义缓存:基于嵌入相似度,两个语义相近的查询可命中同一缓存。使用向量库 + 阈值判断,需权衡命中率与错答风险。
-
成本路由:简单任务(分类、摘要)路由到便宜小模型(如 GPT-4o mini),复杂任务(多步推理)用强模型。
-
Token 预算:根据用户等级或查询复杂度设置 token 上限,避免成本爆炸。
8.2 安全护栏
-
输入护栏:检测提示注入、越狱、恶意内容,拒绝或清洗。
-
输出护栏:事实一致性核对、敏感信息脱敏、禁止生成违规内容。
-
NeMo Guardrails / Guardrails AI:编排 LLM 对话的可编程护栏,定义主题、事实核查、逻辑流程。
-
人类在环:高风险操作(支付、发送邮件)需人工确认后才执行。
8.3 监控与可观测性
-
指标:延迟(P50/P99)、token 消耗、错误率、缓存命中率、用户留存。
-
追踪:全链路记录每步 LLM 调用、检索、工具执行。工具:LangSmith、LangFuse、Weights & Biases。
-
评估管线:线上采样回答,用自动评测(LLM-as-judge)或人工抽检评估忠实度、有用性,建立持续改进闭环。
8.4 架构模式总结
-
简单对话:API + 记忆管理。
-
知识库问答:RAG 管线 + 混合检索 + 重排序。
-
自动化助手:Agent 循环 + 工具 + MCP 集成。
-
多模态助手:图像/音频/视频理解 + 语音合成。
-
复合系统:多个模型、工具、Agent 组合,由编排器调度。
九、多模态应用开发
9.1 视觉语言模型
-
GPT-4o / Gemini 2.5 / Claude 4:原生支持图像和视频帧输入,理解图表、UI、自然场景。
-
应用:截图问答、表单理解、图像描述生成、视觉辅助。
-
处理方式:将图片以 base64 或 URL 传入 messages 中的
image_url内容块。
9.2 语音交互
-
语音转文本:Whisper(OpenAI 开源)或云端 API,支持多语言,鲁棒性强。
-
文本转语音:TTS API(如 OpenAI TTS、ElevenLabs),生成自然语音。
-
全双工会话:结合 VAD 检测、流式 STT+TTS 实现低延迟语音 Agent。
9.3 多模态 RAG
-
文本 + 图片混合检索:使用 CLIP 等多模态嵌入模型将图文映射到同一向量空间,实现以文搜图或以图搜文,并基于检索结果生成回答。
-
文档中图表理解:解析 PDF 时提取图表并转为描述性文本或直接传给多模态模型处理。
十、学习路径与未来趋势
推荐学习路径
-
基础:Python 异步编程、PyTorch 基础、Transformer 原理、API 调用与流式处理。
-
提示工程:少样本、CoT、结构化输出,熟练掌握 Function Calling。
-
RAG 实战:用 LlamaIndex/LangChain 搭建端到端 RAG,理解分块、嵌入、检索、重排。
-
Agent 开发:从简单 ReAct 开始,到基于 LangGraph/AutoGen 的复杂多 Agent 系统,理解 MCP 工具集成。
-
微调模型:使用 LLaMA-Factory 对开源模型做 LoRA 微调,构建专有模型。
-
部署优化:用 vLLM 部署模型,掌握量化与缓存,保障生产吞吐。
-
安全与评估:构建护栏和自动化评测,形成持续交付能力。
2026 年关键趋势
-
长上下文成为标配:百万级 token 窗口让 RAG 的“检索-拼凑”模式受到挑战,直接全文输入成为可行方案,但成本与延迟仍需权衡。
-
混合推理:模型可动态切换快/慢思考,应用需适配不同的推理预算。
-
Agent 互联网:基于 A2A 等协议的跨组织 Agent 协作,自动化工作流将延伸到企业间。
-
MCP 生态爆发:工具插件化、标准化,Agent 开发更侧重组装而非手工定制调用。
-
小语言模型崛起:1~8B 参数模型在推理优化后,能在移动端、浏览器内跑复杂的 RAG 和 Agent,隐私计算成为卖点。
掌握以上知识体系,你就能从单次 API 调用进阶到设计、构建和运营复杂的、生产级的 AI 大模型应用。
更多推荐

所有评论(0)