diff --git a/src/chat/express/expression_selector.py b/src/chat/express/expression_selector.py index 21b0a16b2..ca63db943 100644 --- a/src/chat/express/expression_selector.py +++ b/src/chat/express/expression_selector.py @@ -209,14 +209,14 @@ class ExpressionSelector: return [] all_situations_str = "\n".join(all_situations) - + if target_message: target_message_str = f",现在你想要回复消息:{target_message}" - target_message_extra_block = f"4.考虑你要回复的目标消息" + target_message_extra_block = "4.考虑你要回复的目标消息" else: target_message_str = "" target_message_extra_block = "" - + # 3. 构建prompt(只包含情境,不包含完整的表达方式) prompt = (await global_prompt_manager.get_prompt_async("expression_evaluation_prompt")).format( bot_name=global_config.bot.nickname, @@ -227,7 +227,7 @@ class ExpressionSelector: target_message=target_message_str, target_message_extra_block=target_message_extra_block, ) - + # print(prompt) # 4. 调用LLM diff --git a/src/chat/focus_chat/heartFC_chat.py b/src/chat/focus_chat/heartFC_chat.py index 7704986f8..ba1222650 100644 --- a/src/chat/focus_chat/heartFC_chat.py +++ b/src/chat/focus_chat/heartFC_chat.py @@ -649,7 +649,6 @@ class HeartFChatting: return all_plan_info, processor_time_costs - async def _process_post_planning_processors_with_timing( self, observations: List[Observation], action_type: str, action_data: dict ) -> tuple[dict, dict]: @@ -681,9 +680,7 @@ class HeartFChatting: start_time = time.time() try: result = await asyncio.wait_for( - proc.process_info( - observations=observations, action_type=action_type, action_data=action_data - ), + proc.process_info(observations=observations, action_type=action_type, action_data=action_data), timeout=global_config.focus_chat.processor_max_time, ) end_time = time.time() diff --git a/src/chat/focus_chat/heartflow_message_processor.py b/src/chat/focus_chat/heartflow_message_processor.py index ad5890270..d7299d4c6 100644 --- a/src/chat/focus_chat/heartflow_message_processor.py +++ b/src/chat/focus_chat/heartflow_message_processor.py @@ -181,14 +181,13 @@ class HeartFCMessageReceiver: mes_name = chat.group_info.group_name if chat.group_info else "私聊" # current_time = time.strftime("%H:%M:%S", time.localtime(message.message_info.time)) current_talk_frequency = global_config.chat.get_current_talk_frequency(chat.stream_id) - + # 如果消息中包含图片标识,则日志展示为图片 import re + picid_match = re.search(r"\[picid:([^\]]+)\]", message.processed_plain_text) if picid_match: - logger.info( - f"[{mes_name}]{userinfo.user_nickname}: [图片] [当前回复频率: {current_talk_frequency}]" - ) + logger.info(f"[{mes_name}]{userinfo.user_nickname}: [图片] [当前回复频率: {current_talk_frequency}]") else: logger.info( f"[{mes_name}]{userinfo.user_nickname}:{message.processed_plain_text}[当前回复频率: {current_talk_frequency}]" diff --git a/src/chat/focus_chat/info_processors/relationship_processor.py b/src/chat/focus_chat/info_processors/relationship_processor.py index d4573fcad..e16def9fe 100644 --- a/src/chat/focus_chat/info_processors/relationship_processor.py +++ b/src/chat/focus_chat/info_processors/relationship_processor.py @@ -13,7 +13,6 @@ from typing import List from typing import Dict from src.chat.focus_chat.info.info_base import InfoBase from src.chat.focus_chat.info.relation_info import RelationInfo -from src.person_info.person_info import PersonInfoManager from json_repair import repair_json from src.person_info.person_info import get_person_info_manager import json @@ -26,7 +25,6 @@ from src.chat.utils.chat_message_builder import ( ) import os import pickle -import random # 消息段清理配置 @@ -446,8 +444,8 @@ class PersonImpressionpProcessor(BaseProcessor): List[InfoBase]: 处理后的结构化信息列表 """ await self.build_relation(observations) - - relation_info_str = await self.relation_identify(observations,action_type,action_data) + + relation_info_str = await self.relation_identify(observations, action_type, action_data) if relation_info_str: relation_info = RelationInfo() @@ -462,7 +460,7 @@ class PersonImpressionpProcessor(BaseProcessor): """构建关系""" self._cleanup_old_segments() current_time = time.time() - + if observations: for observation in observations: if isinstance(observation, ChattingObservation): @@ -518,7 +516,7 @@ class PersonImpressionpProcessor(BaseProcessor): # 移除已处理的用户缓存 del self.person_engaged_cache[person_id] self._save_cache() - + async def relation_identify( self, observations: List[Observation] = None, @@ -527,7 +525,7 @@ class PersonImpressionpProcessor(BaseProcessor): ): """ 从人物获取信息 - """ + """ chat_observe_info = "" current_time = time.time() @@ -567,7 +565,6 @@ class PersonImpressionpProcessor(BaseProcessor): self.last_processed_message_time = max(self.last_processed_message_time, msg_time) break - for person_id in list(self.info_fetched_cache.keys()): for info_type in list(self.info_fetched_cache[person_id].keys()): self.info_fetched_cache[person_id][info_type]["ttl"] -= 1 @@ -575,11 +572,7 @@ class PersonImpressionpProcessor(BaseProcessor): del self.info_fetched_cache[person_id][info_type] if not self.info_fetched_cache[person_id]: del self.info_fetched_cache[person_id] - - - - if action_type != "reply": return None @@ -831,7 +824,6 @@ class PersonImpressionpProcessor(BaseProcessor): logger.info(f"{self.log_prefix} 记得 {person_name} 的 {info_type}: {cached_info}") return - try: person_name = await person_info_manager.get_value(person_id, "person_name") person_impression = await person_info_manager.get_value(person_id, "impression") @@ -864,9 +856,7 @@ class PersonImpressionpProcessor(BaseProcessor): return nickname_str = ",".join(global_config.bot.alias_names) - name_block = ( - f"你的名字是{global_config.bot.nickname},你的昵称有{nickname_str},有人也会用这些昵称称呼你。" - ) + name_block = f"你的名字是{global_config.bot.nickname},你的昵称有{nickname_str},有人也会用这些昵称称呼你。" prompt = (await global_prompt_manager.get_prompt_async("fetch_person_info_prompt")).format( name_block=name_block, info_type=info_type, diff --git a/src/chat/focus_chat/info_processors/tool_processor.py b/src/chat/focus_chat/info_processors/tool_processor.py index 51bc4529e..f0034af1d 100644 --- a/src/chat/focus_chat/info_processors/tool_processor.py +++ b/src/chat/focus_chat/info_processors/tool_processor.py @@ -8,7 +8,7 @@ from src.chat.utils.prompt_builder import Prompt, global_prompt_manager from src.tools.tool_use import ToolUser from src.chat.utils.json_utils import process_llm_tool_calls from .base_processor import BaseProcessor -from typing import List, Optional +from typing import List from src.chat.heart_flow.observation.observation import Observation from src.chat.focus_chat.info.structured_info import StructuredInfo from src.chat.heart_flow.observation.structure_observation import StructureObservation @@ -92,9 +92,7 @@ class ToolProcessor(BaseProcessor): return [structured_info] - async def execute_tools( - self, observation: ChattingObservation, action_type: str = None, action_data: dict = None - ): + async def execute_tools(self, observation: ChattingObservation, action_type: str = None, action_data: dict = None): """ 并行执行工具,返回结构化信息