前言
各位小伙伴大家好,「软件聚导航 AI 助手」今天完成了一次重要升级--接入 RAG(检索增强生成),让它开始真正认识「软件聚导航」本身。
过去回答依赖 AI 自身知识,现在会先从软件聚导航的数据库中检索相关内容,再生成回答。
关于我
我的故事开始于 **2023 年,**那时候的我很简单,只是一个普通的 AI 问答助手,依靠 AI 自身的知识来回答问题。
如果你感兴趣,也可以看看 3 年前的我:
而这一次,我接入了一个特别的能力-RAG:
从这一刻起,我终于开始真正认识「软件聚导航」了。
现在,我会先从「软件聚导航」的数据库中寻找相关内容,再经过意图识别、关键词扩展、多路召回、相关度重排,筛选出最相关的文章,最后交给 AI 组织生成答案。
也就是说,我不只是"会聊天"了。
我开始读懂软件聚导航过去留下的内容。
RAG检索配置: 用于控制检索质量和 AI 上下文大小的平衡。具体数值根据实际情况设定。
/**
* =========================
* RAG检索配置
* =========================
*/
private $SEARCH_CONFIG = [
// 第一阶段召回:先从数据库里粗筛出 80 篇候选文章
'candidate_limit' => 80,
// 默认最终从 80 篇里精选出 6 篇交给 AI
'default_top_k' => 6,
// 给 AI 的文章数量上限是 8 篇
'max_top_k' => 8,
// 每篇文章给 AI 的正文最大长度
'content_preview_length' => 4000,
// 软件推荐最多给 AI 6 篇
'software_top_k' => 6,
// 普通问题最多给 AI 6 篇
'normal_top_k' => 6,
];
架构流程

举个列子
比如你问我:
"这个博客有什么软件推荐一下?"
我会判断用户的意图是什么?经过意图识别后,我会把这个问题理解为 软件推荐,然后扩展出"软件、工具、神器、开源、免费、效率"等关键词,从数据库中召回候选文章,再根据标题、摘要、标签、正文、热度等综合排序,选出最相关的 6 篇,交给 AI 生成回答。下图为测试效果。

测试一些比较泛的问题,比如我问:软件聚导航博主是一个什么样的人?
这个问题其实并没有一个固定答案,数据库里也没有一篇文章直接写着:软件聚导航博主是一个什么样的人。
那怎么办?
我让RAG 去检索数据库中与博主、软件聚导航、技术、生活、思考等相关的文章。
然后把这些内容交给大模型,让它从大量文章中进行归纳和分析。
最终,它可以根据这些已经存在的内容,尝试总结出:
这个博客的主人,是一个什么样的人。

这也是我觉得这次升级比较有意思的地方。
因为我不是简单地"告诉 AI 一个答案"。
而是让 AI 从一个人长期留下来的文字中,慢慢认识这个人。
总结
如今AI已不是新鲜事,你可能听说过Context、Prompt、LLM、RAG、Function Calling、Skill、MCP、Agent等一系列核心词。
本次升级的核心,正是利用 RAG(检索增强生成)。
我把博客过去积累的文章、软件介绍和各种内容,通过 RAG 接入到了 AI 的回答过程中。
从此,它不再仅凭通用知识作答,而是优先从本站内容中寻找答案。
这,就是这次升级的意义就是:让聚小导读懂自己的主人,理解主人留下的每一份内容,真正成为属于软件聚导航的AI助手。