feat(config): 添加配置以切换知识摘要

这在 `lpmm_knowledge` 部分引入了一个新的配置选项 `enable_summary`。用户现在可以将其设置为 `false`,以防止知识库摘要被包含在最终提示上下文中。

这提供了对输出冗长程度的更多控制,并有助于管理令牌消耗。该功能默认启用,以保持现有行为。
This commit is contained in:
tt-P607
2025-11-13 16:27:58 +08:00
committed by Windpicker-owo
parent e119b33a69
commit 9f2f031966
3 changed files with 4 additions and 2 deletions

View File

@@ -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']}"
)

View File

@@ -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="信息提取工作线程数")

View File

@@ -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