news 2026/5/4 5:48:11

LangChain+RAG:大模型应用开发实战教程,附环境配置到推理全过程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
LangChain+RAG:大模型应用开发实战教程,附环境配置到推理全过程

文章详细介绍了如何使用LangChain框架构建RAG(检索增强生成)系统。从环境准备、DeepSeek模型调用、文档加载分割,到文本嵌入向量化存储、重排处理、提示词设计、链构建及推理全过程。结合阿里云百炼嵌入模型、FAISS向量数据库和BAAI重排模型,实现了完整的大模型应用开发流程,为开发者提供了一套实用的技术方案。


ℹ️RAG全称是Retrieval-Augmented Generation(检索增强生成),一句话解释就是:把问题和相应的参考资料一起给大模型,以期望得到效果更好的模型表现。

ℹ️LangChain包含用于开发大语言模型应用的各种功能组件,不仅仅是RAG,所以相较于RAGFlow、HayStack等专门为RAG设计的框架来说,功能更为丰富,更“笨重”,学习门槛更高。

第一步,环境准备

参见requirements.txt。主要Python库:

第二步,模型调用

这里使用的DeepSeek官方提供的API。访问DeepSeek开放平台(https://platform.deepseek.com),创建API_KEY,有免费token额度,如果使用量比较大则需要充值:

DeepSeek采用和openai兼容的API格式,上图为设置相应环境变量。

然后就可以使用模型了,deepseek-chat代表DeepSeek-V3,如果使用DeepSeek-R1则名称填写为deepseek-reasoner:

第三步,文档加载与分割

文档不限制格式,这里以pdf为例:

ℹ️加载后的文档为Document对象。page_content属性保存的是文档内容,metadata属性保存的是文档元信息,比如来源、创建时间等。

ℹ️将文档切割成文档片段(chunks),方便存储、向量化与精确检索,每个片段仍然是Document对象,即一个个更小的文档。切割时可以设置每个片段的长度、重叠字符数(chunk_overlap)、切割标识符等参数,其中重叠字符数即相邻片段会有一定的重叠,这是为了避免把段落切得“太碎”,保持语义完整。

第四步,文本嵌入与向量化存储

第二步切割后的文档片段,使用文本嵌入模型(embedding model)将其映射为包含语义信息的向量,然后保存到向量数据库中。嵌入模型和向量数据库都有多种选择,这里使用阿里云百炼的text-embedding-v2嵌入模型和FAISS向量数据库作为示例:

申请阿里云百炼API key(https://bailian.console.aliyun.com/)并设置环境变量:

第五步,重排(ReRank)

在文本被嵌入成固定长度的向量后,会丢失一些信息,为了得到更准确的与prompt(即向量检索时的query)相关的文本,就要在向量检索后再利用重排模型对检索结果进行更精细的语义分析,重新排序,达到筛选出最相关信息和减少无关上下文的目的。

重排模型这里使用北京智源人工智能研究院的BAAI/bge-reranker-large,在Hugging Face上这是最热门的ReRank模型之一。

ℹ️LangChain已经集成了阿里云百炼的相关Python库,所以在第三步文本嵌入时我们直接使用了一个现成的嵌入模型调用接口DashScopeEmbeddings

⚠️而在重排时使用BAAI/bge-reranker-large则需要我们自己实现重排的相关逻辑,不过过程也很简单:

1.继承BaseDocumentCompressor

2.实现compress_documents方法

然后组合向量检索器和重排器:

第六步,设计提示词模板

这里构造提示词模板时,将提示词分为了两部分,一个是系统消息(system,用来表达上下文内容),另一个是用户消息(user,用来表达用户问题),其中context占位符用来填充从第四步中检索到的相关上下文,question占位符用来填充具体的问题。

第七步,构建链

LangChain中的chain最大特点即是把处理流程连接起来,前一步的输出作为后一步的输入,类似于管道操作,如SparkML中的pipeline或者Linux中的管道符。

⚠️一般用来构建链的对象是属于Runnable类型的。Runnable相当于抽象基类或者接口。

1.使用RunnableParallel组合上下文和问题,其中ccr即是第四步中检索加重排后得到的上下文

2.构建链

✅流程逻辑:

1️⃣retriever,用户输入的问题同时传给了ccr和RunnablePassthrough,ccr即检索加重排得到上下文,RunnablePassthrough不做操作返回问题

2️⃣chat_prompt,接收retriver传来的上下文和问题,填充提示词模版中的对应占位符得到完整提示词

3️⃣chat_llm,接收到完整提示词,进行模型推理

4️⃣CustomParser(),对模型推理返回的答案进行格式化

第八步,进行推理

LangChain中使用invoke方法执行链或模型。

​最后

我在一线科技企业深耕十二载,见证过太多因技术更迭而跃迁的案例。那些率先拥抱 AI 的同事,早已在效率与薪资上形成代际优势,我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在大模型的学习中的很多困惑。

我整理出这套 AI 大模型突围资料包:

  • ✅AI大模型学习路线图
  • ✅Agent行业报告
  • ✅100集大模型视频教程
  • ✅大模型书籍PDF
  • ✅DeepSeek教程
  • ✅AI产品经理入门资料

完整的大模型学习和面试资料已经上传带到CSDN的官方了,有需要的朋友可以扫描下方二维码免费领取【保证100%免费】👇👇
​​

为什么说现在普通人就业/升职加薪的首选是AI大模型?

人工智能技术的爆发式增长,正以不可逆转之势重塑就业市场版图。从DeepSeek等国产大模型引发的科技圈热议,到全国两会关于AI产业发展的政策聚焦,再到招聘会上排起的长队,AI的热度已从技术领域渗透到就业市场的每一个角落。


智联招聘的最新数据给出了最直观的印证:2025年2月,AI领域求职人数同比增幅突破200%,远超其他行业平均水平;整个人工智能行业的求职增速达到33.4%,位居各行业榜首,其中人工智能工程师岗位的求职热度更是飙升69.6%。

AI产业的快速扩张,也让人才供需矛盾愈发突出。麦肯锡报告明确预测,到2030年中国AI专业人才需求将达600万人,人才缺口可能高达400万人,这一缺口不仅存在于核心技术领域,更蔓延至产业应用的各个环节。

​​

资料包有什么?

①从入门到精通的全套视频教程⑤⑥

包含提示词工程、RAG、Agent等技术点

② AI大模型学习路线图(还有视频解说)

全过程AI大模型学习路线

③学习电子书籍和技术文档

市面上的大模型书籍确实太多了,这些是我精选出来的

④各大厂大模型面试题目详解

⑤ 这些资料真的有用吗?

这份资料由我和鲁为民博士共同整理,鲁为民博士先后获得了北京清华大学学士和美国加州理工学院博士学位,在包括IEEE Transactions等学术期刊和诸多国际会议上发表了超过50篇学术论文、取得了多项美国和中国发明专利,同时还斩获了吴文俊人工智能科学技术奖。目前我正在和鲁博士共同进行人工智能的研究。

所有的视频教程由智泊AI老师录制,且资料与智泊AI共享,相互补充。这份学习大礼包应该算是现在最全面的大模型学习资料了。

资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。


智泊AI始终秉持着“让每个人平等享受到优质教育资源”的育人理念‌,通过动态追踪大模型开发、数据标注伦理等前沿技术趋势‌,构建起"前沿课程+智能实训+精准就业"的高效培养体系。

课堂上不光教理论,还带着学员做了十多个真实项目。学员要亲自上手搞数据清洗、模型调优这些硬核操作,把课本知识变成真本事‌!

​​​​

如果说你是以下人群中的其中一类,都可以来智泊AI学习人工智能,找到高薪工作,一次小小的“投资”换来的是终身受益!

应届毕业生‌:无工作经验但想要系统学习AI大模型技术,期待通过实战项目掌握核心技术。

零基础转型‌:非技术背景但关注AI应用场景,计划通过低代码工具实现“AI+行业”跨界‌。

业务赋能 ‌突破瓶颈:传统开发者(Java/前端等)学习Transformer架构与LangChain框架,向AI全栈工程师转型‌。

👉获取方式:

😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓**

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 3:49:28

DeepSeek总结的PostgreSQL解码GIF文件SQL移植到DuckDB的性能优化方法

原文地址 https://db.cs.uni-tuebingen.de/theses/2025/ann-kathrin-claessens/claessens-2025.pdf 2.6 性能评估 运行第2.5节中提出的GIF解码器查询的DuckDB代码,很快就会发现它相当慢。即使采用稍后讨论的CTE物化技术,其速度也显著慢于原始的Postgre…

作者头像 李华
网站建设 2026/4/25 13:03:20

Java做人工智能?JBoltAI带你轻松入门AI应用开发

你是否曾经想过,用Java这门经典编程语言也能开发出智能的人工智能应用?今天,我们就来聊聊JBoltAI框架,看看它是如何让Java开发者轻松踏入人工智能领域的大门!一、Java与AI的奇妙邂逅Java,作为一门历史悠久且…

作者头像 李华
网站建设 2026/4/26 4:17:19

华为 CANN 架构深度解析:AIGC 大模型的昇腾算力底座

在 AIGC 大模型时代,算力成为模型训练、推理与落地的核心瓶颈,而异构计算架构则是释放硬件算力的关键。华为针对 AI 场景推出的CANN(Compute Architecture for Neural Networks) 异构计算架构,作为昇腾 AI 处理器的 “…

作者头像 李华
网站建设 2026/4/19 22:08:33

CANN 算子库体系全解:从 ops-nn 到 Transformer,支撑 AIGC 大模型高效计算

算子是 AI 模型的 “计算基石”,对于参数量动辄千亿、万亿的 AIGC 大模型而言,算子的性能与丰富度直接决定了模型训练的速度、推理的延迟以及硬件算力的利用率。华为 CANN 仓库围绕 AI 计算场景,打造了覆盖基础计算、神经网络、大模型、计算机…

作者头像 李华
网站建设 2026/5/2 6:56:23

AI原生应用领域多模态交互:开启智能交互新时代

AI原生应用领域多模态交互:开启智能交互新时代 关键词:AI原生应用、多模态交互、智能交互、新时代、交互方式 摘要:本文深入探讨了AI原生应用领域的多模态交互,介绍了多模态交互的核心概念,阐述了其算法原理、数学模型,通过项目实战展示了多模态交互的实际应用。探讨了多…

作者头像 李华