Skip to content

Commit f38a096

Browse files
支持关闭知识库索引
1 parent 33934f4 commit f38a096

3 files changed

Lines changed: 19 additions & 2 deletions

File tree

config.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ class Settings(BaseSettings):
8282
# 全局模式
8383
GLOBAL_MODE: Literal["public", "private"] = "public"
8484
GLOBAL_LLM: Literal["public", "private"] = "public"
85+
DISABLE_KB_INDEXING: bool = False
8586

8687
# Loki设置
8788
LOKI_URL: Optional[str] = None

pipeline/document_pipeline.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -415,6 +415,12 @@ async def stage_3(self, document: Document, db: Session) -> Document:
415415
async def stage_4(self, document: Document, db: Session) -> Document:
416416
"""保存阶段:将处理后的内容保存到知识库."""
417417
logger.info(f"开始保存文档到知识库: {document.filename}")
418+
# 临时关闭索引/保存到知识库阶段:
419+
# 1) 可设置环境变量 DISABLE_KB_INDEXING=true
420+
# 2) 或者直接注释掉下方调用 rag.upload_document(document)
421+
if settings.DISABLE_KB_INDEXING:
422+
logger.info("[stage_4] 索引/保存已被禁用 (DISABLE_KB_INDEXING),跳过保存到知识库阶段")
423+
return document
418424
if settings.GLOBAL_MODE == "public":
419425
namespace = "public"
420426
else:

rag/knowledgebase.py

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,12 @@ async def upload_text(self, text: str, doc_id: str, metadata: dict = None):
150150
# 将用户提供的文本封装为一个Document对象
151151
doc = Document(text=text, id_=doc_id, metadata=metadata)
152152

153-
# 执行文档注入管道
153+
# 如果希望临时跳过索引/保存到知识库,可注释掉下一行 self.pipeline.arun(...) 或开启环境变量开关。
154+
if self.disable_indexing:
155+
logger.info("[upload_text] 索引已被禁用 (DISABLE_KB_INDEXING),跳过保存知识库阶段")
156+
return doc_id
157+
158+
# 执行文档注入管道(索引与落库)
154159
await self.pipeline.arun(documents=[doc])
155160
return doc_id
156161

@@ -178,7 +183,12 @@ async def upload_document(self, document: DBDocument):
178183
excluded_llm_metadata_keys=["owner"],
179184
)
180185

181-
# 执行文档注入管道
186+
# 如果希望临时跳过索引/保存到知识库,可注释掉下一行 self.pipeline.arun(...) 或开启环境变量开关。
187+
if self.disable_indexing:
188+
logger.info("[upload_document] 索引已被禁用 (DISABLE_KB_INDEXING),跳过保存知识库阶段")
189+
return doc_id
190+
191+
# 执行文档注入管道(索引与落库)
182192
await self.pipeline.arun(documents=[doc])
183193
return doc_id
184194

0 commit comments

Comments
 (0)