fix:不认识的用户构建关系

This commit is contained in:
SengokuCola
2025-08-12 16:46:29 +08:00
parent 1efea7304e
commit 527f297397
2 changed files with 12 additions and 3 deletions

View File

@@ -144,7 +144,7 @@ class Person:
self.platform = platform
else:
logger.error("Person 初始化失败,缺少必要参数")
return
raise ValueError("Person 初始化失败,缺少必要参数")
if not is_person_known(person_id=self.person_id):
self.is_known = False
@@ -257,6 +257,8 @@ class Person:
def sync_to_database(self):
"""将所有属性同步回数据库"""
if not self.is_known:
return
try:
# 准备数据
data = {

View File

@@ -1,5 +1,5 @@
from src.common.logger import get_logger
from .person_info import Person
from .person_info import Person,is_person_known
import random
from src.llm_models.utils_model import LLMRequest
from src.config.config import global_config, model_config
@@ -357,7 +357,14 @@ class RelationshipManager:
for msg in user_messages:
if msg.get("user_id") == "system":
continue
msg_person = Person(user_id=msg.get("user_id"), platform=msg.get("chat_info_platform"))
try:
if not is_person_known(user_id=msg.get("user_id"), platform=msg.get("chat_info_platform")):
continue
msg_person = Person(user_id=msg.get("user_id"), platform=msg.get("chat_info_platform"))
except Exception as e:
logger.error(f"初始化Person失败: {msg}")
traceback.print_exc()
continue
# 跳过机器人自己
if msg_person.user_id == global_config.bot.qq_account:
name_mapping[f"{global_config.bot.nickname}"] = f"{global_config.bot.nickname}"