From b9ddbb60a18bb97c20868450b2844b02dbeb30a9 Mon Sep 17 00:00:00 2001 From: Windpicker-owo <3431391539@qq.com> Date: Mon, 29 Sep 2025 12:48:45 +0800 Subject: [PATCH] =?UTF-8?q?fix(chat):=20=E5=B0=86=E5=90=8C=E6=AD=A5?= =?UTF-8?q?=E8=B0=83=E7=94=A8=E6=94=B9=E4=B8=BA=E5=BC=82=E6=AD=A5=E8=B0=83?= =?UTF-8?q?=E7=94=A8=E4=BB=A5=E5=8C=B9=E9=85=8D=E6=8E=A5=E5=8F=A3=E5=8F=98?= =?UTF-8?q?=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修改了多处 person_info_manager.get_value() 方法的调用方式,从同步调用改为异步调用(添加 await 关键字),使其与异步接口保持一致。这确保了在获取用户信息时的正确异步操作,避免了潜在的阻塞问题。 涉及文件: - src/chat/replyer/default_generator.py (3处修改) - src/chat/utils/prompt.py (1处修改) - src/person_info/relationship_builder.py (1处修改) --- src/chat/replyer/default_generator.py | 6 +++--- src/chat/utils/prompt.py | 2 +- src/person_info/relationship_builder.py | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/chat/replyer/default_generator.py b/src/chat/replyer/default_generator.py index 531054351..c2a86f979 100644 --- a/src/chat/replyer/default_generator.py +++ b/src/chat/replyer/default_generator.py @@ -757,7 +757,7 @@ class DefaultReplyer: if platform and user_id: person_id = PersonInfoManager.get_person_id(platform, user_id) person_info_manager = get_person_info_manager() - sender_name = person_info_manager.get_value(person_id, "person_name") or "未知用户" + sender_name = await person_info_manager.get_value(person_id, "person_name") or "未知用户" else: sender_name = "未知用户" @@ -856,7 +856,7 @@ class DefaultReplyer: if platform and user_id: person_id = PersonInfoManager.get_person_id(platform, user_id) person_info_manager = get_person_info_manager() - sender_name = person_info_manager.get_value(person_id, "person_name") or "未知用户" + sender_name = await person_info_manager.get_value(person_id, "person_name") or "未知用户" else: sender_name = "未知用户" @@ -1030,7 +1030,7 @@ class DefaultReplyer: # 检查是否是bot自己的名字,如果是则替换为"(你)" bot_user_id = str(global_config.bot.qq_account) - current_user_id = person_info_manager.get_value(person_id, "user_id") + current_user_id = await person_info_manager.get_value(person_id, "user_id") current_platform = reply_message.get("chat_info_platform") if current_user_id == bot_user_id and current_platform == global_config.bot.platform: diff --git a/src/chat/utils/prompt.py b/src/chat/utils/prompt.py index c5f6d3b39..e17a71069 100644 --- a/src/chat/utils/prompt.py +++ b/src/chat/utils/prompt.py @@ -926,7 +926,7 @@ class Prompt: person_info_manager = get_person_info_manager() person_id = await person_info_manager.get_person_id_by_person_name(sender) if person_id: - user_id = person_info_manager.get_value(person_id, "user_id") + user_id = await person_info_manager.get_value(person_id, "user_id") return str(user_id) if user_id else "" return "" diff --git a/src/person_info/relationship_builder.py b/src/person_info/relationship_builder.py index 35ac76d7d..df0b25e77 100644 --- a/src/person_info/relationship_builder.py +++ b/src/person_info/relationship_builder.py @@ -178,7 +178,7 @@ class RelationshipBuilder: } segments.append(new_segment) person_info_manager = get_person_info_manager() - person_name = person_info_manager.get_value(person_id, "person_name") or person_id + person_name = await person_info_manager.get_value(person_id, "person_name") or person_id logger.debug( f"{self.log_prefix} 重新眼熟用户 {person_name} 创建新消息段(超过10条消息间隔): {new_segment}" )