From 127d0e039e017616e25242cc8cbab9e054007afc Mon Sep 17 00:00:00 2001 From: tt-P607 <68868379+tt-P607@users.noreply.github.com> Date: Mon, 1 Dec 2025 14:45:41 +0800 Subject: [PATCH] =?UTF-8?q?refactor(kfc):=20=E7=A7=BB=E9=99=A4=20kfc=5Frep?= =?UTF-8?q?ly=20=E5=9B=9E=E5=A4=8D=E5=88=86=E6=AE=B5=E9=80=BB=E8=BE=91?= =?UTF-8?q?=E5=8F=8A=E7=9B=B8=E5=85=B3=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 移除 `kfc_reply` 动作的 `enable_splitter` 强制禁用逻辑,并简化了统一模式下的提示词,不再指导模型如何进行消息分段。 此次重构旨在将消息分段的决策权完全交还给大语言模型,使其能够根据对话上下文和自身判断,更自然地决定回复的格式(单条或多条消息)。这简化了处理逻辑,并有望提升模型回复的流畅度和拟人化程度。 --- .../prompt_modules_unified.py | 21 +------------------ .../built_in/kokoro_flow_chatter/unified.py | 3 --- 2 files changed, 1 insertion(+), 23 deletions(-) diff --git a/src/plugins/built_in/kokoro_flow_chatter/prompt_modules_unified.py b/src/plugins/built_in/kokoro_flow_chatter/prompt_modules_unified.py index c7880d93e..e5f80982b 100644 --- a/src/plugins/built_in/kokoro_flow_chatter/prompt_modules_unified.py +++ b/src/plugins/built_in/kokoro_flow_chatter/prompt_modules_unified.py @@ -215,27 +215,8 @@ def _get_default_actions_block() -> str: """获取默认的内置动作描述块""" return """### `kfc_reply` - 发消息 发送文字回复。 - -**重要**:像真人发微信一样,把你想说的话拆成几条短消息,每条用一个 kfc_reply 动作。 - -什么时候分? -- 说完一句话后想补充一句 → 分 -- 语气转折了 → 分 -- 想让对方先看到前面的,再看到后面的 → 分 -- 一个意思说完了 → 分 - -不需要分的时候: -- 就一句话的事 → 一条就够 -- 话很短,不用拆 → 一条就够 - -示例: ```json -{ - "actions": [ - {"type": "kfc_reply", "content": "嗯嗯~"}, - {"type": "kfc_reply", "content": "我知道了"} - ] -} +{"type": "kfc_reply", "content": "你要说的话"} ``` ### `poke_user` - 戳一戳 diff --git a/src/plugins/built_in/kokoro_flow_chatter/unified.py b/src/plugins/built_in/kokoro_flow_chatter/unified.py index eee71a8b6..bfe0bd1fc 100644 --- a/src/plugins/built_in/kokoro_flow_chatter/unified.py +++ b/src/plugins/built_in/kokoro_flow_chatter/unified.py @@ -527,9 +527,6 @@ def _parse_unified_response(raw_response: str, stream_id: str | None = None) -> if isinstance(action, dict): if action.get("type") == "reply": action["type"] = "kfc_reply" - # 统一模式下模型已经自己分段了,禁用回复分割器 - if action.get("type") == "kfc_reply": - action["enable_splitter"] = False response = LLMResponse.from_dict(data)