From 487c4c5ec82da59bedd4a7c3229328ebd4f2cd5f Mon Sep 17 00:00:00 2001 From: 114514 <2514624910@qq.com> Date: Thu, 24 Apr 2025 16:45:50 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BA=86=E4=B8=8E?= =?UTF-8?q?=E4=B9=8B=E5=89=8DPFC=E5=90=8C=E6=A0=B7=E7=9A=84=E5=AE=A1?= =?UTF-8?q?=E6=A0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/plugins/PFC/reply_checker.py | 2 +- src/plugins/heartFC_chat/heartflow_prompt_builder.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/plugins/PFC/reply_checker.py b/src/plugins/PFC/reply_checker.py index f4e1c9901..7e43715bf 100644 --- a/src/plugins/PFC/reply_checker.py +++ b/src/plugins/PFC/reply_checker.py @@ -100,7 +100,7 @@ class ReplyChecker: 1. 回复是否依然符合当前对话目标和实现方式 2. 回复是否与最新的对话记录保持一致性 3. 回复是否重复发言,或重复表达同质内容(尤其是只是换一种方式表达了相同的含义) -4. 回复是否包含政治敏感内容 +4. 回复是否包含违规内容(例如血腥暴力,政治敏感等) 5. 回复是否以你的角度发言,不要把"你"说的话当做对方说的话,这是你自己说的话(不要自己回复自己的消息) 6. 回复是否通俗易懂 7. 回复是否有些多余,例如在对方没有回复的情况下,依然连续多次“消息轰炸” diff --git a/src/plugins/heartFC_chat/heartflow_prompt_builder.py b/src/plugins/heartFC_chat/heartflow_prompt_builder.py index 1d19d1ca9..251b033ff 100644 --- a/src/plugins/heartFC_chat/heartflow_prompt_builder.py +++ b/src/plugins/heartFC_chat/heartflow_prompt_builder.py @@ -23,7 +23,7 @@ def init_prompt(): """ {chat_target} {chat_talking_prompt} -现在"{sender_name}"说的:{message_txt}。引起了你的注意,你想要在群里发言发言或者回复这条消息。\n +现在"{sender_name}"说的:{message_txt}。引起了你的注意,你想要在群里发言或者回复这条消息。\n 你的网名叫{bot_name},{prompt_personality} {prompt_identity}。 你正在{chat_target_2},现在请你读读之前的聊天记录,然后给出日常且口语化的回复,平淡一些, 你刚刚脑子里在想: @@ -52,7 +52,7 @@ def init_prompt(): {schedule_prompt} {chat_target} {chat_talking_prompt} -现在"{sender_name}"说的:{message_txt}。引起了你的注意,你想要在群里发言发言或者回复这条消息。\n +现在"{sender_name}"说的:{message_txt}。引起了你的注意,你想要在群里发言或者回复这条消息。\n 你的网名叫{bot_name},有人也叫你{bot_other_names},{prompt_personality}。 你正在{chat_target_2},现在请你读读之前的聊天记录,{mood_prompt},然后给出日常且口语化的回复,平淡一些, 尽量简短一些。{keywords_reaction_prompt}请注意把握聊天内容,不要回复的太有条理,可以有个性。{prompt_ger} From e0f01b159e3e1fa1aa7f65106ec9cff86a3443fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A2=A8=E6=A2=93=E6=9F=92?= <1787882683@qq.com> Date: Thu, 24 Apr 2025 20:23:11 +0800 Subject: [PATCH 2/4] fix: Ruff --- src/plugins/heartFC_chat/heartFC_generator.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/heartFC_chat/heartFC_generator.py b/src/plugins/heartFC_chat/heartFC_generator.py index 464e94e91..da43c334f 100644 --- a/src/plugins/heartFC_chat/heartFC_generator.py +++ b/src/plugins/heartFC_chat/heartFC_generator.py @@ -78,7 +78,7 @@ class HeartFCGenerator: ) -> str: info_catcher = info_catcher_manager.get_info_catcher(thinking_id) - with Timer() as t_build_prompt: + with Timer() as _build_prompt: prompt = await prompt_builder.build_prompt( build_mode="focus", reason=reason, From 996276ad1e127d3a5a4a72b8404434855bd6a0a1 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 24 Apr 2025 12:23:27 +0000 Subject: [PATCH 3/4] =?UTF-8?q?=F0=9F=A4=96=20=E8=87=AA=E5=8A=A8=E6=A0=BC?= =?UTF-8?q?=E5=BC=8F=E5=8C=96=E4=BB=A3=E7=A0=81=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/plugins/heartFC_chat/heartFC_chat.py | 10 +++++----- .../heartFC_chat/heartflow_prompt_builder.py | 13 +++++++------ src/plugins/heartFC_chat/normal_chat.py | 2 +- 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/src/plugins/heartFC_chat/heartFC_chat.py b/src/plugins/heartFC_chat/heartFC_chat.py index 8735ff7df..b87ad6529 100644 --- a/src/plugins/heartFC_chat/heartFC_chat.py +++ b/src/plugins/heartFC_chat/heartFC_chat.py @@ -595,12 +595,12 @@ class HeartFChatting: self, observed_messages_str: str, current_mind: Optional[str], structured_info: Dict[str, Any] ) -> str: """构建 Planner LLM 的提示词""" - + # 准备结构化信息块 structured_info_block = "" if structured_info: structured_info_block = f"以下是一些额外的信息:\n{structured_info}\n" - + # 准备聊天内容块 chat_content_block = "" if observed_messages_str: @@ -609,14 +609,14 @@ class HeartFChatting: chat_content_block += "\n---" else: chat_content_block = "当前没有观察到新的聊天内容。\n" - + # 准备当前思维块 current_mind_block = "" if current_mind: current_mind_block = f"\n---\n{current_mind}\n---\n\n" else: current_mind_block = " [没有特别的想法] \n\n" - + # 获取提示词模板并填充数据 prompt = (await global_prompt_manager.get_prompt_async("planner_prompt")).format( bot_name=global_config.BOT_NICKNAME, @@ -624,7 +624,7 @@ class HeartFChatting: chat_content_block=chat_content_block, current_mind_block=current_mind_block, ) - + return prompt # --- 回复器 (Replier) 的定义 --- # diff --git a/src/plugins/heartFC_chat/heartflow_prompt_builder.py b/src/plugins/heartFC_chat/heartflow_prompt_builder.py index e9148c4fc..73ad91293 100644 --- a/src/plugins/heartFC_chat/heartflow_prompt_builder.py +++ b/src/plugins/heartFC_chat/heartflow_prompt_builder.py @@ -36,7 +36,7 @@ def init_prompt(): {moderation_prompt}。注意:不要输出多余内容(包括前后缀,冒号和引号,括号,表情包,at或 @等 )。""", "heart_flow_prompt", ) - + # Planner提示词 Prompt( """你的名字是 {bot_name}。是一个女大二学生,正在QQ聊天,正在决定是否以及如何回应当前的聊天。 @@ -56,7 +56,7 @@ def init_prompt(): 必须调用 'decide_reply_action' 工具并提供 'action' 和 'reasoning'。如果选择了 'emoji_reply' 或者选择了 'text_reply' 并想追加表情,则必须提供 'emoji_query'。""", "planner_prompt", ) - + Prompt("你正在qq群里聊天,下面是群里在聊的内容:", "chat_target_group1") Prompt("和群里聊天", "chat_target_group2") Prompt("你正在和{sender_name}聊天,这是你们之前聊的内容:", "chat_target_private1") @@ -116,13 +116,14 @@ class PromptBuilder: elif build_mode == "focus": return await self._build_prompt_focus( - reason, current_mind_info, structured_info, chat_stream, + reason, + current_mind_info, + structured_info, + chat_stream, ) return None - async def _build_prompt_focus( - self, reason, current_mind_info, structured_info, chat_stream - ) -> tuple[str, str]: + async def _build_prompt_focus(self, reason, current_mind_info, structured_info, chat_stream) -> tuple[str, str]: individuality = Individuality.get_instance() prompt_personality = individuality.get_prompt(type="personality", x_person=2, level=1) prompt_identity = individuality.get_prompt(type="identity", x_person=2, level=1) diff --git a/src/plugins/heartFC_chat/normal_chat.py b/src/plugins/heartFC_chat/normal_chat.py index a3aaf3a0b..fc0c750b3 100644 --- a/src/plugins/heartFC_chat/normal_chat.py +++ b/src/plugins/heartFC_chat/normal_chat.py @@ -402,7 +402,7 @@ class NormalChat: # 确保任务状态更新,即使等待出错 (回调函数也会尝试更新) if self._chat_task is task: self._chat_task = None - + # 清理所有未处理的思考消息 try: container = await message_manager.get_container(self.stream_id) From 4f6ef7b0a754220aae8873b800a87d8b14a6d341 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A2=A8=E6=A2=93=E6=9F=92?= <1787882683@qq.com> Date: Thu, 24 Apr 2025 21:12:32 +0800 Subject: [PATCH 4/4] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E9=BA=A6=E9=BA=A6?= =?UTF-8?q?logo=E6=98=BE=E7=A4=BA=E6=AF=94=E4=BE=8B=E4=B8=8D=E5=AF=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 7eca22601..df5c1c94e 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@

- Logo + Logo