使用AI智能体搭建知识库-RAG语义检索

本教程仅为个人学习总结,如有错误以实际为准。

1 知识准备

核心文件:RAG向量知识库搭建教程.md (人与AI皆可读)

文章内容在:https://blog.csdn.net/qq_37662088/article/details/159051550?spm=1011.2124.3001.6209

把这个文章中的东西复制出来即可。

2 知识库准备

把要用的原始文档(有什么放什么)和给AI看的教程知识库搭建教程-RAG向量检索.md 一起放进去。

3 知识库构建

指令:请阅读 知识库搭建教程-RAG向量检索.md 帮我搭建一个RAG知识库代码片

最终会生成build_rag.py(生成知识库索引) 和 query_rag.py(查询)

备注:运行这个build_rag.py是可以自己在终端运行的。claude code 后台运行看不到进度,构建比较耗时,要等好久。

4 知识库查询

4.1 直接咨询claude code

c 复制代码
帮我查询一下UDS22服务的协议内容

4.3 自己执行脚本

c 复制代码
python query_rag.py "什么是UDS22服务"

5 接入openclaw 和飞书机器人

5.1 让AI知道

c 复制代码
我创建了一个ISO14229的知识库,请阅读C:\Users\13208\Desktop\知识库搭建-RAG\知识库搭建教程-RAG向量检索.md。在我以后问你关键词为ISO14229的时候,进行相关检索

5.2 让AI记住

c 复制代码
请将这部分知识写入到长期记忆中

这个就不演示了,正常情况会在C:\Users{你的名字}.openclaw\workspace\MEMORY.md 中记住这个知识库

PS: 如果要问《你的名字》是什么,它是一部2016年日本动画爱情奇幻片,由新海诚编剧兼执导)

5.3 让AI查询

使用AI查询的好处是,它还能顺带帮你翻译一下英文内容

c 复制代码
使用ISO14229知识库帮我查询UDS2E服务协议内容

6 其他

6.1 rag_index.pkl 是什么东西

rag_index.pkl 是你的RAG知识库索引文件,包含了所有文档的向量化数据。

里面存储了什么:

  1. embeddings(向量): 7426个文本块,每个转换成384维的数字向量
  2. chunks(文本内容): 7426个原始文本片段(每个约500字符)
  3. sources(来源): 每个文本块来自哪个文档
    作用:
  • 查询时,你的问题也会转成向量
  • 通过计算向量相似度,快速找到最相关的文档片段
  • 不需要每次都重新处理原始PDF文档
    大小: 14.9 MB(比原始文档小很多)
    可以理解为:把16个文档"压缩"成了一个可快速搜索的数据库文件。

6.2 构建太慢了怎么办

教程中只使用了CPU进行构建,使用GPU会更快(让AI给你改脚本)

如何使用GPU:

修改构建脚本,把 device='cpu' 改成 device='cuda':

前提条件:

  • 有NVIDIA显卡
  • 安装了CUDA
  • 安装了GPU版本的PyTorch

6.3 查询太慢了怎么办

当前使用的方案是 Pickle + NumPy ,除了这个也可以使用Chroma数据库,会快一些,需要改脚本直接和AI说

Pickle + NumPy 方案:

  • 用pickle直接保存向量数组
  • 用numpy计算余弦相似度
  • 简单、稳定、可靠
    Chroma的主要优势:
  1. 增量更新
  • 当前方案:添加新文档需要重建整个索引
  • Chroma:可以直接添加/删除文档,无需重建
  1. 持久化存储
  • 当前方案:每次查询都要加载整个pkl到内存
  • Chroma:数据存在磁盘,按需加载
    两种方案对比:

6.4 视频、扫描pdf怎么办

视频可以放置一个同名txt文件,里面放置识别的文字,然后和AI说使用txt构建就好。扫描pdf 可以先使用工具(如福昕编辑器)识别文字,这样AI也是能使用的。

图片

6.5 知识库搭建完之后可以移动吗

如果RAG知识库索引使用的是绝对路径,那就改不了。如果使用的是相对路径的话,可以移动。但是都需要保持文件夹层级名字层次结构一致。

相关推荐
汀沿河1 小时前
2 模型预训练、微调、强化学习的格式
人工智能·算法·机器学习
灵机一物1 小时前
灵机一物AI智能电商小程序(已上线)-产品化架构与全场景功能解析
人工智能
黄焖鸡能干四碗2 小时前
业务数据中台技术方案(PPT)
大数据·数据库·人工智能·安全·需求分析
KG_LLM图谱增强大模型2 小时前
Palantir “本体论”:是跨时代的AI架构,还是精心包装的“建表”骗局?
人工智能
东离与糖宝2 小时前
AI 智能体安全踩坑记:Java 为 OpenClaw 添加权限控制与审计日志实战
java·人工智能
love530love2 小时前
OpenClaw搭配LM Studio VS Ollama:Windows CUDA实战深度对比与完全配置指南
人工智能·windows·vllm·ollama·llama.cpp·lm studio·openclaw
王侯相将2 小时前
Claude Code 是什么?
人工智能·深度学习
Tony Bai2 小时前
【AI 智能体时代的软件工程】07 任务工程:告别 Prompt,建立“自治契约”
人工智能·prompt
你的小眼睛ii2 小时前
window本地安装OpenClaw-CN遇到的问题
人工智能