AI Agent + RAG管道搭建教程:让Agent学会查文档
单一LLM的知识截止于训练数据。加上RAG管道,Agent就能查询你的私有文档回答问题。这篇手把手教你搭。
💡 你将学到
单一LLM的知识截止于训练数据。加上RAG管道,Agent就能查询你的私有文档回答问题。这篇手把手教你搭。
Agent+RAG是最实用的AI应用模式
纯Agent(只有LLM)的知识范围受限。加上RAG(检索增强生成),Agent就能实时查询私有数据。
架构
用户问题 → Agent(理解意图) → RAG检索(查文档)
→ Agent(合成答案) → 返回给用户
Step 1: 准备文档
先把文档处理成向量:
from langchain.document_loaders import TextLoader
from langchain.text_splitter import RecursiveCharacterTextSplitter
loader = TextLoader("docs.txt")
docs = loader.load()
splitter = RecursiveCharacterTextSplitter(chunk_size=500, chunk_overlap=50)
chunks = splitter.split_documents(docs)
Step 2: 建向量库
from langchain.embeddings import OpenAIEmbeddings
from langchain.vectorstores import Chroma
embeddings = OpenAIEmbeddings()
vectorstore = Chroma.from_documents(chunks, embeddings)
Step 3: 集成Agent
from langchain.agents import Tool, AgentExecutor
from langchain.tools.retriever import create_retriever_tool
retriever = vectorstore.as_retriever(search_kwargs={"k": 3})
tool = create_retriever_tool(
retriever, "search_docs", "Search documents"
)
关键优化
1. 块大小 块太小(<200字)丢失上下文,块太大(>1000字)降低精度。500-800字是经验值。
2. 检索策略 - 简单检索:top-k(快但不准) - MMR检索(多样性和相关性平衡) - 重排序(让LLM做二次排序)
3. 上下文窗口 Agent的上下文窗口有限(通常是128k tokens)。检索到的文档不能全塞进去——需要取舍。
总结
Agent+RAG是2026年最实用的AI应用架构。关键不在技术,在文档处理——文档分得好,RAG成功一半。
相关文章
相关文章
2026-07-26
AI工作流与AI智能体:关键区别
2026-08-01
在Android上运行Ollama:4款应用对比
2026-07-17
AI Agent Onboarding Guide:构建可靠AI Agent的必备实践
本站文章由编辑人工撰写,收录的工具均经过实测或公开资料核验。文中链接指向工具官网或 GitHub 仓库,仅作信息参考,不构成付费推广。
