LLM应用入门系列:RAG与知识库助手实战!

RAG & LLm大模型构建本地知识库 RAG与LLM的优势 如何构建垂域(向量)知识库 文本分块的技巧 构建一套完整 RAG 系统的步骤 阅读详情

RAG介绍

RAG,即Retrieval-Augmented Generation,检索增强生成。顾名思义,该架构整合了从庞大知识库中检索到的相关信息,并以此作为大语言模型的上下文知识,指导大型语言模型生成更为精准的答案。

RAG架构图如下:

RAG 是一个完整的系统,其工作流程可以简单地分为数据处理、检索、增强和生成四个阶段:

  1. 数据处理阶段
  • 对原始数据进行清洗和处理。
  • 将处理后的数据转化为检索模型可以使用的格式。
  • 将处理后的数据存储在对应的数据库中。
  1. 检索阶段

将用户的问题输入到检索系统中,从数据库中检索相关信息。

  1. 增强阶段

对检索到的信息进行处理和增强,以便生成模型可以更好地理解和使用。

  1. 生成阶段

将增强后的信息输入到生成模型中,生成模型根据这些信息生成答案。

知识库助手实战

这里我们以langchain库为例,进行个人知识库助手搭建。

  1. 首先需要进行本地大模型的部署,具体可以参见之前的大模型本地部署教程:手把手本地部署DeepSeek系列(一),例子中部署的是qwen2.5:14b模型。

  2. 知识库助手代码:

# 导入必要的库和模块
from langchain_community.document_loaders import PyMuPDFLoader  # 用于从PDF文件中加载文档内容
from langchain.text_splitter import RecursiveCharacterTextSplitter  # 用于将长文本分割成较小的块
from langchain_community.embeddings import HuggingFaceEmbeddings  # 用于生成文本的嵌入向量
from langchain_community.vectorstores import Chroma  # 用于创建和管理向量数据库
from langchain.prompts import PromptTemplate  # 用于定义提示模板
from langchain.chains import RetrievalQA  # 用于构建检索增强生成(RAG)链
from langchain_community.chat_models import ChatOllama  # 用于与Ollama聊天模型交互
from dotenv import load_dotenv, find_dotenv  # 用于加载环境变量
# 加载环境变量文件(.env),以便从文件中读取配置信息
_ = load_dotenv(find_dotenv())
# 定义向量数据库的存储路径
persist_directory = './vector_db_chroma'
# 定义嵌入模型的路径,这里使用的是多语言MiniLM模型
emb_model = "./paraphrase-multilingual-MiniLM-L12-v2"
# 初始化嵌入模型,用于将文本转换为向量表示
embedding = HuggingFaceEmbeddings(model_name=emb_model)
# 定义创建向量数据库的函数
def create_db(pdf_path):
# 初始化PDF加载器,加载指定的PDF文件
loader = PyMuPDFLoader(pdf_path)
# 加载PDF文件的所有页面内容
pdf_pages = loader.load()
# 初始化文本分割器,将长文本分割成小块
text_splitter = RecursiveCharacterTextSplitter(
chunk_size=500,  # 每块文本的最大长度为500个字符
chunk_overlap=50  # 相邻文本块之间有50个字符的重叠
)
# 将PDF页面内容分割成较小的文本块
split_docs = text_splitter.split_documents(pdf_pages)
# 使用Chroma创建向量数据库,将分割后的文档转换为向量并存储
vectordb = Chroma.from_documents(
documents=split_docs[:],  # 传入所有分割后的文档
embedding=embedding,  # 使用指定的嵌入模型
persist_directory=persist_directory  # 指定向量数据库的存储路径
)
# 将向量数据库持久化到磁盘
vectordb.persist()
# 定义RAG(检索增强生成)函数,用于回答用户的问题
def rag(question):
# 从指定路径加载已持久化的向量数据库
vectordb = Chroma(persist_directory=persist_directory, embedding_function=embedding)
# 根据问题进行相似性搜索,获取与问题最相关的两个文档块
sim_docs = vectordb.similarity_search(question, k=2)
# 定义提示模板,用于指导模型如何根据上下文回答问题
template = """使用以下上下文来回答最后的问题。如果你不知道答案,就说你不知道,不要试图编造答案。尽量使答案简明扼要。
{context}
问题: {question}
答案:
"""
# 初始化Ollama聊天模型,指定模型服务地址、模型名称和温度参数
llm = ChatOllama(base_url="http://大模型服务器的IP:端口号", model="qwen2.5:14b", temperature=0.1)
# 创建提示模板对象,定义输入变量和模板内容
QA_CHAIN_PROMPT = PromptTemplate(input_variables=["context","question"], template=template)
# 初始化RAG链,结合检索器、语言模型和提示模板
qa_chain = RetrievalQA.from_chain_type(
llm,  # 使用指定的Ollama模型
retriever=vectordb.as_retriever(),  # 使用向量数据库作为检索器
return_source_documents=True,  # 返回检索到的源文档
chain_type_kwargs={"prompt": QA_CHAIN_PROMPT}  # 传入提示模板
)
# 执行RAG链,传入用户的问题并获取回答
result = qa_chain({"query": question})
# 打印问题和对应的回答
print(f"\n==============\nQ: {question}\nA: {result['result']}")
# 主程序入口
if __name__ == '__main__':
# create_db("员工指南.pdf")  # 取消注释以创建向量数据库,传入员工指南PDF文件
rag("公司的使命和愿景")  # 调用RAG函数,查询公司的使命和愿景

