检索系统与向量数据库

向量索引一致性

说明文档更新后如何保证 PostgreSQL、对象存储和向量库中的索引一致。

检索系统与向量数据库intermediate索引一致性文档版本Qdrant重建索引

向量索引一致性解决的是“文档更新后,检索结果还能不能代表当前内容”。RAG 系统里,文档、切片、向量和元数据分散在多个地方,只要一个环节没同步,就可能召回旧内容。

这不是模型问题,而是数据一致性问题。

哪些地方会不一致

常见不一致包括:

  • 文档已更新,旧 chunk 仍在向量库。
  • PostgreSQL 里的文档版本和 Qdrant payload 不匹配。
  • Embedding 模型换了,但旧向量没有重建。
  • 索引任务失败后没有重试。

这些问题会直接影响回答可信度。

版本字段为什么关键

每个 chunk 应该能关联到:

  • doc_id
  • doc_version_id
  • chunk_id
  • embedding_model
  • is_active

这样才能过滤旧版本、重建索引和排查来源。

重建索引怎么做

重建索引要可重试、可中断、可回滚。更稳的方式是先写入新版本索引,验证成功后再切换 active 状态,而不是直接覆盖旧数据。

一句话先记住

RAG 回答错,不一定是模型错,也可能是索引还停在旧世界。

继续阅读

  • 04-rag/006-vector-database.md
  • 10-backend-for-ai-agent/004-postgresql-for-ai-app.md