Skip to main content

RAG 对话机器人:LangChain 工程文档式系列教程

目标:学完本系列,你能从零搭建一个知识问答 RAG 对话机器人。 路线:从”规定性最少”的概念开始,一步步看到每个概念为什么必然出现(逻辑必然性),最终拼出完整系统。 原则:不用 LangGraph、不用依赖它的 agent、不用任何弃用包——全部用 langchain 1.x 官方活跃维护的 API。

一、这套教程回答的问题


二、核心方法论:规定性展开 + 逻辑必然性

规定性(prescriptivity):一个概念对你(代码编写者)施加的约束数量
  • 规定性越少 = 概念越简单、越自由、约束越少;
  • 规定性越多 = 概念越复杂、越精确、越接近生产现实。
整套课程的顺序就是规定性从少到多的展开,并且每一步都是上一步逼出来的(逻辑必然性):
每一篇都遵循同一固定结构(这是本系列与普通教程最大的区别):
  1. 上集回顾 —— 上一篇结尾必然有个”还差什么”,本篇来解决它
  2. 数据字典 —— 本篇涉及的关键类:字段、数据类型、结构示例(JSON)
  3. 关键方法 —— 方法签名 + 参数 + 返回值
  4. 进程线程模型 —— 这段代码在哪个线程跑、阻塞不阻塞、并发在哪
  5. 网络模型 —— 底层走了什么 HTTP 请求、协议、流式、超时、重试
  6. 可运行验证 —— 配套 code/ 代码,亲手跑一遍看输出
  7. 边界 —— 这个概念什么时候不适用、坑在哪

三、目录

逻辑顺序 = 认知依赖:先懂”模型返回什么 / 怎么构造输入”(0105),再学会话与知识(0610),然后工具与底层(1113),最后上线(1415)。

四、版本与环境(本机实测)

五、明确不用什么(为什么)

识别弃用包的方法:pip show <包> 看是否活跃维护;看到 from langchain_communityfrom langchain.chainslangchain-classic 都要警惕。

六、怎么开始

  1. 00-环境准备 开始,把环境跑通。
  2. 每篇读完,运行配套代码(code/ 目录),亲手看到输出。
  3. 每篇的”数据字典”和”进程线程模型 / 网络模型”是重点——它们回答”这个东西到底是什么数据结构、底层到底怎么跑的”。
  4. 第 15 篇是把前面所有零件拼成完整系统的最终交付。
现在,从第 00 篇:环境准备开始。