想入门 AI 大模型却找不到清晰方向?备考大厂 AI 岗还在四处搜集零散资料?别再浪费时间啦!2025 年 AI 大模型全套学习资料已整理完毕,从学习路线到面试真题,从工具教程到行业报告,一站式覆盖你的所有需求,现在全部免费分享!

👇👇扫码免费领取全部内容👇👇

​

一、学习必备:100+本大模型电子书+26 份行业报告 + 600+ 套技术PPT,帮你看透 AI 趋势

想了解大模型的行业动态、商业落地案例?大模型电子书?这份资料帮你站在 “行业高度” 学 AI:

1. 100+本大模型方向电子书

在这里插入图片描述

2. 26 份行业研究报告:覆盖多领域实践与趋势

报告包含阿里、DeepSeek 等权威机构发布的核心内容,涵盖:

  • 职业趋势:《AI + 职业趋势报告》《中国 AI 人才粮仓模型解析》;
  • 商业落地:《生成式 AI 商业落地白皮书》《AI Agent 应用落地技术白皮书》;
  • 领域细分:《AGI 在金融领域的应用报告》《AI GC 实践案例集》;
  • 行业监测:《2024 年中国大模型季度监测报告》《2025 年中国技术市场发展趋势》。

3. 600+套技术大会 PPT:听行业大咖讲实战

PPT 整理自 2024-2025 年热门技术大会,包含百度、腾讯、字节等企业的一线实践:

在这里插入图片描述

  • 安全方向:《端侧大模型的安全建设》《大模型驱动安全升级(腾讯代码安全实践)》;
  • 产品与创新:《大模型产品如何创新与创收》《AI 时代的新范式:构建 AI 产品》;
  • 多模态与 Agent:《Step-Video 开源模型(视频生成进展)》《Agentic RAG 的现在与未来》;
  • 工程落地:《从原型到生产:AgentOps 加速字节 AI 应用落地》《智能代码助手 CodeFuse 的架构设计》。

二、求职必看:大厂 AI 岗面试 “弹药库”,300 + 真题 + 107 道面经直接抱走

想冲字节、腾讯、阿里、蔚来等大厂 AI 岗?这份面试资料帮你提前 “押题”,拒绝临场慌!

1. 107 道大厂面经:覆盖 Prompt、RAG、大模型应用工程师等热门岗位

面经整理自 2021-2025 年真实面试场景,包含 TPlink、字节、腾讯、蔚来、虾皮、中兴、科大讯飞、京东等企业的高频考题,每道题都附带思路解析:

2. 102 道 AI 大模型真题:直击大模型核心考点

针对大模型专属考题,从概念到实践全面覆盖,帮你理清底层逻辑:

3. 97 道 LLMs 真题:聚焦大型语言模型高频问题

专门拆解 LLMs 的核心痛点与解决方案,比如让很多人头疼的 “复读机问题”:


三、路线必明: AI 大模型学习路线图,1 张图理清核心内容

刚接触 AI 大模型,不知道该从哪学起?这份「AI大模型 学习路线图」直接帮你划重点,不用再盲目摸索!

在这里插入图片描述

路线图涵盖 5 大核心板块,从基础到进阶层层递进:一步步带你从入门到进阶,从理论到实战。

img

L1阶段:启航篇丨极速破界AI新时代

L1阶段:了解大模型的基础知识,以及大模型在各个行业的应用和分析,学习理解大模型的核心原理、关键技术以及大模型应用场景。

img

L2阶段:攻坚篇丨RAG开发实战工坊

