知识库基础与向量原理
FastGPT的知识库由库、集合和数据三级结构组成,其中集合仅用于数据分类管理,最小搜索单位为整个库,不会影响搜索效果。系统采用Embedding向量构建知识库,将文本、图片等内容转换为数字数组,通过向量距离判断相似度,再通过topk召回前k个最相似内容,交由大模型做进一步语义处理。影响向量搜索精度的核心因素包括向量模型质量、数据完整性与多样性、检索器精度,以及检索词质量,其中数据与检索词优化是最易落地的调整方向。
检索流程与核心逻辑
FastGPT的知识库检索并非简单的单路径匹配,而是组合了多环节能力:首先通过问题优化实现指代消除与问题扩展,提升连续对话的检索能力;随后通过语义检索、全文检索或混合检索召回候选内容,若输入包含图片,会根据配置生成图片描述或直接生成图片向量参与检索;接着通过RRF合并多路召回结果,再用Rerank进行二次排序提升相关性;最后经过相似度过滤与引用上限裁剪,得到最终引用内容。此外,系统支持多向量映射,可为同一数据块添加多组index,解决内容长度与语义丰富度的矛盾,只要其中一组向量被召回,该数据就会被返回。
可操作配置步骤
- 优化数据块:确保每组数据语义完整单一,避免混合多个主题,提升基础检索精度。
- 配置多向量索引:为同一数据块添加多组index,覆盖不同语义片段,扩大召回范围。
- 调整检索策略:根据场景选择语义检索、全文检索或混合检索,开启Rerank优化排序效果,可根据需求调整topk召回数量平衡速度与精度。
- 图片检索适配:若需使用图片检索,需确认已配置视觉模型或支持图片的向量模型,并确保入库时生成了有效的图片索引,否则图搜图效果会受影响。
来源:https://doc.fastgpt.cn/zh-CN/guide/dataset/dataset_engine