Windpicker-owo
60b3a2ba4f
feat(relationship): 重构关系信息提取系统并集成聊天流印象
...
- 在 RelationshipFetcher 中添加 build_chat_stream_impression 方法,支持聊天流印象信息构建
- 扩展数据库模型,为 ChatStreams 表添加聊天流印象相关字段(stream_impression_text、stream_chat_style、stream_topic_keywords、stream_interest_score)
- 为 UserRelationships 表添加用户别名和偏好关键词字段(user_aliases、preference_keywords)
- 在 DefaultReplyer、Prompt 和 S4U PromptBuilder 中集成用户关系信息和聊天流印象的组合输出
- 重构工具系统,为 BaseTool 添加 chat_stream 参数支持上下文感知
- 移除旧的 ChatterRelationshipTracker 及相关关系追踪逻辑,统一使用评分API
- 在 AffinityChatterPlugin 中添加 UserProfileTool 和 ChatStreamImpressionTool 支持
- 优化计划执行器,移除关系追踪相关代码并改进错误处理
BREAKING CHANGE: 移除了 ChatterRelationshipTracker 类及相关的关系追踪功能,现在统一使用 scoring_api 进行关系管理。BaseTool 构造函数现在需要 chat_stream 参数。
2025-11-19 23:27:11 +08:00
Windpicker-owo
dcd97276cc
feat(chat): 添加消息重复处理防护机制
...
在StreamContext中添加processing_message_id字段,用于跟踪当前正在处理的目标消息ID。在AffinityFlowChatter规划器中实现重复消息检测逻辑,防止对同一消息进行重复回复处理。
- 在增强版规划流程和Normal模式流程中添加目标消息ID检查
- 当检测到正在处理相同消息时返回no_action避免重复
- 在处理完成后清理processing_message_id标记
- 添加详细的日志记录用于调试和监控
2025-11-19 23:27:07 +08:00
Windpicker-owo
90c5eb1274
feat(chat): 添加Chatter处理状态跟踪机制
...
在StreamLoopManager中添加is_chatter_processing标志来精确跟踪Chatter处理状态,优化消息打断检查逻辑。
- 在distribution_manager中设置和清除Chatter处理标志
- 在message_manager中基于处理状态进行打断检查
- 在数据模型中添加is_chatter_processing字段
2025-11-19 23:27:05 +08:00
Windpicker-owo
4d8fce1fe1
refactor(chat): 简化任务管理架构,移除多重回复支持
...
- 移除 ChatterManager 中的复杂任务追踪逻辑(_processing_tasks)
- 将流循环任务管理从 StreamLoopManager 转移到 StreamContext
- 简化消息打断机制,通过取消 stream_loop_task 实现
- 移除多重回复相关功能,统一使用单一任务管理
- 优化错误处理和资源清理逻辑
BREAKING CHANGE: 移除了多重回复功能,所有流处理现在使用单一任务架构
2025-11-19 23:27:00 +08:00
Windpicker-owo
e230d1d73b
feat(message): 在消息处理中嵌入 format_info 到 additional_config
...
在 bot.py 和 chat_stream.py 中新增逻辑,将消息的 format_info 嵌入到 additional_config 字段中,确保 Action 能够正确检查适配器支持的消息类型。同时删除已废弃的 optimized_chat_stream.py 文件,并修复 notice_handler.py 中的类型注解问题。
- 在 bot.py 和 chat_stream.py 中添加 _prepare_additional_config 方法
- 将 format_info 序列化后嵌入 additional_config JSON 中
- 增强 StreamContext.check_types 方法的日志输出以便调试
- 删除不再使用的 optimized_chat_stream.py 文件
- 修复 notice_handler.py 中的类型注解问题
2025-11-19 23:26:51 +08:00
tt-P607
9ea92e26c1
fix: 增强系统健壮性,优化核心组件的错误处理
...
在多个核心模块中增加了前置检查和更详细的错误处理逻辑,以防止因组件初始化失败或外部数据格式不符预期而导致的运行时崩溃。
主要变更:
- **记忆系统:** 在执行记忆构建、融合和价值评估前,增加对相关引擎是否初始化的检查。优化了向量数据库初始化失败时的处理流程,并增强了向量搜索结果的解析安全性。
- **插件系统:** 统一并优化了LLM可用工具定义的获取方式,增加了错误捕获。调整了工具执行器以安全地解析LLM返回的工具调用请求。
- **向量数据库:** 当ChromaDB连接失败时,显式抛出 `ConnectionError`,使上层调用者能更好地捕获和处理该特定问题。
2025-11-19 23:25:26 +08:00
minecraft1024a
f1dfe64f88
chore: 代码格式化与类型注解优化
...
对项目中的多个文件进行了代码风格调整和类型注解更新。
- 使用 ruff 工具对代码进行自动格式化,主要包括:
- 统一 import 语句的顺序和风格。
- 移除未使用的 import。
- 调整代码间距和空行。
- 将部分 `Optional[str]` 和 `List[T]` 等旧式类型注解更新为现代的 `str | None` 和 `list[T]` 语法。
- 修复了一些小的代码风格问题,例如将 `f'...'` 更改为 `f"..."`。
2025-11-19 23:24:42 +08:00
tt-P607
63af866e3d
feat(plan): 为月度计划添加软删除并优化状态提示词
...
为 `MonthlyPlan` 数据库模型增加 `is_deleted` 字段,以支持软删除功能,避免数据直接丢失。
同时,统一并优化了注入到AI上下文中的当前日程活动提示词,指导模型仅在被直接询问时才提及自身状态,使对话更加自然流畅。
2025-11-19 23:24:32 +08:00
tt-P607
90d010f1f0
fix(chat): 防止在生成回复时触发消息打断
...
通过在聊天流上下文中引入 `is_replying` 状态标志,解决了在LLM生成回复期间可能被新消息错误打断的问题。
- 在调用LLM生成内容前将 `is_replying` 设置为 `True`。
- 在消息打断检查逻辑中,如果 `is_replying` 为 `True` 则跳过检查。
- 使用 `finally` 块确保无论生成成功或失败,`is_replying` 状态都会被重置为 `False`。
这确保了回复生成的原子性,防止了因用户快速连续发送消息而导致的自我打断。
2025-11-19 23:24:18 +08:00
tt-P607
54cfbacefa
feat(chat): 优化消息打断逻辑,仅限触发用户
...
为了防止群聊中其他用户的消息意外中断正在进行的AI多重回复,引入了“触发用户”机制。
- 现在,只有发起该轮对话的用户发送的新消息才可能触发打断。
- 此外,表情包和Emoji等非文本消息将被忽略,不再触发打断,以提高交互的流畅性。
2025-11-19 23:24:16 +08:00
Windpicker-owo
1eda54cb8f
feat(notice): 实现全局notice消息管理系统
...
添加全局notice管理器,将notice消息与普通消息分离处理。主要功能包括:
- 创建 GlobalNoticeManager 单例类,支持公共和特定聊天流作用域
- 在 message_manager 中集成notice检测和处理逻辑
- 扩展数据库模型和消息类,添加notice相关字段
- 在提示词生成器中添加notice信息块展示
- 配置系统支持notice相关参数设置
- 适配器插件增强notice类型识别和配置
notice消息特点:
- 默认不触发聊天流程,只记录到全局管理器
- 可在提示词中展示最近的系统通知
- 支持按类型设置不同的生存时间
- 支持公共notice(所有聊天可见)和流特定notice
BREAKING CHANGE: 数据库消息表结构变更,需要添加 is_public_notice 和 notice_type 字段
2025-11-19 23:23:55 +08:00
tt-P607
9a6e51b5a6
perf(cross_context): 优化S4U上下文生成性能与逻辑
...
通过引入批量数据库查询,显著提升了跨群聊上下文(S4U)功能的性能和效率。旧的实现方式会对每个群聊进行一次数据库查询,导致在群聊数量多时性能低下。
主要变更:
- 在 `message_repository` 中新增 `get_user_messages_from_streams` 函数,使用 CTE 和 `row_number()` 在单个请求中高效检索所有目标聊天流中的用户消息。
- 重构 `build_cross_context_s4u` 以使用新的批量查询方法,大幅减少了数据库I/O和应用层循环。
- 增强了私聊场景下的逻辑,会同时获取机器人的消息以提供更完整的对话历史。
- 改进了私聊上下文的标题,使其对用户更加友好。
- 为S4U流程添加了更详细的日志,便于问题排查。
2025-11-19 23:23:43 +08:00
minecraft1024a
5103f3ed42
fix(server): 移除启动日志中多余的协议前缀
2025-11-19 23:22:47 +08:00
minecraft1024a
6ce331cf0c
chore: 代码清理和格式化
...
对项目代码进行了一系列小幅度的清理和改进,包括:
- 移除未使用的导入语句
- 统一代码格式,如调整空行和导入顺序
- 优化日志输出的可读性
- 更新类型注解以符合现代 Python 语法
- 修复代码风格检查器(linter)报告的问题
2025-11-19 23:21:54 +08:00
minecraft1024a
b71f664888
feat(server): 增加端口占用自动检测和递增功能
...
当服务器启动时指定的端口被占用时,会自动检测并尝试使用下一个可用端口,避免因端口冲突导致启动失败。
同时,更新了 NapCat 适配器插件,使其能够从全局服务器实例中获取正确的地址和端口,确保与核心服务器的通信。
2025-11-19 23:21:38 +08:00
tt-P607
3ae6761cbf
revert: 回退 commit 94e34c9370
2025-11-19 23:21:12 +08:00
tt-P607
2e2691c8d5
fix(chat): 修复消息打断会取消正在进行的回复任务的问题
...
之前的消息打断逻辑会无差别地取消处理流中的所有任务。这会导致一个问题:当用户在机器人生成回复期间快速发送新消息时,回复任务会被意外中断,导致机器人无法正常完成回复。
本次修改通过引入 `is_replying` 状态来解决此问题:
1. 在 `StreamContext` 中新增 `is_replying` 状态标志,用于追踪回复生成过程。
2. 当开始生成回复时,设置该标志为 `True`,并在回复完成或取消后通过 `finally` 块确保其恢复为 `False`。
3. `MessageManager` 的打断检查逻辑现在会首先检查此标志,如果为 `True` 则跳过打断,从而保护正在进行的回复。
4. `cancel_all_stream_tasks` 也增加了 `exclude_reply` 选项,确保即使触发打断,也不会取消回复任务。
2025-11-19 23:21:10 +08:00
Windpicker-owo
bdf0035034
refactor(chat): 重构关系系统并优化消息打断处理机制
...
- 移除独立的RelationshipConfig,将关系追踪参数整合到AffinityFlowConfig
- 实现消息打断后立即重新处理流程,提升交互响应性
- 优化关系追踪系统,添加概率筛选和超时保护机制
- 改进机器人自引用处理,确保消息内容正确显示
- 增强用户信息提取逻辑,兼容多种消息格式
- 添加异步后台任务处理,避免阻塞主回复流程
- 调整兴趣评分阈值和权重参数,优化消息匹配精度
2025-11-19 23:20:49 +08:00
LuiKlee
d9cc109401
重构database_data_model.py
...
没用力测试,炸了叫lui修
2025-11-19 23:20:46 +08:00
minecraft1024a
fb90d67bf6
refactor(core): 统一代码风格并移除未使用的导入
...
本次提交主要进行代码风格的统一和现代化改造,具体包括:
- 使用 `|` 联合类型替代 `typing.Optional`,以符合 PEP 604 的现代语法。
- 移除多个文件中未被使用的导入语句,清理代码。
- 调整了部分日志输出的级别,使其更符合调试场景。
- 统一了部分文件的导入顺序和格式。
2025-11-19 23:20:40 +08:00
雅诺狐
38e4116c18
refactor(db,plugin): 优化数据库初始化和插件系统类型安全
...
- 重构数据库初始化逻辑,添加防重入保护和更好的错误处理
- 优化插件组件注册系统的类型注解和代码结构
- 简化统计模块异常处理逻辑
- 移除插件管理器中的重载功能以简化代码
- 更新Pyright配置排除内置插件目录
- 修复权限管理器异步方法调用
2025-11-19 23:20:31 +08:00
Windpicker-owo
1bd5580ff5
feat(chat): 优化消息打断系统概率模型为反比例函数
...
将消息打断系统的概率计算从线性模型改为反比例函数模型,
提供更合理的打断概率分布:
- 第1次打断概率约80%
- 第2次打断概率约35%
- 第3次打断概率约15%
- 后续趋近于最低概率(5%)
新模型通过反比例函数实现前期高概率、快速衰减的特性,
避免线性模型中后期打断概率仍然较高的问题,提升用户体验。
2025-11-19 23:20:18 +08:00
Windpicker-owo
a3e08e591f
feat(chat): 重构消息打断系统为线性概率模型
...
将复杂的指数衰减概率模型简化为线性概率模型,提高可预测性和可配置性
- 新增最低打断概率配置,确保始终有打断机会
- 移除复杂的概率因子计算,改用简单的线性递减公式
- 增加最大打断次数默认值从3提升到10
- 保留废弃配置项以确保向后兼容
- 更新配置模板和文档说明新的概率计算方式
2025-11-19 23:20:16 +08:00
tt-P607
9dc4997fcc
fix(db): 处理关闭连接时可能出现的 CancelledError
...
在异步任务被取消时,`session.close()` 操作可能会抛出 `asyncio.CancelledError`。
此提交通过捕获该特定异常并记录警告,增强了连接关闭过程的健壮性,防止了因未处理的异常而导致程序意外中断。
2025-11-19 23:20:11 +08:00
雅诺狐
635a39fa5a
refactor: 清理项目结构并修复类型注解问题
...
修复 SQLAlchemy 模型的类型注解,使用 Mapped 类型避免类型检查器错误
- 修正异步数据库操作中缺少 await 的问题
- 优化反注入统计系统的数值字段处理逻辑
- 添加缺失的导入语句修复模块依赖问题
2025-11-19 23:20:11 +08:00
雅诺狐
694f1f8c69
refactor: 优化异步调用和权限系统架构
...
- 移除bot.py中不必要的asyncio.to_thread包装
- 将权限API的is_master方法改为异步调用
- 删除不再使用的SQLAlchemyTransaction类
2025-11-19 23:20:08 +08:00
sunbiz1024
950b086063
ruff
2025-11-19 23:19:53 +08:00
minecraft1024a
2a89efe47a
ruff fix但指定了--unsafe-fixes
2025-11-19 23:19:42 +08:00
minecraft1024a
f8e62d0253
ruff: 清理代码并规范导入顺序
...
对整个代码库进行了大规模的清理和重构,主要包括:
- 统一并修复了多个文件中的 `import` 语句顺序,使其符合 PEP 8 规范。
- 移除了大量未使用的导入和变量,减少了代码冗余。
- 修复了多处代码风格问题,例如多余的空行、不一致的引号使用等。
- 简化了异常处理逻辑,移除了不必要的 `noqa` 注释。
- 在多个文件中使用了更现代的类型注解语法(例如 `list[str]` 替代 `List[str]`)。
2025-11-19 23:19:07 +08:00
雅诺狐
a9c592b203
Refactor memory metadata index to use Rust backend
...
Replaces the Python implementation of MemoryMetadataIndex with a Rust-accelerated version, removing legacy code and fallback logic. Updates search, add, and stats methods to delegate to the Rust backend. Also adds missing imports in llm_data_model.py and base_event.py for improved type support and event handling.
2025-11-19 23:18:42 +08:00
Windpicker-owo
a7bc1b4f20
refactor(chat): 优化异步任务处理和消息管理逻辑
...
- 使用asyncio.create_task替代await调用,提升并发性能
- 简化流管理器的槽位获取逻辑,移除回退方案
- 重构上下文管理器的消息添加和更新机制
- 移除StreamContext中的冗余方法,保持数据模型的简洁性
- 优化兴趣度评分系统的更新流程,减少阻塞操作
这些改动主要关注性能优化和代码结构简化,不涉及功能变更。
2025-11-19 23:18:24 +08:00
minecraft1024a
cd84373828
style: 统一代码风格并进行现代化改进
...
对整个代码库进行了一次全面的风格统一和现代化改进。主要变更包括:
- 将 `hasattr` 等内置函数中的字符串参数从单引号 `'` 统一为双引号 `"`。
- 采用现代类型注解,例如将 `Optional[T]` 替换为 `T | None`,`List[T]` 替换为 `list[T]` 等。
- 移除不再需要的 Python 2 兼容性声明 `# -*- coding: utf-8 -*-`。
- 清理了多余的空行、注释和未使用的导入。
- 统一了文件末尾的换行符。
- 优化了部分日志输出和字符串格式化 (`f"{e!s}"`)。
这些改动旨在提升代码的可读性、一致性和可维护性,使其更符合现代 Python 编码规范。
2025-11-19 23:18:16 +08:00
雅诺狐
1c9c4884c6
refactor(deps): 将jieba分词库替换为rjieba
2025-11-19 23:18:07 +08:00
雅诺狐
14fdc34a97
feat(logger): 增强日志系统,支持动态配置和文件压缩
...
- 添加动态logger元数据注册表,支持颜色和别名的运行时配置
- 实现日志文件自动压缩为tar.gz格式,节省存储空间
- 增强文件保留策略,支持配置保留天数(0=禁用,-1=永不删除,N>0=保留N天)
- 优化日志清理任务调度,改为每天午夜执行
- 改进TimestampedFileHandler的轮转逻辑和错误处理
- 更新配置模板,版本升级至7.1.7
2025-11-19 23:15:38 +08:00
Windpicker-owo
481252d660
refactor(chat): 异步化聊天系统并重构兴趣值计算机制
...
将同步调用改为异步调用以提升性能,重构兴趣值计算流程以支持更灵活的组件化架构。主要改进包括:
- 异步化ChatManager相关方法,避免阻塞主线程
- 重构兴趣值计算系统,从插件内部计算改为通过兴趣管理器统一处理
- 新增should_act字段支持更细粒度的动作决策
- 优化初始化逻辑,避免构造函数中的异步操作
- 扩展插件系统支持兴趣计算器组件注册
- 更新数据库模型以支持新的兴趣值相关字段
这些改进提升了系统的响应性能和可扩展性,同时保持了API的向后兼容性。
2025-11-19 23:15:31 +08:00
Windpicker-owo
f8aa149c39
refactor(chat): 优化流循环管理和数据库性能
...
移除StreamLoopManager中的锁机制,简化并发流处理逻辑
- 删除loop_lock,减少锁竞争和超时问题
- 优化流启动、停止和清理流程
- 增强错误处理和日志记录
增强数据库操作性能
- 集成数据库批量调度器和连接池管理器
- 优化ChatStream保存机制,支持批量更新
- 改进数据库会话管理,提高并发性能
清理和优化代码结构
- 移除affinity_chatter中的重复方法
- 改进prompt表达习惯格式化
- 完善系统启动和清理流程
2025-11-19 23:14:16 +08:00
John Richard
b2d91aac3d
更改部分类型注解
2025-11-19 23:13:56 +08:00
John Richard
a79253c714
re-style: 格式化代码
2025-11-19 23:13:20 +08:00
John Richard
00ba07e0e1
style: 格式化代码
2025-11-19 23:12:18 +08:00
minecraft1024a
0e0dedcdf7
fix(db): 修复数据库会话获取失败时的处理逻辑
...
在 `db_query` 和 `db_save` 函数中,增加了对数据库会话(session)获取失败的检查。当无法获取会话时,记录错误日志并返回 None 或空列表,避免了后续操作因会话为空而引发的异常。
同时,修复了 `proactive_thinker_executor` 中因数据库查询返回 None 而导致处理 `action_history` 时出错的问题。
2025-11-19 23:11:50 +08:00
Windpicker-owo
6fecfa8857
refactor(storage): 迁移记忆系统架构至现代化Vector DB方案
...
重构记忆存储层,采用ChromaDB作为核心向量数据库引擎,提升系统可扩展性和查询性能。通过引入VectorMemoryStorage替代原有的UnifiedMemoryStorage实现,实现了更高效的向量索引和检索机制。
主要变更包括:
- 架构层面:完全重构记忆存储抽象层,移除577行旧存储实现代码
- 配置系统:新增41项Vector DB专用配置参数,支持细粒度性能调优
- 查询优化:增强ChromaDB查询条件处理器,添加智能回退机制
- 系统集成:更新记忆系统初始化流程,适配新的存储接口
- 类型安全:修复异步调用类型不匹配问题
BREAKING CHANGE: 记忆存储API接口发生重大变更,UnifiedMemoryStorage相关类已废弃
2025-11-19 23:11:29 +08:00
tt-P607
a109d31497
fix(db): 增强数据库会话管理的容错性
...
调整了 `get_db_session` 的行为,当数据库未能成功初始化时,它现在会返回 `None` 并记录错误,而不是抛出异常。这提高了应用在数据库连接不可用时的健壮性,避免了程序因无法获取会话而崩溃。
- `VideoAnalyzer` 已更新,增加了对会话为 `None` 的检查,以安全地跳过数据库读写操作。
- 附带对 `VideoAnalyzer` 和 `LegacyVideoAnalyzer` 进行了重构,将模型选择和API请求执行的逻辑抽象到独立的 `_model_selector` 和 `_executor` 组件中,提升了代码的清晰度和可维护性。
2025-11-19 23:11:22 +08:00
Windpicker-owo
3fcf8e9add
feat(memory): 重构记忆系统并移除插件热重载
...
重构记忆系统核心模块,引入全局记忆作用域、记忆指纹去重机制和查询规划器,优化多阶段检索性能。移除插件热重载系统及其相关依赖。
主要变更:
- 引入全局记忆作用域,简化记忆管理
- 实现记忆指纹去重,避免重复记忆存储
- 新增查询规划器,支持语义查询规划和记忆类型过滤
- 优化多阶段检索,增加语义重排和权重配置
- 改进向量存储,支持嵌入维度自动解析和查询向量生成
- 增强元数据索引,支持主体索引和更新操作
- 记忆构建器支持多主体和自然语言展示
- 移除watchdog依赖和插件热重载模块
- 更新配置模板,简化记忆配置项
BREAKING CHANGE: 移除插件热重载系统,相关API和命令不再可用。记忆系统接口有较大调整,使用该系统的模块需要适配新接口。
2025-11-19 23:11:14 +08:00
Windpicker-owo
0a3c908654
feat(memory): 增强记忆构建上下文处理能力并优化兴趣度批量更新机制
...
- 在记忆构建过程中允许检索历史记忆作为上下文补充
- 改进LLM响应解析逻辑,增强JSON提取兼容性
- 优化消息兴趣度计算和批量更新机制,减少数据库写入频率
- 添加构建状态管理,支持在BUILDING状态下进行记忆检索
- 修复stream_id拼写错误处理和历史消息获取逻辑
2025-11-19 23:11:10 +08:00
Windpicker-owo
7986afe820
feat(database): 为 SQLite 添加 WAL 模式支持和性能优化配置
...
增加 SQLite 数据库性能优化功能,包括:
- 启用 WAL 模式提高并发性能
- 设置合理的超时时间和同步级别
- 添加数据库定期维护功能
- 在会话初始化时自动应用优化配置
- 增加连接超时时间从30秒到60秒
这些优化显著提升了 SQLite 数据库在高并发场景下的性能和稳定性。
2025-11-19 23:09:43 +08:00
Windpicker-owo
c31fd02daf
refactor(chat): 迁移数据库操作为异步模式并修复相关调用
...
将同步数据库操作全面迁移为异步模式,主要涉及:
- 将 `with get_db_session()` 改为 `async with get_db_session()`
- 修复相关异步调用链,确保 await 正确传递
- 优化消息管理器、上下文管理器等核心组件的异步处理
- 移除同步的 person_id 获取方法,避免协程对象传递问题
修复 deepcopy 在 StreamContext 中的序列化问题,跳过不可序列化的 asyncio.Task 对象
删除无用的测试文件和废弃的插件清单文件
2025-11-19 23:09:34 +08:00
Windpicker-owo
9836d317b8
refactor(database): 将同步数据库操作迁移为异步操作
...
将整个项目的数据库操作从同步模式迁移为异步模式,主要涉及以下修改:
- 将 `with get_db_session()` 改为 `async with get_db_session()`
- 将同步的 SQLAlchemy 查询方法改为异步执行
- 更新相关的方法签名,添加 async/await 关键字
- 修复由于异步化导致的并发问题和性能问题
这些修改提高了数据库操作的并发性能,避免了阻塞主线程,提升了系统的整体响应能力。涉及修改的模块包括表情包管理、反提示注入统计、用户封禁管理、记忆系统、消息存储等多个核心组件。
BREAKING CHANGE: 所有涉及数据库操作的方法现在都需要使用异步调用,同步调用将不再工作
2025-11-19 23:09:31 +08:00
Windpicker-owo
1177b81285
refactor(chat): 重构消息管理器以使用集中式上下文管理和能量系统
...
- 将流上下文管理从MessageManager迁移到专门的ContextManager
- 使用统一的能量系统计算focus_energy和分发间隔
- 重构ChatStream的消息数据转换逻辑,支持更完整的数据字段
- 更新数据库模型,移除interest_degree字段,统一使用interest_value
- 集成新的兴趣度管理系统替代原有的评分系统
- 添加消息存储的interest_value修复功能
2025-11-19 23:09:25 +08:00
Windpicker-owo
5962b44294
refactor(chat): 优化消息管理与打断系统,添加打断计数与历史消息加载功能
2025-11-19 23:09:23 +08:00
Windpicker-owo
ca8a47f246
refactor(chat): 重构消息兴趣度计算与动作记录机制
...
重构聊天系统以使用集中式消息管理API,移除ChatMessageContext类,将兴趣度计算和动作记录功能整合到StreamContext中。
主要变更:
- 移除ChatMessageContext类,使用StreamContext统一管理消息上下文
- 在DatabaseMessages模型中添加interest_degree、actions、should_reply字段
- 实现消息管理器API用于更新消息信息和刷新focus_energy
- 重构ChatStream的focus_energy计算逻辑,基于StreamContext历史消息
- 在动作管理器中添加动作记录功能,确保动作执行后更新消息状态
BREAKING CHANGE: ChatMessageContext类已被移除,相关功能需使用StreamContext API替代
2025-11-19 23:09:19 +08:00