From 9e89501888b81a0cb91659ffa1667dbf849932ad Mon Sep 17 00:00:00 2001 From: Zayrex Date: Fri, 12 Dec 2025 10:16:01 +0800 Subject: [PATCH 1/2] Fix emotion parsing by replacing Chinese commas Replace Chinese comma with English comma in emotion parsing. --- src/chat/emoji_system/emoji_manager.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/chat/emoji_system/emoji_manager.py b/src/chat/emoji_system/emoji_manager.py index cfa86320..4634768b 100644 --- a/src/chat/emoji_system/emoji_manager.py +++ b/src/chat/emoji_system/emoji_manager.py @@ -993,7 +993,7 @@ class EmojiManager: ) # 处理情感列表 - emotions = [e.strip() for e in emotions_text.split(",") if e.strip()] + emotions = [e.strip() for e in emotions_text.replace(",",",").split(",") if e.strip()] # 根据情感标签数量随机选择 - 超过5个选3个,超过2个选2个 if len(emotions) > 5: From 1273f7a6ab36d4ff3675a04d62ecca55a5c20a5f Mon Sep 17 00:00:00 2001 From: Zayrex Date: Fri, 12 Dec 2025 10:56:01 +0800 Subject: [PATCH 2/2] Fix emoji emotion parsing for different delimiters --- src/chat/emoji_system/emoji_manager.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/chat/emoji_system/emoji_manager.py b/src/chat/emoji_system/emoji_manager.py index 4634768b..f7d132a3 100644 --- a/src/chat/emoji_system/emoji_manager.py +++ b/src/chat/emoji_system/emoji_manager.py @@ -271,7 +271,7 @@ def _to_emoji_objects(data: Any) -> Tuple[List["MaiEmoji"], int]: emoji.description = emoji_data.description # Deserialize emotion string from DB to list - emoji.emotion = emoji_data.emotion.split(",") if emoji_data.emotion else [] + emoji.emotion = emoji_data.emotion.replace(",",",").split(",") if emoji_data.emotion else [] emoji.usage_count = emoji_data.usage_count db_last_used_time = emoji_data.last_used_time @@ -732,7 +732,7 @@ class EmojiManager: emoji_record = Emoji.get_or_none(Emoji.emoji_hash == emoji_hash) if emoji_record and emoji_record.emotion: logger.info(f"[缓存命中] 从数据库获取表情包情感标签: {emoji_record.emotion[:50]}...") - return emoji_record.emotion.split(",") + return emoji_record.emotion.replace(",",",").split(",") except Exception as e: logger.error(f"从数据库查询表情包情感标签时出错: {e}")