From 9f2f031966242ab7a8029ef16844e8d985855e8f Mon Sep 17 00:00:00 2001 From: tt-P607 <68868379+tt-P607@users.noreply.github.com> Date: Thu, 13 Nov 2025 16:27:58 +0800 Subject: [PATCH] =?UTF-8?q?feat(config):=20=E6=B7=BB=E5=8A=A0=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E4=BB=A5=E5=88=87=E6=8D=A2=E7=9F=A5=E8=AF=86=E6=91=98?= =?UTF-8?q?=E8=A6=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 这在 `lpmm_knowledge` 部分引入了一个新的配置选项 `enable_summary`。用户现在可以将其设置为 `false`,以防止知识库摘要被包含在最终提示上下文中。 这提供了对输出冗长程度的更多控制,并有助于管理令牌消耗。该功能默认启用,以保持现有行为。 --- src/chat/utils/prompt.py | 4 ++-- src/config/official_configs.py | 1 + template/bot_config_template.toml | 1 + 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/chat/utils/prompt.py b/src/chat/utils/prompt.py index e9fedd000..a57123b8e 100644 --- a/src/chat/utils/prompt.py +++ b/src/chat/utils/prompt.py @@ -506,7 +506,7 @@ class Prompt: } # 使用 asyncio.gather 实现并发执行,提供更好的错误处理和性能 - results = [None] * len(tasks) # 预分配结果列表,保持任务顺序 + results: list[Any] = [None] * len(tasks) # 预分配结果列表,保持任务顺序 tasks_to_run = [] # 存储带超时的任务 task_info = [] # 存储任务信息,用于结果处理 @@ -829,7 +829,7 @@ class Prompt: knowledge_parts.append(f"- [{relevance_str}] {content}") # 如果有总结,也一并加入 - if knowledge_results.get("summary"): + if global_config.lpmm_knowledge.enable_summary and knowledge_results.get("summary"): knowledge_parts.append( f"\n知识总结: {knowledge_results['summary']}" ) diff --git a/src/config/official_configs.py b/src/config/official_configs.py index 3f3db32c7..d9389e33b 100644 --- a/src/config/official_configs.py +++ b/src/config/official_configs.py @@ -598,6 +598,7 @@ class LPMMKnowledgeConfig(ValidatedConfigBase): """LPMM知识库配置类""" enable: bool = Field(default=True, description="启用") + enable_summary: bool = Field(default=True, description="是否启用知识库总结") rag_synonym_search_top_k: int = Field(default=10, description="RAG同义词搜索Top K") rag_synonym_threshold: float = Field(default=0.8, description="RAG同义词阈值") info_extraction_workers: int = Field(default=3, description="信息提取工作线程数") diff --git a/template/bot_config_template.toml b/template/bot_config_template.toml index 4257e82e0..dd562e434 100644 --- a/template/bot_config_template.toml +++ b/template/bot_config_template.toml @@ -301,6 +301,7 @@ asr_provider = "api" [lpmm_knowledge] # lpmm知识库配置 enable = false # 是否启用lpmm知识库 +enable_summary = true # 是否启用知识库总结 rag_synonym_search_top_k = 10 # 同义词搜索TopK rag_synonym_threshold = 0.8 # 同义词阈值(相似度高于此阈值的词语会被认为是同义词) info_extraction_workers = 3 # 实体提取同时执行线程数,非Pro模型不要设置超过5