feat(chat): 为回复分割器添加 llmpunctuation 模式

本次更新重构了回复分割功能,引入了 `split_mode` 配置项,允许用户在两种分割模式之间进行选择,提供了更大的灵活性。

- **`llm` 模式**: 延续了由大语言模型通过 `[SPLIT]` 标记决定断句的功能。此模式下的提示词(Prompt)已进一步优化,以引导模型做出更自然的分割。
- **`punctuation` 模式**: 恢复了传统的基于标点符号的分割逻辑。这已设为新的默认模式,确保用户更新后行为与旧版本保持一致。

此外,`at_user` 插件也进行了适配,以正确处理由 `llm` 模式可能产生的多段消息。
This commit is contained in:
tt-P607
2025-09-11 17:12:01 +08:00
committed by Windpicker-owo
parent 97e566b893
commit 08dc99ae51
5 changed files with 36 additions and 19 deletions

View File

@@ -475,6 +475,7 @@ class ResponseSplitterConfig(ValidatedConfigBase):
"""回复分割器配置类"""
enable: bool = Field(default=True, description="启用")
split_mode: str = Field(default="llm", description="分割模式: 'llm''punctuation'")
max_length: int = Field(default=256, description="最大长度")
max_sentence_num: int = Field(default=3, description="最大句子数")
enable_kaomoji_protection: bool = Field(default=False, description="启用颜文字保护")