现象
使用FastGPT的向量数据库相关功能时,可能出现连接失败、数据读写异常等兼容问题,且现有测试用例覆盖不足,无法快速定位具体异常原因,涉及的向量数据库类型包括Oceanbase、PGVector、Milvus。
可能原因
- 缺少针对各向量数据库的实际运行环境集成测试用例,无法提前发现兼容隐患;
- 向量数据库的控制器代码未经过多环境验证,存在潜在异常;
- 未统一的测试数据标准,导致不同环境下的问题排查难度增加;
- 数据库连接的环境变量配置需按实际部署情况确认,未匹配真实运行环境。
排查步骤
- 确认当前使用的向量数据库类型,以及对应的FastGPT控制器代码路径(如FastGPT/packages/service/common/vectorDB/pg/index.ts);
- 检查FastGPT的向量数据库配置,确保环境变量与实际部署的数据库连接信息一致,需按实际环境确认;
- 进入FastGPT项目的
test/vectorDB目录,使用vitest运行集成测试用例; - 核对测试数据是否与官方要求的统一测试数据保持一致;
- 查看对应向量数据库控制器的报错日志,定位具体异常点。
解决与验证
- 新增针对目标向量数据库的集成测试用例,采用统一的测试数据;
- 运行vitest测试用例,验证向量数据库的连接、数据写入、查询等核心操作是否正常;
- 修复排查出的控制器代码异常,确保各向量数据库的操作兼容稳定;
- 使用实际业务数据验证向量数据库功能的运行稳定性,确认异常问题已解决。
来源:https://github.com/labring/FastGPT/issues/6194