简介:RAG(检索增强生成)是AI应用开发与Agent岗位面试中出现频率最高的基础考点。本文系统讲解RAG的定义、要解决的问题、系统核心组成与完整工作流程,并对比RAG与微调的优劣势和适用边界,帮你从原理到落地建立完整知识框架,从容应对面试。
在AI应用开发、大模型算法与Agent方向的岗位面试中,RAG(检索增强生成)几乎是出场率最高的基础考点。它既是大模型从“通用对话”走向“企业级知识问答”的关键架构,也是面试官快速判断候选人工程理解深度的最佳切入点。本文以“定义”为主线,把RAG从原理到线上落地完整梳理一遍,帮助你系统准备AI岗位面试。
RAG(Retrieval-Augmented Generation,检索增强生成)是一种将信息检索与大模型生成相结合的技术架构:在模型作答之前,系统先从外部知识库(企业文档、数据库记录、网页内容等)中检索出与当前问题相关的资料,再将“检索结果+用户问题”一起输入大模型,由模型基于给定资料生成答案。
一句话概括:RAG=检索(Retrieval)+增强(Augmented)+生成(Generation)。通俗地说,它把大模型从“闭卷考试”变成“开卷考试”——先查资料,再作答。
可以从三个视角加深理解:
大模型直接用于业务时存在四类典型痛点,这正是RAG流行的原因,也是面试必答要点:
完整的RAG系统由离线索引与在线问答两条链路组成,核心模块如下:
流程分为两阶段,可用两行链路概括:
一段通用示意伪代码:
# 离线:构建知识库索引for doc in load_documents("知识库目录"):chunks = split_text(doc, size=500, overlap=50) # 文本切分vectors = embedding_model.encode(chunks) # 向量化vector_db.upsert(texts=chunks, vectors=vectors,metadata={"source": doc.source}) # 入库# 在线:检索增强问答def rag_answer(question: str) -> str:q_vec = embedding_model.encode(question)hits = vector_db.search(q_vec, top_k=5) # 召回hits = reranker.rerank(question, hits)[:3] # 精排context = "\n".join(h.text for h in hits)prompt = (f"请仅依据以下资料回答问题,资料中没有依据时请直接说明:\n"f"{context}\n问题:{question}")return llm.generate(prompt)
面试中描述流程时,建议突出三个关键点:一是查询侧的改写与补全,把口语化提问改写为更利于检索的形式;二是检索侧的混合检索与重排序;三是生成侧的“依据约束”,让模型只基于资料作答。这三点最能体现候选人对线上系统而非玩具演示的理解。
这是与“RAG是什么”并列的高频考题。两者本质区别一句话:RAG改变模型“知道什么”(知识注入),微调改变模型“如何表现”(行为对齐)。
| 对比维度 | RAG | 微调 |
|---|---|---|
| 核心作用 | 注入外部、可变的知识 | 对齐风格、格式与领域行为 |
| 知识更新 | 更新文档即可,分钟级 | 需重新训练,周期长 |
| 数据要求 | 原始文档即可,无需标注 | 需要高质量标注数据 |
| 可溯源性 | 可附带引用来源,便于核验 | 知识内化于参数,难以溯源 |
| 成本结构 | 工程与推理成本为主 | 训练算力与数据成本高 |
| 响应链路 | 检索+生成,延迟略高 | 直接生成,链路更短 |
| 主要风险 | 检索质量决定上限 | 可能损害通用能力 |
RAG的优势在于:知识可实时更新、答案可溯源、无需训练即可落地、适合知识频繁变化的场景;劣势在于:检索环节增加延迟与工程复杂度、上下文窗口有限、检索不准会连累生成质量。
微调的优势在于:能改变输出风格、格式与领域用语习惯,让模型“内化”稳定知识与行为;劣势在于:更新知识需重新训练、成本高、可能遗忘通用能力、答案无法溯源。
实践结论:二者不是二选一,而是组合关系——用微调教会模型“以什么身份、按什么格式、用什么风格回答”,用RAG提供“最新的、企业私有的事实知识”。面试中给出这一层判断,通常能获得较高评价。
围绕RAG,面试官的问题可归纳为六个层次,建议逐层准备:
准备方法上给出三条建议:其一,按“定义→问题→架构→流程→评估→优化”的主线搭建知识框架,回答时先总后分;其二,亲手搭建一个最小可用系统并做一两次调参实验,形成真实体感,面试中的细节表达会完全不同;其三,准备一两个量化结论或踩坑案例,例如“切分粒度调整后命中率的变化”,这类具体表达最能体现工程能力。
回到定义本身:RAG是把信息检索与大模型生成相结合的架构,用“开卷考试”的方式解决大模型知识时效性不足、私有知识缺失、幻觉与更新成本四类问题。它的核心价值在于以较低成本、较高可控性把企业知识接入大模型,让答案可溯源;它的边界在于效果高度依赖检索质量,且无法替代微调在行为与风格对齐上的作用。对准备AI岗位面试的候选人而言,把RAG的定义、流程、评估与优化讲清楚,既是通过面试的门票,更是理解整个大模型应用工程体系的第一块基石。