L2阶段:AI大模型RAG应用开发工程,主要学习RAG检索增强生成:包括Naive RAG、Advanced-RAG以及RAG性能评估,还有GraphRAG在内的多个RAG热门项目的分析。

img

L3阶段:跃迁篇丨Agent智能体架构设计

L3阶段:大模型Agent应用架构进阶实现,主要学习LangChain、 LIamaIndex框架,也会学习到AutoGPT、 MetaGPT等多Agent系统,打造Agent智能体。

img

L4阶段:精进篇丨模型微调与私有化部署

L4阶段:大模型的微调和私有化部署,更加深入的探讨Transformer架构,学习大模型的微调技术,利用DeepSpeed、Lamam Factory等工具快速进行模型微调,并通过Ollama、vLLM等推理部署框架,实现模型的快速部署。

img

L5阶段:专题集丨特训篇 【录播课】

img
四、资料领取:全套内容免费抱走,学 AI 不用再找第二份

不管你是 0 基础想入门 AI 大模型,还是有基础想冲刺大厂、了解行业趋势,这份资料都能满足你!
现在只需按照提示操作,就能免费领取:

👇👇扫码免费领取全部内容👇👇

​

2025 年想抓住 AI 大模型的风口?别犹豫,这份免费资料就是你的 “起跑线”!

GPT实战系列-构建本地知识库RAG的LLM Agent 本文将介绍如何设计和实现具有LLM能力的聊天机器人。它作为一个有记性的聊天机器人,需管理聊天记录。需给它连接内部知识,通过某种形式的,或简称 RAG,来获取浅的,特定领域的,很有用知识,使聊天机器人更加强大。 阅读详情

相关推荐

用langchain+streamlit应用RAG实现个人知识库助手搭建

我搭建的是一个Prompt技术的AI学习助手(基于自己搭建的和Prompt技术有关的文章与书籍)。学习写Prompt需要一边写一边实践,否则就会“脑子说我会了,手说我废了”。平时看到好的Prompt,也会把它积累下来,也许哪天就能用上;在实践的时候,随着不断地修改,Prompt也会更新迭代;

fengjiandaxia的博客 2395

LLM应用入门系列:RAG与知识库助手实战,大模型入门到精通,收藏这篇就足够了!

RAG,即Retrieval-Augmented Generation,检索增强生成。顾名思义,该架构整合了从庞大知识库中检索到的相关信息,并以此作为大语言模型的上下文知识,指导大型语言模型生成更为精准的答案。

瓦罗兰特顶级C位的博客 918

彻底告别LLM幻觉!RAGFlow:企业级RAG应用知识库构建的神兵利器

RAGFlow:一站式企业级RAG引擎解决LLM幻觉问题 摘要: 大语言模型(LLM)在实际应用中存在"幻觉"问题,即生成不准确或虚构内容。检索增强生成(RAG)技术通过结合外部知识库检索来解决这一问题。RAGFlow是由InfiniFlow团队开发的一站式企业级RAG引擎,具有三大核心技术优势:1)智能文档处理引擎,支持多格式解析和基于语义的智能分块;2)高效多模态检索系统,结合Milvus向量数据库实现多路召回与融合;3)灵活的LLM集成,支持主流API和本地私有模型。RAGFlow

wylee的博客 1153

【InternLM 实战营第二期笔记】使用茴香豆搭建你的RAG智能助理

茴香豆是一个基于 LLM 的群聊设计拒答、响应两阶段 pipeline 应对群聊场景,解答问题同时不会消息泛滥。精髓见技术报告成本低至 1.5G 显存,无需训练适用各行业提供一整套前后端 web、android、算法源码,工业级开源可商用。

JeffDing 1198

实战LLM应用(4)基于本地知识库的RAG优化参数测试

**方向**:推动多模态模型向“原生多模态”发展,整合文本、图像、音频、视频等数据,建立统一的多模态词元序列空间,提升模型对复杂信息的理解与生成能力。当前人工智能的发展聚焦于**多模态融合、智能体扩展、具身交互、语言模型强化、新型架构探索、工程化落地**,以及**长期的类脑与量子技术突破**。同时,探索自博弈强化学习等方法增强模型的逻辑与稳定性。- **多模态词元融合**:整合文本、图像、音频、视频等数据,建立统一的词元序列空间(如OpenAI的GPT-4o模型),提升模型对复杂信息的理解和生成能力。

weixin_60746677的博客 1079

晶振(晶体振荡器)测试方法详解

