From b46ad71d20e0e5e3d4bca1c119aaac3b9a7e7741 Mon Sep 17 00:00:00 2001 From: Windpicker-owo <3431391539@qq.com> Date: Mon, 1 Dec 2025 18:44:31 +0800 Subject: [PATCH] =?UTF-8?q?feat(emoji):=20=E6=B7=BB=E5=8A=A0=E6=8F=90?= =?UTF-8?q?=E5=8F=96=E7=B2=BE=E7=82=BC=E6=8F=8F=E8=BF=B0=E7=9A=84=E8=BE=85?= =?UTF-8?q?=E5=8A=A9=E5=87=BD=E6=95=B0=E5=B9=B6=E4=BC=98=E5=8C=96=E8=A1=A8?= =?UTF-8?q?=E6=83=85=E5=8C=85=E5=8F=91=E9=80=81=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/config/config.py | 2 +- src/plugins/built_in/core_actions/emoji.py | 21 ++++++++++++--------- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/src/config/config.py b/src/config/config.py index 5e5bd24b2..7087c30d1 100644 --- a/src/config/config.py +++ b/src/config/config.py @@ -1,4 +1,4 @@ -import os +import os import shutil import sys from datetime import datetime diff --git a/src/plugins/built_in/core_actions/emoji.py b/src/plugins/built_in/core_actions/emoji.py index 0805bae95..56b78c126 100644 --- a/src/plugins/built_in/core_actions/emoji.py +++ b/src/plugins/built_in/core_actions/emoji.py @@ -147,6 +147,12 @@ class EmojiAction(BaseAction): emoji_base64, emoji_description = "", "" chosen_emotion = "表情包" # 默认描述,避免变量未定义错误 + # 提取精炼描述和关键词的辅助函数(点睛之笔) + # 新格式: [精炼描述] Keywords: [关键词] Desc: [详细描述] + # 我们只需要 Desc: 之前的部分 + def extract_refined_info(full_desc: str) -> str: + return full_desc.split(" Desc:")[0].strip() + # 4. 根据配置选择不同的表情选择模式 assert global_config is not None if global_config.emoji.emoji_selection_mode == "emotion": @@ -232,13 +238,7 @@ class EmojiAction(BaseAction): show_actions=False, ) - # 准备表情描述列表 - # 提取精炼描述和关键词用于LLM选择 - def extract_refined_info(full_desc: str) -> str: - # 新格式: [精炼描述] Keywords: [关键词] Desc: [详细描述] - # 我们只需要 Desc: 之前的部分 - return full_desc.split(" Desc:")[0].strip() - + # 准备表情描述列表(使用精炼描述) emoji_descriptions = [extract_refined_info(desc) for _, desc in all_emojis_data] # 构建prompt让LLM选择描述 @@ -314,11 +314,14 @@ class EmojiAction(BaseAction): except Exception as e: logger.error(f"{self.log_prefix} 添加表情到历史记录时出错: {e}") + # 提取精炼描述用于显示(点睛之笔) + refined_description = extract_refined_info(emoji_description) + await self.store_action_info( - action_build_into_prompt=True, action_prompt_display="发送了一个表情包", action_done=True + action_build_into_prompt=True, action_prompt_display=f"发送了一个表情包: {refined_description}", action_done=True ) - return True, f"发送表情包: {emoji_description}" + return True, f"发送表情包: {refined_description}" except Exception as e: logger.error(f"{self.log_prefix} 表情动作执行失败: {e}")