Commit Graph

282 Commits

Author SHA1 Message Date
LuiKlee
0d57ce02dc Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev 2025-12-13 16:40:00 +08:00
LuiKlee
8f77465bc3 ruff 2025-12-13 16:39:25 +08:00
Windpicker-owo
21ed0079b8 fix(long_term_manager): 修改参数名称,从 'object' 改为 'obj' 以避免冲突 2025-12-13 16:34:18 +08:00
minecraft1024a
cf227d2fb0 add cors from webui 2025-12-13 13:24:16 +08:00
minecraft1024a
179b5b7222 feat(log): 添加日志广播系统以实时推送日志到多个订阅者 2025-12-12 21:56:25 +08:00
Windpicker-owo
e6a4f855a2 feat: 提升语义兴趣评分与拼写错误生成
- 为中文拼写生成器实现了背景预热功能,以提升首次使用时的性能。
- 更新了MessageStorageBatcher以支持可配置的提交批次大小和间隔,优化数据库写入性能。
- 增强版数据集生成器,对样本规模设置硬性限制并提升采样效率。
- 将AutoTrainer中的最大样本数增加至1000,以优化训练数据利用率。
- 对亲和兴趣计算器进行了重构,以避免并发初始化并优化模型加载逻辑。
- 引入批量处理机制用于语义兴趣评分,以应对高频聊天场景。
- 更新了配置模板以反映新的评分参数,并移除了已弃用的兴趣阈值。
2025-12-12 14:11:36 +08:00
Windpicker-owo
ef0c569348 fix(query_builder): 优化分页查询逻辑,确保字段可用后再释放数据库连接 2025-12-11 21:50:28 +08:00
Windpicker-owo
633585e6af Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev 2025-12-11 13:57:34 +08:00
Windpicker-owo
c75cc88fb5 feat(expression_selector): 添加温度采样功能以优化表达选择
feat(official_configs): 新增模型温度配置项以支持表达模型采样
chore(bot_config_template): 更新版本号并添加模型温度说明
2025-12-11 13:57:17 +08:00
雅诺狐
c870af768d fix(redis):更新Redis连接池初始化,以兼容redis-py 7.x版本
更新Redis连接池创建方式,使用connection_class参数替代已弃用的ssl参数,以适配redis-py 7.x及以上版本
2025-12-10 15:06:01 +08:00
Windpicker-owo
cc531d1b97 fix: 调整兴趣匹配计算超时设置和消息读取限制,优化性能 2025-12-10 11:58:29 +08:00
Windpicker-owo
410d85fb26 feat(embedding): 优化嵌入处理,支持 NumPy 数组格式并减少内存分配 2025-12-10 11:00:46 +08:00
Windpicker-owo
487e49c1c1 refactor(engine): 移除SQLite和PostgreSQL配置中的查询缓存禁用设置以优化性能 2025-12-09 22:03:52 +08:00
Windpicker-owo
adef2d516e feat(memory): 增加内存大小估算函数的深度限制和对象数量限制以优化性能 2025-12-09 21:59:03 +08:00
Windpicker-owo
ceee6f38d5 feat(statistic): 延迟统计任务启动时间和运行间隔以优化性能
fix(engine): 禁用 SQLAlchemy 查询编译缓存以防止 tuple 膨胀

