Merge pull request #719 from supreme0597/fix/lite-knowledge-error

fix(knowledge): 在 LITE_MODE 下安全跳过不支持的知识库类型,防止 API 崩溃
This commit is contained in:
Wenjie Zhang 2026-05-25 10:34:22 +08:00 committed by GitHub
commit 925a696240
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -62,6 +62,9 @@ class KnowledgeBaseManager:
# 为每种使用中的知识库类型创建实例并加载元数据
for kb_type in kb_types_in_use:
if not KnowledgeBaseFactory.is_type_supported(kb_type):
logger.warning(f"[InitializeKB] Skip initialization for unsupported knowledge base type: {kb_type}")
continue
try:
kb_instance = self._get_or_create_kb_instance(kb_type)
# 让 KB 实例自行加载元数据
@ -180,6 +183,9 @@ class KnowledgeBaseManager:
metadata_reloaded_types: set[str] = set()
for row in rows:
kb_type = row.kb_type or "lightrag"
if not KnowledgeBaseFactory.is_type_supported(kb_type):
logger.warning(f"Skip database {row.db_id} due to unsupported knowledge base type: {kb_type}")
continue
kb_instance = self._get_or_create_kb_instance(kb_type)
db_info = kb_instance.get_database_info(row.db_id, include_files=False)
if not db_info and kb_type not in metadata_reloaded_types: