refactor: improve knowledge base index removal and streamline vector handling logic

This commit is contained in:
mlogclub
2026-06-02 11:47:35 +08:00
parent c2d05863ba
commit 99d5a951be
4 changed files with 35 additions and 37 deletions
+2 -2
View File
@@ -157,7 +157,7 @@ func (s *index) RemoveKnowledgeBaseIndex(ctx context.Context, knowledgeBaseID in
return nil
}
if err := s.deleteChunkVectors(ctx, s.collectChunkVectorIDs(chunks)); err != nil {
return fmt.Errorf("failed to delete vectors for knowledge base %d: %w", knowledgeBaseID, err)
slog.Error("Failed to delete knowledge base vectors", "knowledge_base_id", knowledgeBaseID, "error", err)
}
if err := repositories.KnowledgeChunkRepository.DeleteByKnowledgeBaseID(sqls.DB(), knowledgeBaseID); err != nil {
return fmt.Errorf("failed to delete chunks for knowledge base %d: %w", knowledgeBaseID, err)
@@ -326,6 +326,6 @@ func joinSimilarQuestions(items []string) string {
}
func (s *index) resetKnowledgeBaseIndexStorage(ctx context.Context, knowledgeBaseID int64) error {
chunks := repositories.KnowledgeChunkRepository.Find(sqls.DB(), sqls.NewCnd().Eq("knowledge_base_id", knowledgeBaseID))
chunks := repositories.KnowledgeChunkRepository.FindByKnowledgeBaseID(sqls.DB(), knowledgeBaseID)
return s.cleanupKnowledgeBaseChunks(ctx, knowledgeBaseID, chunks)
}