fix(message_repository): 优化日志输出格式以提高可读性
2025-12-09 21:44:56 +08:00
Windpicker-owo
fa9b0b3d7e feat(database): 优化消息查询和计数逻辑,增加安全限制以防内存暴涨 2025-12-09 17:35:23 +08:00
Windpicker-owo
5a0294d5c0 Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev 2025-12-09 13:54:34 +08:00
Windpicker-owo
c008dd0ebd feat(mem_monitor): 添加内存监控阈值和详细数据采集逻辑 2025-12-09 13:54:25 +08:00
雅诺狐
a6aad8b8ea Revert "fix(redis): 添加Redis缓存模块导入异常处理"
This reverts commit f76cf36bae.
2025-12-09 13:52:42 +08:00
Windpicker-owo
f76cf36bae fix(redis): 添加Redis缓存模块导入异常处理 2025-12-08 20:54:23 +08:00
Windpicker-owo
094861e6b7 Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev 2025-12-08 18:11:33 +08:00
Windpicker-owo
b5e7f6313f fix(sqlite): 调整busy_timeout设置为10秒以减少锁定错误 2025-12-08 18:11:23 +08:00
Windpicker-owo
7c2843de64 feat(postgresql): 增强PostgreSQL会话级性能优化配置 2025-12-08 18:08:37 +08:00
雅诺狐
87bd071ced Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev 2025-12-08 17:44:00 +08:00
雅诺狐
da27c865d0 引入Redis 2025-12-08 17:42:57 +08:00
Windpicker-owo
e148cfd16b feat(memory): 使用异步初始化确保统一记忆管理器已准备就绪 2025-12-08 17:30:11 +08:00
Windpicker-owo
01bcfb491a Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev 2025-12-08 17:19:33 +08:00
Windpicker-owo
a1d60ab026 启用数据库预加载器,清理日志 2025-12-08 17:17:53 +08:00
雅诺狐
3edcc9d169 ruff 2025-12-08 15:48:40 +08:00
Windpicker-owo
084192843b feat(mem_monitor): 禁用内存监控功能 2025-12-08 12:08:56 +08:00
Windpicker-owo
071a160da9 feat(plugin): 禁用 hello_world_plugin 插件
refactor(prompt): 将日志级别从 info 调整为 debug
fix(mem_monitor): 启用内存监控并调整监控间隔至 2400s
feat(llm_models): 添加系统提示支持,优化请求策略
refactor(main): 更新内存监控启动日志信息
refactor(user_profile_tool): 将用户画像更新日志级别调整为 debug
refactor(exa_engine): 移除搜索引擎请求中的高亮片段选项
feat(system_prompt): 添加系统提示内容
2025-12-08 12:02:44 +08:00
Windpicker-owo
fbc37bbcaf refactor(logging): 简化日志记录,移除冗余调试信息
delete(connection_pool): 移除连接池管理器相关代码
2025-12-07 15:19:12 +08:00
Eric-Terminal
c059c7a2f1 feat: 启动时记录可选依赖 objgraph/pympler 的可用性 2025-12-06 02:23:42 +08:00
Eric-Terminal
5b98038425 fix: 将 pympler 和 objgraph 改为可选依赖,修复 Docker 镜像启动失败问题 2025-12-06 02:16:00 +08:00
minecraft1024a
b8bbd7228f feat(plugin): 调整插件路由前缀以避免组件冲突
将插件组件的路由前缀从 `/plugins/{plugin_name}` 修改为 `/plugins/{plugin_name}/{component_name}`。

此项更改旨在解决单个插件注册多个路由组件时可能出现的路径冲突问题,确保每个组件都拥有唯一的 API 端点。

此外,为了支持新的前端开发环境,已将端口 11451 和 3001 添加到 CORS 允许源列表中。

BREAKING CHANGE: 插件 API 的 URL 结构已发生变更。所有对插件接口的调用都需要更新为新的 `/plugins/{plugin_name}/{component_name}` 格式。
2025-12-05 19:15:14 +08:00
Windpicker-owo
06a45b3639 refactor: 移除对 MySQL 的支持,更新文档和配置以仅支持 SQLite 和 PostgreSQL 2025-12-04 23:30:43 +08:00
tt-P607
22767ce234 feat(context): 为大语言模型提供过去网页搜索的上下文记忆
此更改使聊天机器人能够记住并引用过去网页搜索的相关信息,从而显著提高响应质量和连贯性。

系统不再将每个查询视为孤立事件,而是在生成新响应之前,对之前的 `web_search` 结果缓存进行向量相似度搜索。如果发现过去的相关信息,会自动作为“相关历史搜索结果”注入到大语言模型的提示中。

这使模型能够立即访问相关背景信息,避免对已经讨论过的主题重复搜索。

