题目
如何在不停服的情况下更新知识库、删除旧文档和切换索引版本?
答案
小范围更新可按文档 ID 和版本增量处理:写入新分块,确认可检索后再让旧版本失效。删除文档时,同步删除或屏蔽它的分块、关键词索引和相关缓存。 大规模更换分块策略或 Embedding 模型时,建立新索引,在后台全量构建并追平期间的增量变更。经过质量与权限检查后,通过别名或配置切换在线读取位置,保留旧索引用于回滚。 一次查询最好固定到同一个知识库版本,避免召回来自新索引、回取正文却来自旧存储。引用中的文档版本也要能追溯。 ![知识库更新:先建好,再切换](https://cs-wiki.oss-cn-shanghai.aliyuncs.com/question/agent-development/extra-index-version-switch-1c1b82b8874cd40c.png) 权限撤销和敏感数据删除不能等下一次全量重建才生效,可先在查询层设置即时屏蔽,再完成物理删除。切换后继续监控空召回、错误率和答案变化。