RAG

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

RAG搭建流程

离线知识库构建 → 在线检索生成 → 部署与持续优化

文档 → 加载器 → 文本切分 → Embedding模型 → 向量 + 原始文本 → 写入向量库

用户提问 → 问题Embedding → 向量库相似度检索&关键词检索 → 拿到相关片段塞进 Prompt → 丢给LLM生成答案。

文档解析切分:把企业文档、产品手册、政策文件、FAQ 等内容转成纯文本源,清洗后按语义切成合适长度的 Chunk。切分方式:固定窗口滑切、递归字符切分、语义切分、父子分块,切多大是个权衡:块太大→检索不精(一堆无关内容稀释);块太小→语义残缺(代词指代丢失,第三部分 Claude 的 Contextual Retrieval 正是解决这个问题的)。

文本向量化:每个 Chunk 经过 Embedding 模型变成向量。模型Word2Vec(早期)、中文BGE-M3等开源可私有化部署

入库和向量检索:L2 归一化就是把向量长度统一成 1,存入向量数据库,支持向量语义检索。Qdrant、Milvus相似度和索引算法加速,知识库与查询必须用同一个 Embedding 模型

关键词全文检索:Elasticsearch,(ES 默认的相关性打分算法BM25关键词全文检索算法Best Matching 25)优点专有名词、编号、代号精准;典型场景合同号、设备编码、法规条款、专业术语

检索召回重排序(Rank):宽召回、严精排,大库精选后和问题

组装 Prompt 让模型作答:结构化Prompt拆成 Role / Context背景 / Task / Constraints / Data / Format/Self-Check

temperature(温度)是大模型推理时控制输出随机性 / 创造性的参数,要准就低温,要创意就高温;做代码、RAG、工具调用时,优先把 temperature 压到 0 附近。

RAG 常见失败模式与对策

Agent 

RAG 是典型 Workflow:检索一次 → 生成一次,流程固定。

Agent 则在循环里自主决策,可以"检索→不够→再检索→读全文→算个数→回答"。

实践建议:能用 Workflow 解决的不要上 Agent。Agent 更强但也更贵、更慢、更难测;Anthropic 的原话是"找最简单的可行方案"。

Agent 核心循环

支撑这个循环的只是三条机制:

  1. 工具注册:把函数的名字、描述、参数 Schema 告诉模型(Claude 的 Function Calling 协议);

  2. 消息累积:每一轮的思考、工具调用、工具结果都追加进同一条消息历史——这就是 Agent 的"工作记忆";

  3. 终止条件:模型不再发起工具调用(给出最终回答),或触发最大步数/预算上限强制截断。

多 Agent 系统编排者把子任务派给各自带独立上下文的 Agent。

Agent 的五大组件

组件

职责

常见实现

LLM 大脑

理解目标、规划步骤、决定工具调用

Claude / GPT 等支持工具调用的模型

规划

把大目标拆成子任务

模型生成todo list 或靠 ReAct 循环边想边做

工具

与外部世界交互的手:检索、读写、计算、调 API

Function Calling / MCP 协议

记忆

短期=消息历史;长期=外部存储

消息列表、向量库、CLAUDE.md 式记忆文件

反思

检查结果、发现错误、自我纠正

验证工具结果、重试、评估者模式

AI Agent框架

LangChain/LangGraph开发框架

Cursor Agent (Cursor)/ Claude Code(Anthropic) 是 AI 编程 Agent 工具

OpenClaw阿里云是自托管个人 AI 助手

LangChain和LangGraph

LangChain 是开源大模型 LLM 应用开发框架(MIT 协议),2022 年底由 Harrison Chase 发起,目标是快速构建有上下文、能调用外部工具的大模型应用,支持 Python / JS 双版本。

维度LangChainLangGraph
定位组件库 + 线性编排状态图运行时
流程单向链式可循环、可分支
状态隐式、较弱显式、可持久化
适合快速搭 RAG、简单 Agent复杂 Agent、审批流、多 Agent
类比工具箱 / 流水线指挥中心 / 流程图

生态组件

  1. langchain-core:核心抽象、LCEL(LangChain Expression Language,链式表达式),轻量基础层,所有组件标准接口在这里定义LangChain
  2. langchain:链、检索、通用 Agent 策略
  3. langchain-xxx:独立模型集成包(langchain-openai / langchain-deepseek / langchain-qwen等)
  4. langchain-community:社区维护的第三方集成(向量库、文档加载器、小众工具)
  5. LangGraph(重点):有状态图编排引擎,用来做带循环、分支、持久化、人工介入的复杂 Agent、多智能体,现在生产环境首选,替代旧版 Chain 的复杂流程LangChain
  6. LangSmith:调试、追踪、评测、监控平台(商业),看每一步 token 消耗、工具调用链路、prompt 日志,生产必备LangChain
  7. LangServe:把写好的 Runnable/Chain 一键发布成 REST API,方便后端对接

六大核心能力模块

  • Models:LLM / ChatModel / Embedding 嵌入模型,统一接口,换模型不用改业务代码
  • Prompt:提示词模板、Few-shot、格式化输出
  • Retrieval(RAG 核心):文档加载器(PDF/Word/ 网页)→文本分割→向量化→向量库(FAISS/Chroma/Pinecone)→检索召回
  • Memory:对话记忆,多轮聊天保存上下文(BufferMemory、SummaryMemory 等)
  • Tools:外部能力,搜索、数据库、计算器、自定义 API
  • Agents:让大模型自主决策:选哪个工具、执行、观察结果、循环直到任务完成(ReAct、ToolCalling Agent)

Logo

更多推荐