RAG入门:让AI学会翻书找答案
RAG入门:让AI学会翻书找答案 你有没有遇到过这种情况:问ChatGPT一个专业问题,它回答得头头是道,但细看全是编的? 这就是大模型的"幻觉"问题——它很会说话,但不一定说得对。 RAG(检索增强生成)就是解决这个问题的核心技术。今天用最通俗的方式讲清楚它是什么、为什么需要它、怎么用。
管
管理员
大约 2 小时前
香港特别行政区12 阅读0 评论
RAG入门:让AI学会翻书找答案
你有没有遇到过这种情况:问ChatGPT一个专业问题,它回答得头头是道,但细看全是编的?
这就是大模型的"幻觉"问题——它很会说话,但不一定说得对。
RAG(检索增强生成)就是解决这个问题的核心技术。今天用最通俗的方式讲清楚它是什么、为什么需要它、怎么用。
RAG是什么?
想象一个开卷考试的场景:
- 不用RAG:AI凭记忆答题,记不清就瞎编
- 用了RAG:AI先去书架上翻资料,找到相关内容再组织答案
RAG = Retrieval + Augmented + Generation
翻译:先检索相关资料,再增强给大模型,最后生成回答。
为什么需要RAG?
大模型有三个致命短板:
- 知识过期——训练数据有截止日期,2024年以后的事它不知道
- 缺乏专业深度——通用模型对垂直领域理解有限
- 容易编造——不确定的时候倾向编一个看起来合理的答案
RAG通过"先查后答"的方式,让AI的回答有据可依,而不是凭空想象。
RAG的三个核心步骤
第一步:建立知识库
把你的文档(PDF、Word、网页等)切成小段,每段转成数字向量(Embedding),存进向量数据库。
通俗理解:把一本教科书拆成段落,每个段落贴上标签,放进图书馆。
常用向量数据库:
- Milvus:国产,性能强,适合大规模
- Qdrant:轻量,易上手
- Chroma:Python友好,适合原型
- LanceDB:OpenClaw内置,零配置
第二步:检索相关内容
用户提问时,把问题也转成向量,在知识库里找最相似的内容段落。
通俗理解:拿着问题去图书馆,找到最相关的几页。
第三步:增强生成
把检索到的内容拼到问题前面,一起交给大模型,让它基于这些真实资料来回答。
通俗理解:把找到的几页摊开在桌上,让AI参考着写答案。
什么时候该用RAG?
适合用:
- 企业内部知识问答
- 法律/医疗等专业领域咨询
- 客服机器人需要基于真实文档回答
- 任何需要"准确引用"的场景
不需要用:
- 创意写作
- 日常闲聊
- 通用知识问答(模型本身就会的)
一个最简单的RAG示例
用Python + LangChain跑一个最简RAG:
from langchain.document_loaders import TextLoader
from langchain.text_splitter import RecursiveCharacterTextSplitter
from langchain.embeddings import OpenAIEmbeddings
from langchain.vectorstores import Chroma
from langchain.chat_models import ChatOpenAI
from langchain.chains import RetrievalQA
# 1. 加载文档
loader = TextLoader('company_policy.txt')
docs = loader.load()
# 2. 切片
splitter = RecursiveCharacterTextSplitter(chunk_size=500)
chunks = splitter.split_documents(docs)
# 3. 存入向量库
vectorstore = Chroma.from_documents(chunks, OpenAIEmbeddings())
# 4. 创建RAG链
qa = RetrievalQA.from_chain_type(
llm=ChatOpenAI(),
retriever=vectorstore.as_retriever(search_kwargs={'k': 3})
)
# 5. 提问
answer = qa.run('公司的年假政策是什么?')
print(answer)常见坑
- 切片太大——检索不精准,回答含糊
- 切片太小——丢失上下文,回答碎片化
- 只用关键词检索——语义相似但用词不同就找不到
- 不验证来源——检索到错误内容,AI照样当事实引用
下一步
如果你已经用Ollama跑起了本地模型,下一步就是给它装上"查资料"的能力——接入LanceDB或Chroma,你的AI就从"只会背书"变成"会翻书找答案"了。
这才是AI真正有用的方向:不是什么都记在脑子里,而是知道去哪里找、怎么找、找到后怎么用。
读者评论
0 条登录后参与
暂无评论,来分享你的看法吧
相关推荐
结合当前内容、你的浏览习惯和搜索偏好推荐。