晶振测试方法分为无源和有源两种类型。无源晶振(两脚)需用示波器测试波形,重点关注正弦波形状、200mV-1.5Vpp幅值和频率精度;有源晶振(四脚)通电后直接输出方波。测试要点包括:示波器使用10X探头、AC耦合,带宽需5倍于晶振频率;万用表可初筛短路/开路;替换法是工程最有效方法。常见故障排查顺序:供电→复位→焊接→型号→负载电容→波形观察→更换晶振→MCU配置。负载电容需按公式计算匹配,示波器观察是核心测试手段。

jiujiujinyuxi的博客 926

RAG搭建个人LLM知识库助手,很多人第一步就走错了...

本文介绍了基于RAG技术搭建本地知识库时处理PDF文档的经验。作者推荐使用Doc2X工具精准提取PDF内容,它能将文档转换为结构化的Markdown格式,保留标题层级、表格和公式等元素,显著提升知识库质量。Doc2X支持API调用和多种平台集成,可实现自动化文档处理流程。相比普通PDF解析工具,它能解决文本粘连、格式丢失等问题;相比大模型内置解析功能,其提取结果更准确透明,便于人工干预。这种专业文档转换工具为构建高质量知识库提供了可靠保障。

Q2024107的博客 1788

Allegro模块复用:从原理图到PCB的完整流程与关键细节

本文详细介绍了Allegro模块复用从原理图到PCB的完整流程与关键细节,包括DSN和MDD文件的创建、模块调用的实战技巧以及双向同步与版本控制方法。通过标准化处理和高级复用技巧,能显著提升PCB设计效率,减少重复工作时间。适用于智能硬件和工业控制等领域的工程师。

weixin_30252709的博客 332

一文搞懂 RAG,手把手搭智能问答助手

在没有 RAG 的时候,大模型生成内容的方式,说穿了就是 “闭卷考试”—— 全靠自己脑子里的 “老底” 硬拼。

pythonhy的博客 263

深度学习 tesorflow2.0版本 入门第一章

为什么要学tensflow 深度学习发展迅猛 框架灵活 google开发 公司应用广泛 2.0更加灵活 后面会学习的项目 图像分类 房价预测 泰坦尼克号生存预测 文本分类 文本生成 机器翻译 核心部分 模型训练 tesorboard----> 查看模型训练进度 模型保存和部署 分布式训练-----> 加速训练速度,提升训练效率 TensorFlow常用库:Tfds, tfhub,tensor2tensor 多平台云端环境GPU:Goolgle cloud环境配置,AWS环境配置 kaggle平

weixin_46969441的博客 1236

GEE高阶应用——如何绘制2000-2022年土地利用变化轨迹时序图

土地利用变化是指在一定时间范围内,土地利用类型和结构发生的变化。时序变化是指这种变化随时间的推移而发生的序列变化。土地利用变化轨迹的时序变化具体介绍如下:首先,土地利用变化轨迹的时序变化体现在土地利用类型的演变上。在过去的几十年里,随着人口的增加、经济的发展和城市化的推进,土地利用类型发生了显著的变化。传统的农田逐渐减少,而城市、工业、交通、居住等用地的面积不断扩大。同时,随着环境保护意识的提高,生态保护用地、森林、湿地等绿色用地的面积也在增加。

此星光明博客 1113

RAG 高效应用指南

2020 年,Meta AI 研究人员提出了检索增强生成(RAG)的方法,用于提高 LLM 在特定任务上的性能。信息滞后:LLM 的知识是静态的,来源于当时训练时的数据,也就是 LLM 无法直接提供最新的信息。模型幻觉:实践表明,当前的生成式 AI 技术存在一定的幻觉,而在一些常见的业务应用中,我们是希望保证事实性的。私有数据匮乏:LLM 的训练数据主要来源于互联网公开的数据,而垂类领域、企业内部等有很多专属知识,这部分是 LLM 无法直接提供的。

m0_59235245的博客 1445

[工作流节点24] 外部用户审批的实现方式:让客户、供应商也能参与流程决策

摘要: 明道云支持通过三种方式实现外部用户审批:1)外部表单审批(推荐方案),通过公开表单让外部用户提交审批意见并自动触发流程;2)链接参数审批,通过含参数的URL实现一键确认;3)API/Webhook审批,适用于系统集成场景。三种方案均无需外部用户登录,支持记录操作日志和安全审计。典型应用包括客户确认报价、供应商发货确认等,实现内外流程无缝衔接。建议根据业务复杂度选择:无代码需求用外部表单,轻量审批用链接参数,系统对接用Webhook。

