fix:解耦海马体,莲藕促销

This commit is contained in:
SengokuCola
2025-03-27 20:07:01 +08:00
parent dce1fdd9fd
commit 2812b0df3c
8 changed files with 116 additions and 37 deletions

View File

@@ -14,7 +14,8 @@ from .emoji_manager import emoji_manager
from .relationship_manager import relationship_manager
from ..willing.willing_manager import willing_manager
from .chat_stream import chat_manager
from ..memory_system.memory import hippocampus
# from ..memory_system.memory import hippocampus
from src.plugins.memory_system.Hippocampus import HippocampusManager
from .message_sender import message_manager, message_sender
from .storage import MessageStorage
from src.common.logger import get_module_logger
@@ -59,6 +60,22 @@ async def start_think_flow():
logger.error(f"启动大脑和外部世界失败: {e}")
raise
async def start_memory():
"""启动记忆系统"""
try:
start_time = time.time()
logger.info("开始初始化记忆系统...")
# 使用HippocampusManager初始化海马体
hippocampus_manager = HippocampusManager.get_instance()
hippocampus_manager.initialize(global_config=global_config)
end_time = time.time()
logger.success(f"记忆系统初始化完成,耗时: {end_time - start_time:.2f}")
except Exception as e:
logger.error(f"记忆系统初始化失败: {e}")
raise
@driver.on_startup
async def start_background_tasks():
@@ -79,6 +96,8 @@ async def start_background_tasks():
# 只启动表情包管理任务
asyncio.create_task(emoji_manager.start_periodic_check())
asyncio.create_task(start_memory())
@driver.on_startup
@@ -139,14 +158,14 @@ async def _(bot: Bot, event: NoticeEvent, state: T_State):
@scheduler.scheduled_job("interval", seconds=global_config.build_memory_interval, id="build_memory")
async def build_memory_task():
"""每build_memory_interval秒执行一次记忆构建"""
await hippocampus.operation_build_memory()
await HippocampusManager.get_instance().build_memory()
@scheduler.scheduled_job("interval", seconds=global_config.forget_memory_interval, id="forget_memory")
async def forget_memory_task():
"""每30秒执行一次记忆构建"""
print("\033[1;32m[记忆遗忘]\033[0m 开始遗忘记忆...")
await hippocampus.operation_forget_topic(percentage=global_config.memory_forget_percentage)
await HippocampusManager.get_instance().forget_memory(percentage=global_config.memory_forget_percentage)
print("\033[1;32m[记忆遗忘]\033[0m 记忆遗忘完成")