typing fix

This commit is contained in:
UnCLAS-Prommer
2025-08-12 17:03:34 +08:00
parent efc15e32f5
commit fb63e4d696
3 changed files with 46 additions and 45 deletions

View File

@@ -106,7 +106,7 @@ class ExpressionLearner:
# 获取该聊天流的学习强度 # 获取该聊天流的学习强度
try: try:
use_expression, enable_learning, learning_intensity = global_config.expression.get_expression_config_for_chat(self.chat_id) _, enable_learning, learning_intensity = global_config.expression.get_expression_config_for_chat(self.chat_id)
except Exception as e: except Exception as e:
logger.error(f"获取聊天流 {self.chat_id} 的学习配置失败: {e}") logger.error(f"获取聊天流 {self.chat_id} 的学习配置失败: {e}")
return False return False
@@ -129,7 +129,7 @@ class ExpressionLearner:
timestamp_start=self.last_learning_time, timestamp_start=self.last_learning_time,
timestamp_end=time.time(), timestamp_end=time.time(),
) )
if not recent_messages or len(recent_messages) < self.min_messages_for_learning: if not recent_messages or len(recent_messages) < self.min_messages_for_learning:
return False return False
@@ -168,30 +168,30 @@ class ExpressionLearner:
logger.error(f"为聊天流 {self.chat_name} 触发学习失败: {e}") logger.error(f"为聊天流 {self.chat_name} 触发学习失败: {e}")
return False return False
def get_expression_by_chat_id(self) -> Tuple[List[Dict[str, float]], List[Dict[str, float]]]: # def get_expression_by_chat_id(self) -> Tuple[List[Dict[str, float]], List[Dict[str, float]]]:
""" # """
获取指定chat_id的style表达方式已禁用grammar的获取 # 获取指定chat_id的style表达方式已禁用grammar的获取
返回的每个表达方式字典中都包含了source_id, 用于后续的更新操作 # 返回的每个表达方式字典中都包含了source_id, 用于后续的更新操作
""" # """
learnt_style_expressions = [] # learnt_style_expressions = []
# 直接从数据库查询 # # 直接从数据库查询
style_query = Expression.select().where((Expression.chat_id == self.chat_id) & (Expression.type == "style")) # style_query = Expression.select().where((Expression.chat_id == self.chat_id) & (Expression.type == "style"))
for expr in style_query: # for expr in style_query:
# 确保create_date存在如果不存在则使用last_active_time # # 确保create_date存在如果不存在则使用last_active_time
create_date = expr.create_date if expr.create_date is not None else expr.last_active_time # create_date = expr.create_date if expr.create_date is not None else expr.last_active_time
learnt_style_expressions.append( # learnt_style_expressions.append(
{ # {
"situation": expr.situation, # "situation": expr.situation,
"style": expr.style, # "style": expr.style,
"count": expr.count, # "count": expr.count,
"last_active_time": expr.last_active_time, # "last_active_time": expr.last_active_time,
"source_id": self.chat_id, # "source_id": self.chat_id,
"type": "style", # "type": "style",
"create_date": create_date, # "create_date": create_date,
} # }
) # )
return learnt_style_expressions # return learnt_style_expressions

View File

@@ -142,7 +142,7 @@ class HeartFCMessageReceiver:
else: else:
logger.info(f"[{mes_name}]{userinfo.user_nickname}:{processed_plain_text}[兴趣度:{interested_rate:.2f}]") # type: ignore logger.info(f"[{mes_name}]{userinfo.user_nickname}:{processed_plain_text}[兴趣度:{interested_rate:.2f}]") # type: ignore
person = Person.register_person(platform=message.message_info.platform, user_id=message.message_info.user_info.user_id,nickname=userinfo.user_nickname) _ = Person.register_person(platform=message.message_info.platform, user_id=message.message_info.user_info.user_id,nickname=userinfo.user_nickname) # type: ignore
except Exception as e: except Exception as e:
logger.error(f"消息处理失败: {e}") logger.error(f"消息处理失败: {e}")

View File

@@ -26,7 +26,7 @@ from src.chat.express.expression_selector import expression_selector
from src.chat.memory_system.memory_activator import MemoryActivator from src.chat.memory_system.memory_activator import MemoryActivator
from src.chat.memory_system.instant_memory import InstantMemory from src.chat.memory_system.instant_memory import InstantMemory
from src.mood.mood_manager import mood_manager from src.mood.mood_manager import mood_manager
from src.person_info.person_info import Person, get_person_id_by_person_name,is_person_known from src.person_info.person_info import Person, is_person_known
from src.plugin_system.base.component_types import ActionInfo, EventType from src.plugin_system.base.component_types import ActionInfo, EventType
from src.plugin_system.apis import llm_api from src.plugin_system.apis import llm_api
@@ -173,6 +173,7 @@ class DefaultReplyer:
stream_id: Optional[str] = None, stream_id: Optional[str] = None,
reply_message: Optional[Dict[str, Any]] = None, reply_message: Optional[Dict[str, Any]] = None,
) -> Tuple[bool, Optional[Dict[str, Any]], Optional[str]]: ) -> Tuple[bool, Optional[Dict[str, Any]], Optional[str]]:
# sourcery skip: merge-nested-ifs
""" """
回复器 (Replier): 负责生成回复文本的核心逻辑。 回复器 (Replier): 负责生成回复文本的核心逻辑。
@@ -308,7 +309,7 @@ class DefaultReplyer:
return person.build_relationship(points_num=5) return person.build_relationship(points_num=5)
async def build_expression_habits(self, chat_history: str, target: str) -> Tuple[str, str]: async def build_expression_habits(self, chat_history: str, target: str) -> str:
"""构建表达习惯块 """构建表达习惯块
Args: Args:
@@ -770,21 +771,21 @@ class DefaultReplyer:
else: else:
reply_target_block = "" reply_target_block = ""
if is_group_chat: # if is_group_chat:
chat_target_1 = await global_prompt_manager.get_prompt_async("chat_target_group1") # chat_target_1 = await global_prompt_manager.get_prompt_async("chat_target_group1")
chat_target_2 = await global_prompt_manager.get_prompt_async("chat_target_group2") # chat_target_2 = await global_prompt_manager.get_prompt_async("chat_target_group2")
else: # else:
chat_target_name = "对方" # chat_target_name = "对方"
if self.chat_target_info: # if self.chat_target_info:
chat_target_name = ( # chat_target_name = (
self.chat_target_info.get("person_name") or self.chat_target_info.get("user_nickname") or "对方" # self.chat_target_info.get("person_name") or self.chat_target_info.get("user_nickname") or "对方"
) # )
chat_target_1 = await global_prompt_manager.format_prompt( # chat_target_1 = await global_prompt_manager.format_prompt(
"chat_target_private1", sender_name=chat_target_name # "chat_target_private1", sender_name=chat_target_name
) # )
chat_target_2 = await global_prompt_manager.format_prompt( # chat_target_2 = await global_prompt_manager.format_prompt(
"chat_target_private2", sender_name=chat_target_name # "chat_target_private2", sender_name=chat_target_name
) # )
# 构建分离的对话 prompt # 构建分离的对话 prompt
@@ -846,8 +847,8 @@ class DefaultReplyer:
is_group_chat = bool(chat_stream.group_info) is_group_chat = bool(chat_stream.group_info)
if reply_message: if reply_message:
sender = reply_message.get("sender") sender = reply_message.get("sender", "")
target = reply_message.get("target") target = reply_message.get("target", "")
else: else:
sender, target = self._parse_reply_target(reply_to) sender, target = self._parse_reply_target(reply_to)