每日出拳老爷子的博客 347

一文带你速通RAG、知识库和LLM!

定制知识库是指一系列紧密关联且始终保持更新的知识集合,它构成了 RAG 的核心基础。这个知识库可以表现为一个结构化的数据库形态(比如:MySQL),也可以表现为一套非结构化的文档体系(比如:文件、图图片、音频、视频等),甚至可能是两者兼具的综合形式。

youmaob的博客 6310

7.6 GPU页表更新机制

本文分析了AMDGPU驱动中BO到VA映射的页表更新实现机制。核心流程通过amdgpu_vm_bo_update()函数触发,支持CPU直接写入和SDMA异步命令两种更新模式。系统根据VRAM可见性自动选择最优更新策略,处理三种主要场景:命令提交、BO迁移和BO销毁。关键实现包括DMA地址数组处理、权限标志合并和BO迁移状态转换,最终通过amdgpu_vm_update_range()完成硬件页表更新。该机制有效平衡了更新延迟与吞吐量,为GPU虚拟内存管理提供基础支撑。

图形/计算GPU的驱动与虚拟化技术分享园地 2469

国科大学习资料--计算机视觉(胡占义、董秋雷)--2018-2019第二学期期末试卷

国科大学习资料–计算机视觉(胡占义、董秋雷)–2018-2019第二学期期末试卷 国科大学习资料–计算机视觉(胡占义、董秋雷)–2018-2019第二学期期末试卷 国科大学习资料–计算机视觉(胡占义、董秋雷)–2018-2019第二学期期末试卷 ...

无名何许人的博客 2167

大模型入门:一文带你速通RAG、知识库和LLM!

检索增强生成(Retrieval Augmented Generation,RAG)是一种强大的工具,它通过将企业外部知识整合到生成过程中,增强了大语言模型(LLM)的性能。

huang9604的博客 2563

使用verilog实现基于FPGA的TDC设计

verilog实现TDC 高精度时间数字转换器概述(TDC) 简介: TDC被用于测量时间间隔,应用在物理研究、飞行时间测量领域等。 本设计使用verilog实现并在xilinx和altera的FPGA上均可实现! 设计中使用到下述几个模块,包括FIFO,COUNT等,在xilinx下也使用到了一些原语等。下面有实现的代码和仿真截图等。 顶层模块设计如下: module top( input wire start, input wire stop, input wire clk, output wire T

QQ_778132974的博客 6253

RAG知识库:一文速通RAG、知识库和LLM,看完搞懂知识库(附教程)

检索增强生成(Retrieval Augmented Generation,RAG)是一种强大的工具,它通过将企业外部知识整合到生成过程中,增强了大语言模型(LLM)的性能。

DEVELOPERAA的博客 2704

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

【LLM大模型】一文带你速通RAG、知识库和LLM!

检索增强生成(Retrieval Augmented Generation,RAG)是一种强大的工具,它通过将企业外部知识整合到生成过程中,增强了大语言模型(LLM)的性能。

AAI666666的博客 1521

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

一文带你速通RAG、知识库和LLM!检索增强生成

检索增强生成(Retrieval Augmented Generation,RAG)是一种强大的工具,它通过将企业外部知识整合到生成过程中,增强了大语言模型(LLM)的性能。

2301_81888214的博客 2128

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

大模型RAG实战|构建知识库:文档和网页的加载、转换、索引与存储

今天,开始写一个新的系列《大模型RAG实战》。上个月我在2篇文章中,介绍了如何使用LlamaIndex框架,通过少量代码,实现本地可部署和运行的大模型RAG问答系统。我们要开发一个生产级的系统,还需要对LlamaIndex的各个组件和技术进行深度的理解、运用和调优。本系列将会聚焦在如何让系统实用上,包括:知识库的管理,检索和查询效果的提升,使用本地化部署的模型等主题。我将会讲解相关的组件和技术,辅以代码示例。最终这些文章中的代码将形成一套实用系统。过去一年,大模型的发展突飞猛进。

weixin_72959097的博客 1293

最火的大模型开发应用-RAG入门与实战!

RAG自2020年由Facebook AI Research推出后,一下子就窜红了。毕竟,它是真的帮了大忙,在解决大语言模型的“幻觉”问题上起到了关键作用。

huang9604的博客 1153
上一篇: 一文看懂Agentic RAG+MCP架构,开启智能体检索新时代
下一篇: 不写一行代码,把大模型变成安全编码专家 | LLaMA-Factory 微调实战
AI_小站
博客等级 码龄3年 6255粉丝 1152原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值