better:优化统计和心流提示词

This commit is contained in:
SengokuCola
2025-03-28 09:34:21 +08:00
parent de8d2aba68
commit 94a554699e
6 changed files with 29 additions and 20 deletions

View File

@@ -35,6 +35,7 @@ class Heartflow:
self._subheartflows = {}
self.active_subheartflows_nums = 0
self.personality_info = " ".join(global_config.PROMPT_PERSONALITY)
async def heartflow_start_working(self):
@@ -46,13 +47,13 @@ class Heartflow:
logger.info("麦麦大脑袋转起来了")
self.current_state.update_current_state_info()
personality_info = " ".join(global_config.PROMPT_PERSONALITY)
personality_info = self.personality_info
current_thinking_info = self.current_mind
mood_info = self.current_state.mood
related_memory_info = 'memory'
sub_flows_info = await self.get_all_subheartflows_minds()
schedule_info = bot_schedule.get_current_num_task(num = 5,time_info = True)
schedule_info = bot_schedule.get_current_num_task(num = 4,time_info = True)
prompt = ""
prompt += f"你刚刚在做的事情是:{schedule_info}\n"
@@ -91,7 +92,7 @@ class Heartflow:
return await self.minds_summary(sub_minds)
async def minds_summary(self,minds_str):
personality_info = " ".join(BotConfig.PROMPT_PERSONALITY)
personality_info = self.personality_info
mood_info = self.current_state.mood
prompt = ""

View File

@@ -75,7 +75,7 @@ class SubHeartflow:
related_memory = await HippocampusManager.get_instance().get_memory_from_text(
text=message_stream_info,
max_memory_num=3,
max_memory_num=2,
max_memory_length=2,
max_depth=3,
fast_retrieval=False
@@ -96,10 +96,12 @@ class SubHeartflow:
prompt += f"你刚刚在做的事情是:{schedule_info}\n"
# prompt += f"麦麦的总体想法是:{self.main_heartflow_info}\n\n"
prompt += f"{self.personality_info}\n"
prompt += f"现在你正在上网和qq群里的网友们聊天群里正在聊的话题是{message_stream_info}\n"
if related_memory_info:
prompt += f"你想起来{related_memory_info}"
prompt += f"刚刚你的想法是{current_thinking_info}"
prompt += f"你想起来你之前见过的回忆:{related_memory_info}\n以上是你的回忆,不一定是目前聊天里的人说的,也不一定是现在发生的事情,请记住。\n"
prompt += f"刚刚你的想法是{current_thinking_info}\n"
prompt += "-----------------------------------\n"
if message_stream_info:
prompt += f"现在你正在上网和qq群里的网友们聊天群里正在聊的话题是{message_stream_info}\n"
prompt += f"你现在{mood_info}\n"
prompt += "现在你接下去继续思考,产生新的想法,不要分点输出,输出连贯的内心独白,不要太长,"
prompt += "但是记得结合上述的消息,要记得维持住你的人设,关注聊天和新内容,不要思考太多:"
@@ -108,7 +110,7 @@ class SubHeartflow:
self.update_current_mind(reponse)
self.current_mind = reponse
print(prompt)
logger.info(f"prompt:\n{prompt}\n")
logger.info(f"麦麦的脑内状态:{self.current_mind}")
async def do_after_reply(self,reply_content,chat_talking_prompt):
@@ -117,7 +119,7 @@ class SubHeartflow:
current_thinking_info = self.current_mind
mood_info = self.current_state.mood
related_memory_info = 'memory'
# related_memory_info = 'memory'
message_stream_info = self.outer_world.talking_summary
message_new_info = chat_talking_prompt
reply_info = reply_content
@@ -129,8 +131,8 @@ class SubHeartflow:
prompt += f"{self.personality_info}\n"
prompt += f"现在你正在上网和qq群里的网友们聊天群里正在聊的话题是{message_stream_info}\n"
if related_memory_info:
prompt += f"你想起来{related_memory_info}"
# if related_memory_info:
# prompt += f"你想起来{related_memory_info}。"
prompt += f"刚刚你的想法是{current_thinking_info}"
prompt += f"你现在看到了网友们发的新消息:{message_new_info}\n"
prompt += f"你刚刚回复了群友们:{reply_info}"