当前位置:首页>php>PHP AI 进阶 RAG 知识库

PHP AI 进阶 RAG 知识库

  • 2026-09-10 10:44:54
PHP AI 进阶 RAG 知识库

PHP AI 进阶·第三层:RAG 知识库——让 AI 「懂你」

“

总进度:第 5-6 周 | 每天 30-45 分钟


第二层走完,Agent 能调工具、查数据库。

但是获取不到实际业务需要的知识,RAG 就是来解这个问题。


学习成果

  • 搭一套能用的 RAG 知识库
  • 把产品文档/技术手册变成 Agent 的「长期记忆」
  • 实现「提问 → 搜资料 → LLM 回答」的完整链路
  • 掌握分块、缓存、重排序这些生产要点

RAG 介绍

RAG 全称为Retrieval-Augmented Generation 检索增强生成。

执行流程:

用户提问 → 转成向量 → 知识库里搜最像的 3-5 段 → 拼成 prompt → 扔给 LLM 回答

没有 RAG:Agent 靠训练记忆瞎编。

有 RAG:Agent 基于你的实际资料回答,准、有时效、能查来源。


14 天学习路径

第 1-3 天:向量数据库入门 + pgvector

学习内容

向量(embedding)就是一段浮点数,用来表示文本的"意思"。

意思相近的文本,向量距离就近。

比如「苹果是水果」和「苹果是公司」距离远,但「iPhone 价格」和「苹果是公司」距离近——这就是向量搜索能做语义匹配的原因。

装 pgvector(PostgreSQL 的向量插件,生产级,不用额外装一套数据库),建个带向量字段的表,加个索引提速。

视频:

  • pgvector 官方文档 — 查就完事
  • 🐍 RAG 企业知识库搭建教程 — 前 1 小时看向量数据库概念

第 4-6 天:Embedding + 缓存策略

学习内容

把文档转成向量存起来。

三种嵌入策略:全量预嵌入(文档定稿了一次搞定)、懒加载 + 缓存(用户生成内容,第二次免费)、批处理(大文档导入,省 20-40%)。

重点是缓存—— 调 Embedding API 要花钱的(约 $0.13/1M tokens)。

用 Cache::remember + md5 做去重,第一次花钱,后续免费。

视频:

  • Laravel AI SDK Embedding 文档 — 20 分钟,API 参考
  • 🐍 RAG 企业知识库教程(2026最新) — 看嵌入章节

第 7-9 天:语义相似度搜索

学习内容

用向量搜最相关的内容。

whereVectorSimilarTo 一行搞定:用户提问 → 转向量 → 按相似度排序 → 取 Top-5。

已经有 Agent 的话,直接注册 SimilaritySearch 工具,Agent 自动搜知识库再回答——不再是瞎编,是你文档里真正写过的。

视频:

  • 🐍 RAG 企业知识库搭建教程 — 看相似度搜索实操
  • PHPVector:纯 PHP 向量数据库 — 8 分钟,了解 HNSW + BM25 原理

第 10-12 天:分块策略 + 元数据保留 + 重排序

学习内容

从「能用」到「好用」。

分块原因

太长文本转成向量后信息被"平均"了,搜不准。

200-500 token 的段落最精确。

三种分块:

  • 按段落分(文章类)
  • 按 Token 数分(技术文档,推荐 300 token + 50 重叠)
  • 按章节分(手册类)

保留元数据

每段记下来源(文档名、章节),Agent 回答时能引用。

重排序

向量先粗筛 20 条,再用 Rerank 模型精排取 3 条,比单纯看向量距离准得多。

阶段
模型
数量
精度
粗筛
Embedding + pgvector
全库 → 20 条
够用
精排
Cohere / Jina Rerank
20 → 3 条
极高

视频:

  • 🐍 RAG 企业知识库搭建教程 — 看分块和重排序
  • 🐍 RAG 企业知识库教程(2026最新) — BM25 混合搜索实战

第 13-14 天:实战项目——产品文档 RAG 知识库

学习内容

把公司产品文档做成一个 @机器人即问即答的 RAG 系统。

写个导入命令(读文件 → 拆段落 → 生成向量 → 存库),建个 Agent 工具自动检索,再通过 Webhook 接入群聊。

效果

同事不用翻文档了,群里 @机器人 就有答案,还能看来源。

视频:

  • 🐍 RAG 企业知识库搭建教程 — 完整跟一遍,~5 小时
  • 🐍 RAG 企业知识库教程(2026最新) — ~4 小时,补充理解

配套视频汇总

资源
时长
看啥
对应阶段
🐍 企业知识库搭建 RAG 系统教程
~5h
Milvus + Embedding + 检索全流程
第 1-13 天
🐍 RAG 企业知识库教程(2026最新)
~4h
密集/稀疏嵌入、BM25、向量搜索
第 4-12 天
PHPVector:纯 PHP 向量数据库
8min
HNSW + BM25,纯 PHP
第 7-9 天
Laravel AI SDK Embedding 文档
20min
toEmbeddings()
 API
第 4-6 天
pgvector 官方文档
按需
PostgreSQL 向量方案
第 1-3 天

生产注意

1. 缓存嵌入

别反复调 Embedding API,又贵又慢。

用 Cache::remember + md5 去重。

2. 分块别太细也别太粗

大小
优点
缺点
100 token
搜得准
缺上下文
300-500 token
⭐最佳
又有精度又有上下文
1000+ token
信息完整
向量平均化,精度降

推荐 300 token + 50 重叠起步。

3. 定期更新

文档会变。

设个定时任务每周重建一次嵌入。

4. 不用 pgvector 的话

方案
适用
特点
pgvector
Laravel + PostgreSQL
SQL 原生,不用额外部署
PHPVector
非 Laravel / 小项目
纯 PHP,HNSW + BM25
Milvus
大规模生产
分布式向量库

常见问题

Q:RAG 和微调有啥区别?

A:RAG 不改变模型,查询时补充上下文。微调是改模型参数。RAG 适合知识常变的场景(文档、政策),微调适合改语气风格。 多数场景 RAG 性价比高得多。

Q:调 Embedding 要花钱咋办?

A:缓存。第一次花,后面免费。产品文档一次性预嵌入,终身用。

Q:100 万条数据搜得快吗?

A:快。pgvector + IVFFlat 索引下,10ms 级别。

Q:回答能附引用吗?

A:能。元数据存了来源,prompt 里让 Agent 加上就行。


下一步

第三层走完,Agent 既能干又懂你。

若客户要求「我要退货,顺便看看有没有优惠券」应该涉及到售后加营销。

让一个 Agent 管所有事,prompt 臃肿,LLM 容易选错工具。

第四层:多 Agent 编排——让 AI 学会团队协作。


进阶路线图系列:

  • ✅ 第一层:模型调用
  • ✅ 第二层:Agent 构建
  • ✅ 第三层:RAG 知识库(本篇)
  • ⬜ 第四层:多 Agent 编排(即将发布)

最新文章

随机文章