为了支持这一新功能:
- 对 `web_search` 工具的提示进行了改写,以通过确保结果被高效缓存和调用,鼓励大语言模型更频繁地使用它。
- 重要工具结果(如网页搜索)的预览长度已增加
2025-12-04 04:12:36 +08:00
tt-P607
cba6d34197 Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox-Core into dev 2025-12-03 17:02:39 +08:00
tt-P607
2671a6e7e5 feat(profile):对用户关系和分析系统进行重构,采用结构化数据和异步更新
此提交完全重写了用户关系和分析系统,创建了一个更强大、详细和响应式的框架。旧系统已被弃用,取而代之的是一个集中式的`UserRelationships`模型。

主要变更:

1.  ‌**增强数据库模型(`UserRelationships`):**‌
    - 添加`impression_text`用于长期、叙述式印象。
    - 引入`key_facts`(JSON)存储结构化数据如生日、工作和位置。
    - 添加`relationship_stage`跟踪关系进展(如陌生人、朋友、挚友)。
    - 添加`first_met_time`和`last_impression_update`的时间戳。

2.  ‌**重设计`UserProfileTool`:**‌
    - 工具的用途被限定为仅捕捉重要新信息,防止用于小聊。
    - 更新现在在后台异步处理,确保机器人回复不被延迟。
    - 引入`key_info_type`和`key_info_value`参数供LLM提交结构化事实。

3.  ‌**复杂的印象和情感逻辑:**‌
    - 关系追踪LLM现在分析最近聊天历史生成更丰富、更上下文的印象。
    - 用渐进的`affection_change`(最大±0.03)取代直接情感分数设置,使关系发展更真实。

4.  ‌**数据源整合:**‌
    - `RelationshipFetcher`重构为仅依赖`UserRelationships`表作为唯一数据源。
    - 简化`get_user_relationship` API并移除其缓存,确保分析的实时数据访问。

破坏性变更:`UserProfileTool`已重设计,新增参数(`key_info_type`、`key_info_value`)并改变用途。移除`affection_score`参数。此外,`get_user_relationship`数据库API签名简化为仅接受`user_id`。
2025-12-03 16:53:40 +08:00
Windpicker-owo
16afd8f6ff feat(filter): 添加无意义消息过滤功能以优化表达学习效果 2025-12-03 13:13:41 +08:00
Windpicker-owo
bcdd987e4c feat(statistic): 优化内存使用,添加分批查询和统计处理上限
feat(typo_generator): 实现单例模式以复用拼音字典和字频数据
feat(query): 添加分批迭代获取结果的功能,优化内存使用
2025-12-02 12:45:10 +08:00
Windpicker-owo
8f4b846630 feat(mem-monitor): 添加内存监控模块,支持内存使用追踪和日志记录 2025-12-02 12:20:21 +08:00
Windpicker-owo
2ed11ad1a8 refactor(database-messages): 移除数据库自增主键字段 id 2025-12-01 20:21:14 +08:00
Windpicker-owo
943c2a6566 feat(data-models): 使用 __slots__ 优化内存占用和属性访问性能,更新多个数据模型 2025-12-01 19:57:33 +08:00
拾风
28c54dbec6 Merge branch 'dev' into feature/kfc 2025-12-01 16:06:47 +08:00
tt-P607
5d14bab259 feat: 为Kokoro Flow Chatter实现统一模式,支持模块化提示生成
新增统一模式:通过单次LLM调用同时处理推理与响应生成
采用模块化提示组件:系统提示与用户提示分离,提升灵活性和可维护性
日志更新:更清晰地记录生成响应与执行动作
版本更新:在机器人配置模板中递增版本号以反映变更
上下文处理优化:改进用户交互与记忆管理
2025-12-01 01:32:56 +08:00
Windpicker-owo
fc85338d0b feat: 更新消息管理和数据库操作日志,增强调试信息 2025-11-30 15:13:01 +08:00
ikun-11451
acafc074b1 依旧修pyright喵喵喵~ 2025-11-29 22:20:55 +08:00
ikun-11451
72e7492953 依旧修pyright喵~ 2025-11-29 21:26:42 +08:00
Eric-Terminal
aaedd77797 fix: 修复 aiosqlite 日志导致 CPU 占用过高的问题
- 将 aiosqlite 和 message_bus 添加到 suppress_libraries 列表
- 屏蔽数据库操作的 DEBUG 日志,防止日志刷屏导致 CPU 100%
2025-11-29 11:44:47 +08:00