Neo4jVectorStore: 过滤后的相似性搜索绕过向量索引 — 导致大规模的暴力搜索
作者: islam3iat创建于 2026年9月14日更新于 2026年9月14日
标签status: waiting-for-triage
错误描述
当用户传递 FilterExpression 后,过滤器将在 db.index.vector.queryNodes() 获取候选项后运行为 WHERE 子句。这意味着:
- 向量索引通过相似性获取前 K 个结果
- 过滤器在 Cypher 中在获取后应用
- 最终结果可能少于请求的 topK
- 在大规模场景中,这会导致全集扫描
内容来源: spring-projects/spring-ai