新闻详情

新闻详情

首页 / 资讯中心 / 详情

Retrieval-Augmented Generation (RAG) 检索增强生成

发布时间:2026/9/3 2:42:35来源:尧图网络
Retrieval-Augmented Generation (RAG) 检索增强生成
Retrieval-Augmented Generation (RAG) 检索增强生成一、通俗定义检索增强生成给大模型外挂外部知识库回答前先从自有文档检索相关内容再交给模型生成答案。 解决原生大模型两大痛点知识截止模型训练数据有时间上限不知道最新信息幻觉Hallucination凭空编造不存在的事实、数据。你前面全套工具链all-MiniLM-L6-v2RecursiveCharacterTextSplitterHuggingFaceEmbeddings Chroma就是标准 RAG 底层组件。二、完整两大阶段索引阶段 查询阶段阶段 1离线索引文档入库一次性执行加载文档PDF/Markdown/TXT/ 网页等原始资料Document Chunking 文档分块用RecursiveCharacterTextSplitter切小块避免超长文本超出 Embedding 模型 512token 限制保留局部完整语义设置 overlap 防止逻辑断裂。Embedding 向量化通过HuggingFaceEmbeddings调用蒸馏轻量模型all-MiniLM-L6-v2每段 chunk 转为 384 维数值向量。存入向量数据库Chroma/FAISS/Milvus 保存「文本 chunk 对应向量」支持快速相似度检索。阶段 2在线问答用户提问实时流程Query Embedding用户问题编码成相同维度向量语义检索 Retrieval在向量库计算余弦相似度召回 Top-K 最相关文档片段Prompt 拼接增强上下文把检索到的真实文档片段 用户问题一起塞进 Prompt限制模型只能基于提供的资料作答LLM Generation 生成回答大模型依据检索到的真实素材输出答案大幅减少瞎编。三、极简流程图原始文档 → 分块 → Embedding 向量 → 向量库存储 用户提问 → 向量化 → 检索相似 Chunk → 拼接上下文 Prompt → LLM 生成答案四、核心组件对应你之前学的内容表格环节工具 / 模型作用分块RecursiveCharacterTextSplitter切割长文本控制 token 长度嵌入封装langchain_huggingface.HuggingFaceEmbeddingsLangChain 统一接口加载向量化模型向量模型all-MiniLM-L6-v2蒸馏轻量化语义编码384 维归一化向量快速余弦匹配向量存储Chroma本地轻量向量数据库存储并检索文本向量五、RAG 的核心优势消除幻觉所有回答依托自有真实文档模型不能随意编造数据、案例、条款动态更新知识新增文档只需重新分块入库不用重新微调 / 蒸馏大模型成本极低降低微调成本不需要大量标注数据训练大模型纯检索方案轻量化落地节约上下文窗口只检索相关片段不用把全部文档喂给 LLM节省 token 开销、提升速度、降低 API 费用可溯源回答可以附带引用对应的原始文档片段方便核验信息真伪。六、基础 RAG 代码完整串联整合你所有知识点python运行from langchain_huggingface import HuggingFaceEmbeddings from langchain.text_splitter import RecursiveCharacterTextSplitter from langchain_community.vectorstores import Chroma # 1. 加载蒸馏嵌入模型 all-MiniLM-L6-v2 embeddings HuggingFaceEmbeddings( model_nameall-MiniLM-L6-v2, model_kwargs{device: cpu}, encode_kwargs{normalize_embeddings: True} ) # 2. 定义token统计函数 def token_counter(text): return len(embeddings.client.tokenizer.encode(text)) # 3. 递归字符分块器 splitter RecursiveCharacterTextSplitter( chunk_size400, chunk_overlap80, length_functiontoken_counter, separators[\n\n, \n, . , ! , ? ] ) # 自有知识库文本 docs_raw Retrieval Augmented Generation (RAG) combines retrieval and LLM generation. First split documents into chunks via RecursiveCharacterTextSplitter. Then encode chunks with distilled embedding model all-MiniLM-L6-v2. Vectors are stored in vector database like Chroma for semantic search. When user asks a question, retrieve relevant chunks as context for LLM, reduce hallucination. Knowledge distillation compresses large BERT into small MiniLM without heavy performance loss. # 分块 chunks splitter.split_text(docs_raw) # 构建向量库 vector_db Chroma.from_texts( textschunks, embeddingembeddings, persist_directory./rag_db ) vector_db.persist() # 检索环节用户查询 query What is RAG and how does MiniLM work in the pipeline? relevant_chunks vector_db.similarity_search(query, k2) # 打印检索到的增强上下文 for idx, doc in enumerate(relevant_chunks): print(f检索片段{idx1}\n{doc.page_content}\n)七、RAG 分层演进行业分级基础 RAG上面代码单次检索、简单拼接上下文适合简单知识库进阶 RAG重写 QueryHyde/Query Expansion优化检索语句提升召回分层分块父子检索 Parent-Child小块检索、大块提供完整上下文重排序 Rerank检索后用交叉编码器过滤无关片段高级 Agentic RAG搭配工具调用、多轮检索、自校验、反思处理复杂多步骤问答。八、常见局限与优化方向检索不准→ 优化 chunk 大小 /overlap、使用 rerank 模型、更换更强 Embedding上下文溢出→ 限制 Top-K 数量、精简 chunk无关噪声片段→ 增加重排序过滤低相似度内容领域语义弱→ 使用领域微调 Embedding而非通用 MiniLM。九、一句话总结RAG 依靠文档分块 蒸馏嵌入模型语义检索调取私有资料给大模型提供真实外部上下文是低成本解决大模型知识滞后、生成幻觉的主流工程方案。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

MaxEnt生态位模型:从最大熵原理到实战应用与报错排查 2026/9/3 2:40:26

MaxEnt生态位模型:从最大熵原理到实战应用与报错排查

简介:本资源是一份面向自然语言处理初学者与机器学习实践者的最大熵模型(MaxEnt)入门实践包,聚焦中文文本分类任务,解决特征建模、概率预测与模型可解释性等核心问题。压缩包共8个文件,含4个文本文件&#…

阅读更多 →
MATLAB无线传感网络能耗仿真:从建模到源码实现与优化 2026/9/3 2:40:26

MATLAB无线传感网络能耗仿真:从建模到源码实现与优化

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
吸波与阻抗匹配:电磁兼容设计的核心协同机制 2026/9/3 2:40:26

吸波与阻抗匹配:电磁兼容设计的核心协同机制

简介:本资源面向射频工程、天线设计及电磁材料研究领域的初/中级工程师与高校研究生,聚焦吸波材料建模与阻抗匹配网络的联合仿真与优化实践。资源包共16个文件(22KB),含11个MATLAB脚本(如main.m、reflectio…

阅读更多 →
AI Agent开发实战:从核心架构到天气查询助手构建 2026/9/3 2:40:26

AI Agent开发实战:从核心架构到天气查询助手构建

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
DaVinci Resolve 21 从下载安装到稳定运行:避坑指南与闪退解决 2026/9/3 2:40:26

DaVinci Resolve 21 从下载安装到稳定运行:避坑指南与闪退解决

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
大模型研究到工程化:环境复现与推理服务落地指南 2026/9/3 2:37:25

大模型研究到工程化:环境复现与推理服务落地指南

大厂顶级研究员离职创业,放在 AI 行业是常态,对工程读者却是很好的技术体检:它把大厂研究基础设施和创业环境之间的差距全部暴露了出来。一个在大厂里发过论文、调过千卡集群的研究员,到了新的创业环境后,最先遇到的往…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