tt-P607
|
57794480b8
|
feat(chatter): 引入决策历史以增强上下文连续性
为提升语言模型在连续对话中的表现,本次更新引入了决策历史功能。该功能旨在为模型提供一个短期记忆,记录其最近的思考过程与采取的行动。
主要变更包括:
- 新增 `DecisionRecord` 数据模型,用于存储“思考-动作”对。
- 在 `StreamContext` 中添加 `decision_history` 字段,以维护每个聊天流的决策历史。
- 在 `plan_filter` 中实现决策记录的逻辑,并在构建提示词时将其注入,供模型参考。
- 添加 `enable_decision_history` 和 `decision_history_length` 配置项,允许用户启用此功能并调整历史记录的长度。
通过回顾近期的决策,模型可以更好地避免重复行为,并生成更具连贯性和创造性的响应。
|
2025-10-29 18:58:28 +08:00 |
|
tt-P607
|
76f33134df
|
fix(chat): 清理模型意外生成的回复头
部分语言模型在生成回复时,会自行在内容开头添加如 `[回复<用户>的消息:]` 格式的回复头,这会导致最终消息中出现重复或格式错误的头部。
此提交通过正则表达式循环移除这些多余的回复头,确保输出内容整洁。
|
2025-10-29 17:33:02 +08:00 |
|
tt-P607
|
21b5e378ea
|
feat(chat): 增强回复功能,支持通过字符串指定并显示用户ID
为了让插件能更灵活地构造回复消息,而无需依赖完整的原始消息对象,本次提交引入了新的回复机制。
- `send_api` 新增 `reply_to` 参数,允许使用 `昵称(ID)` 格式的字符串直接指定回复目标。
- 统一更新了回复消息的显示格式,在回复引文中一并展示用户昵称和ID,避免因昵称重复造成混淆。
|
2025-10-29 16:58:50 +08:00 |
|
tt-P607
|
6649c4ce00
|
fix(chat): 修复上下文构建逻辑,确保总是合并数据库与会话历史
之前,仅在会话历史 (`read_messages`) 为空时,才会从数据库加载历史消息作为备用上下文。这可能导致在服务重启后或长时间对话中,上下文信息不完整,影响对话质量。
本次修改将流程调整为:始终先从数据库加载最近的历史消息,然后将其与当前会话中的消息进行合并与去重(以后者为准)。
这样可以确保无论在何种情况下,传递给模型的上下文都是最完整和准确的,从而显著提高对话的连贯性。
|
2025-10-29 15:20:38 +08:00 |
|
tt-P607
|
f2d7af6d87
|
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox_Bot into dev
|
2025-10-29 10:51:44 +08:00 |
|
tt-P607
|
54d1071432
|
feat(affinity_flow): 添加 Normal 模式开关以控制自动切换
新增了 `affinity_flow.enable_normal_mode` 配置项,允许用户自由启用或禁用 Normal 聊天模式。
当禁用 Normal 模式时:
- 规划器将强制把处于 Normal 模式的会话切换回 Focus 模式。
- 在 Focus 模式下完成回复后,将不再自动切换到 Normal 模式。
这为希望始终保持完整规划流程的用户提供了更大的灵活性。
|
2025-10-29 10:46:31 +08:00 |
|
Windpicker-owo
|
919bcd4e2e
|
feat(chat): 优化消息处理提示词与兴趣度显示逻辑
- 在默认回复器中移除未读消息的兴趣度显示,简化回复逻辑
- 在亲和流聊天器的计划过滤器中保留兴趣度显示,供planner决策使用
- 更新planner提示词,明确兴趣度优先原则但禁止在思考流中使用技术术语
- 统一历史消息区块的标题描述,提高可读性
|
2025-10-29 10:05:15 +08:00 |
|
Windpicker-owo
|
8179c25941
|
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox_Bot into dev
|
2025-10-29 07:40:32 +08:00 |
|
Windpicker-owo
|
e26940dd4e
|
feat(chat): 添加消息重复处理防护机制
在StreamContext中添加processing_message_id字段,用于跟踪当前正在处理的目标消息ID。在AffinityFlowChatter规划器中实现重复消息检测逻辑,防止对同一消息进行重复回复处理。
- 在增强版规划流程和Normal模式流程中添加目标消息ID检查
- 当检测到正在处理相同消息时返回no_action避免重复
- 在处理完成后清理processing_message_id标记
- 添加详细的日志记录用于调试和监控
|
2025-10-29 07:40:26 +08:00 |
|
tt-P607
|
44fe53268d
|
fix(affinity_chatter): 修复max_no_reply_count为0时的除零错误
|
2025-10-28 20:25:39 +08:00 |
|
Windpicker-owo
|
4e024656ff
|
feat(chat): 优化流处理逻辑与Normal模式性能
- 在StreamLoopManager中添加流能量更新机制,在处理消息前更新能量值用于间隔计算
- 为消息打断系统添加allow_reply_interruption配置选项,控制是否允许在回复时打断
- 重构AffinityFlowChatter规划器,为Normal模式添加简化流程,显著降低延迟
- 实现Normal模式与Focus模式间的智能切换机制,基于focus_energy概率退出Normal模式
- 移除冗余的兴趣度批量更新逻辑,优化数据库写入性能
- 更新配置模板版本至7.5.0
BREAKING CHANGE: 配置文件中新增allow_reply_interruption选项,需要更新配置
|
2025-10-28 19:13:18 +08:00 |
|
Windpicker-owo
|
033e1fecb4
|
feat(scheduler): 添加统一调度器集成支持
- 在系统启动和关闭流程中集成统一调度器
- 为事件管理器添加调度器回调注册机制
- 调整兴趣评分系统阈值配置
- 增强系统模块化架构,支持调度器事件通知
|
2025-10-28 12:41:29 +08:00 |
|
Windpicker-owo
|
79a0088065
|
feat(chat): 添加Chatter处理状态跟踪机制
在StreamLoopManager中添加is_chatter_processing标志来精确跟踪Chatter处理状态,优化消息打断检查逻辑。
- 在distribution_manager中设置和清除Chatter处理标志
- 在message_manager中基于处理状态进行打断检查
- 在数据模型中添加is_chatter_processing字段
|
2025-10-27 22:37:55 +08:00 |
|
Windpicker-owo
|
09de649d48
|
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox_Bot into dev
|
2025-10-27 17:17:11 +08:00 |
|
Windpicker-owo
|
a2c0afa75d
|
refactor(chat): 简化任务管理架构,移除多重回复支持
- 移除 ChatterManager 中的复杂任务追踪逻辑(_processing_tasks)
- 将流循环任务管理从 StreamLoopManager 转移到 StreamContext
- 简化消息打断机制,通过取消 stream_loop_task 实现
- 移除多重回复相关功能,统一使用单一任务管理
- 优化错误处理和资源清理逻辑
BREAKING CHANGE: 移除了多重回复功能,所有流处理现在使用单一任务架构
|
2025-10-27 17:16:36 +08:00 |
|
tt-P607
|
e36474e2a2
|
fix(llm_models): 修复字节流图片处理并调整默认压缩大小
Pillow 的 `Image.open()` 函数现在通过 `io.BytesIO` 正确处理字节流数据,解决了直接传递字节时可能引发的错误。
同时,默认的图片压缩目标大小已从 1MB 提高到 2MB,以便在视觉模型中保留更多图片细节,提升体验。
|
2025-10-27 12:20:31 +08:00 |
|
tt-P607
|
8aa64010b7
|
fix(chat): 修复消息打断后的重复处理并优化回复逻辑
本次提交包含两项关键更改:
1. 将 `triggering_user_id` 的设置逻辑从 `ChatterManager` 迁移至 `StreamLoopManager` 的处理循环初期。这确保了触发用户ID能够更早、更可靠地被设置,为回复保护机制提供了正确的上下文,避免了潜在的逻辑错误。
2. 在消息成功打断正在执行的任务后,立即调用 `clear_all_unread_messages`。此举修复了当新消息打断旧任务时,旧消息队列未被清空,导致机器人可能在之后重新处理这些过时消息的缺陷,从而防止了重复响应。
|
2025-10-27 12:13:52 +08:00 |
|
tt-P607
|
d9c83c2cab
|
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox_Bot into dev
|
2025-10-27 00:39:35 +08:00 |
|
tt-P607
|
73983c7198
|
fix(file): 修复机器人对自身文件上传的响应并移除硬编码路径转换
- 在群文件上传通知中,增加对`self_id`的判断,使机器人忽略自身上传文件的事件,防止不必要的响应。
- 移除 `send_api` 与 `send_handler` 中硬编码的WSL路径转换逻辑,以实现更通用的路径处理。
- 增强文件发送逻辑,使其能处理路径数据为字典的情况并检查空路径。
|
2025-10-27 00:38:53 +08:00 |
|
tt-P607
|
c98fa30358
|
feat(file): 新增文件消息的接收与发送功能
本次更新为框架引入了完整的文件消息处理能力,涵盖了发送和接收两个方面,使机器人能够处理文件传输。
主要变更包括:
- **发送功能**:
- 在 `plugin_system.apis.send_api` 中新增了 `file_to_stream` 公共 API,允许插件向指定聊天流(私聊或群聊)发送本地文件。
- 为文件上传设置了更长的超时时间,并增加了临时的 WSL 路径转换逻辑。
- **接收功能**:
- `chat.message_receive` 模块现在能够正确处理 `file` 类型的消息段,并生成可读的文本描述。
- NapCat 适配器增加了对文件消息 (`file`) 和群文件上传通知 (`group_upload`) 的解析能力。
- 通过智能识别和解析,能够将机器人自己发送文件后收到的 JSON 卡片回声消息,正确地转换回标准的文件消息段。
- **重构**:
- 将接收消息的 `content_format` 属性改为根据消息段动态生成,提高了对复合消息类型的适应性。
- 将未知消息段的日志级别从 `info` 调整为 `warning`,以便更好地监控未处理的消息类型。
|
2025-10-26 22:57:11 +08:00 |
|
明天好像没什么
|
99d55c0b49
|
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox_Bot into dev
|
2025-10-26 13:10:38 +08:00 |
|
明天好像没什么
|
7b80d7c0b3
|
feat(plugin): 集成 MCP 协议支持并优化代码风格
- 新增 fastmcp 依赖,支持通过 Streamable HTTP 连接外部工具服务器
- 在 component_registry 与 tool_api 中实现 MCP 工具加载、注册及调用链路
- 补充 README 中的 MCP 特性说明
- 统一修复多处 import 顺序、空行、引号及类型注解,提升代码整洁度
- 在 pyproject.toml 中忽略 PERF203 规则,允许循环内异常处理
- 优化语音缓存与本地 ASR 调用逻辑,减少冗余代码
|
2025-10-26 13:10:31 +08:00 |
|
minecraft1024a
|
ccbac891b6
|
refactor(reaction): 重构关键词反应系统为通用反应规则系统
将原有的 `keyword_reaction` 系统重构为一个更通用、更强大的 `reaction` 系统。新系统统一了关键词和正则表达式规则,并增加了按聊天流ID(`chat_stream_id`)进行规则作用域限定的功能。
主要变更包括:
- **统一配置模型**:将 `KeywordReactionConfig` 和 `KeywordRuleConfig` 合并重构为 `ReactionConfig` 和 `ReactionRuleConfig`,提供了更清晰、统一的规则定义方式。
- **增加作用域控制**:新的 `ReactionRuleConfig` 增加了 `chat_stream_id` 字段,允许规则被限定在全局范围或特定的聊天会话中。
- **简化逻辑实现**:`DefaultReplyer` 中的实现被重构,以适应新的配置模型,能够筛选并应用适用范围内的规则。
- **更新配置文件模板**:`bot_config_template.toml` 已更新,以反映新的 `[[reaction.rules]]` 配置结构,并提供了详细的注释说明。
- **新增辅助方法**:在 `ChatStream` 中添加了 `get_raw_id()` 方法,用于获取未哈希的原始聊天流ID,以支持新系统的作用域匹配。
BREAKING CHANGE: 关键词反应功能的配置结构已完全改变。旧的 `[keyword_reaction]` 配置不再兼容。用户需要将原有的 `keyword_rules` 和 `regex_rules` 迁移到新的 `[[reaction.rules]]` 格式。
|
2025-10-26 12:16:37 +08:00 |
|
minecraft1024a
|
0ed35ff33b
|
refactor(chat): 简化回复分割逻辑
移除了对 `split_mode == "llm"` 的显式检查。现在,只要响应文本中存在 `[SPLIT]` 标记,就会使用该标记进行分割。如果不存在,则统一回退到基于标点的传统分割模式。这简化了代码
|
2025-10-26 11:52:55 +08:00 |
|
Windpicker-owo
|
0d3e46fc97
|
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-10-26 10:46:04 +08:00 |
|
tt-P607
|
5e6857c8f7
|
feat(chatter): 引入性别判断并细化表情包处理规则
- 关系追踪器(Relationship Tracker)的提示词现在要求在生成用户印象时,根据已知信息自然地融入用户性别判断,使描述更加个性化和生动。
- 规划器(Planner)的提示词被调整,将原先处理“纯表情/符号”的规则,细化为专门处理“无上下文的纯表情包”,避免AI忽略对话中有意义的简单表情符号,从而提升交互的自然度。
|
2025-10-26 04:15:33 +08:00 |
|
tt-P607
|
c61cc19eb6
|
feat(voice): 实现自身语音缓存以跳过ASR识别
当机器人通过TTS插件发送语音时,会自动将语音数据和对应的原始文本进行缓存。
当机器人接收到自己发送的语音消息时,会优先从缓存中直接读取文本,从而跳过调用ASR(自动语音识别)服务的步骤。
此项优化可以:
- 节省不必要的ASR资源开销和费用。
- 保证对机器人自身语音100%的识别准确性。
- 提升对自身消息的响应处理速度。
|
2025-10-26 01:14:23 +08:00 |
|
tt-P607
|
3ea56c55f1
|
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox_Bot into dev
|
2025-10-26 00:19:45 +08:00 |
|
tt-P607
|
ee7ec5a100
|
feat(voice): 新增本地语音识别(ASR)提供商选项
新增 `voice.asr_provider` 配置项,允许用户在 "api" 和 "local" 之间选择语音识别服务。
当设置为 "local" 时,系统将通过 `local_asr` 工具(由 `stt_whisper_plugin` 插件提供)调用本地 Whisper 模型进行语音转文字。这为用户提供了一个不依赖外部 API、注重隐私的备选方案。
- 默认值仍为 "api",保持现有行为不变。
- 添加 `openai-whisper` 作为新的依赖项以支持此功能。
|
2025-10-26 00:19:35 +08:00 |
|
minecraft1024a
|
fe9d99e7fa
|
refactor(plugin_system): 将依赖检查逻辑从插件基类移至插件管理器
将插件的Python包依赖和插件间依赖的检查逻辑,从各个插件实例的初始化阶段 (`PluginBase`),统一前置到插件模块加载阶段 (`PluginManager`)。
这一重构有以下好处:
- **提前失败 (Fail-fast)**:在加载插件模块时立即检查依赖,如果依赖不满足,则直接跳过该插件的加载和实例化,避免了不必要的资源消耗和后续的运行时错误。
- **职责单一**: `PluginManager` 负责插件的发现、加载和依赖管理,而 `PluginBase` 更专注于插件自身的业务逻辑和生命周期,使得代码结构更清晰。
- **配置中心化**: 依赖关系现在统一在 `__plugin_meta__` 中声明,而不是分散在插件类的属性中,提高了可维护性。
- **简化插件实现**: 插件开发者不再需要在插件类中定义 `dependencies` 和 `python_dependencies` 属性,只需在 `__init__.py` 中声明元数据即可。
|
2025-10-25 21:56:27 +08:00 |
|
minecraft1024a
|
ad9f06b85a
|
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox_Bot into dev
|
2025-10-25 21:24:58 +08:00 |
|
minecraft1024a
|
ee7a37ce70
|
feat(plugin_system): 引入高级Prompt注入规则系统以取代旧注入点机制
引入了一套全新的、基于规则的Prompt注入系统,以取代原有的 `injection_point` 机制。这套新系统提供了更强大、更灵活的Prompt内容注入能力。
主要变更包括:
- **引入 `InjectionRule` 和 `InjectionType`**:定义了注入规则的数据结构和注入类型(如 `PREPEND`, `APPEND`, `REPLACE`, `REMOVE`, `INSERT_AFTER`),允许插件开发者精确控制注入行为。
- **重构 `PromptComponentManager`**:核心逻辑从简单地拼接字符串 (`execute_components_for`) 重构为按优先级应用注入规则 (`apply_injections`),支持正则表达式匹配和更复杂的注入操作。
- **向后兼容**:`PromptInfo` 中增加了兼容逻辑,能自动将旧的 `injection_point` 定义转换为新的 `injection_rules`,确保现有插件无需立即修改即可正常工作。
- **更新 `BasePrompt`**:废弃了 `injection_point` 属性,并推荐使用新的 `injection_rules` 属性。
- **更新示例插件**:`hello_world_plugin` 已更新,展示了新注入规则的使用方法。
BREAKING CHANGE: `BasePrompt` 中的 `injection_point` 属性已被废弃。虽然目前存在向后兼容逻辑,但未来版本将移除该属性。所有Prompt组件都应迁移至使用 `injection_rules` 以获得更强的控制力和未来的兼容性。
|
2025-10-25 21:24:51 +08:00 |
|
tt-P607
|
162cb8dba6
|
fix(memory): 修复记忆系统初始化逻辑,确保单例唯一性
先前,记忆系统的初始化流程存在问题,可能导致在不同位置获取到未初始化或多个不同的 MemorySystem 实例,引发潜在的运行时错误。
本次修改统一了应用的启动逻辑,在 main.py 中明确调用 `initialize_memory_system` 来初始化全局唯一的记忆系统实例。
此外,在记忆系统的关键生命周期节点(创建、初始化、获取)添加了详细的日志记录,以便于追踪实例ID,从而在未来能更好地诊断类似问题。
|
2025-10-25 21:23:44 +08:00 |
|
tt-P607
|
c4b7f2437d
|
fix: 增强系统健壮性,优化核心组件的错误处理
在多个核心模块中增加了前置检查和更详细的错误处理逻辑,以防止因组件初始化失败或外部数据格式不符预期而导致的运行时崩溃。
主要变更:
- **记忆系统:** 在执行记忆构建、融合和价值评估前,增加对相关引擎是否初始化的检查。优化了向量数据库初始化失败时的处理流程,并增强了向量搜索结果的解析安全性。
- **插件系统:** 统一并优化了LLM可用工具定义的获取方式,增加了错误捕获。调整了工具执行器以安全地解析LLM返回的工具调用请求。
- **向量数据库:** 当ChromaDB连接失败时,显式抛出 `ConnectionError`,使上层调用者能更好地捕获和处理该特定问题。
|
2025-10-25 21:09:26 +08:00 |
|
minecraft1024a
|
0737f84fd4
|
refactor(plugin): 优化插件加载与应用关闭逻辑
在插件加载流程中,增加了对兴趣计算器类型的检查,确保只有 `BaseInterestCalculator` 的有效子类才会被实例化,增强了系统的健壮性。
同时,简化了应用关闭逻辑,移除了对已废弃 `shutdown` 方法的调用,统一使用 `stop` 方法来停止应用。
|
2025-10-25 20:25:51 +08:00 |
|
minecraft1024a
|
bb9c31e63a
|
refactor(memory): 简化记忆系统架构,移除 MemoryManager
将 `get_message_collection_context` 方法从 `MemoryManager` 移动到 `MessageCollectionStorage`,并直接在 `MemorySystem` 中调用它。这一变更简化了依赖关系,并消除了 `MemoryManager` 类,使其职责更加清晰。
主要变更:
- 从 `MemoryManager` 中移除 `get_message_collection_context` 并将其功能迁移。
- 更新 `MemorySystem` 以直接使用 `MessageCollectionStorage` 来检索上下文。
- 移除 `MemoryManager` 的初始化和依赖,因为它不再需要。
- 将 `MemorySystem` 的初始化改为单例模式,以确保全局唯一实例。
|
2025-10-25 20:20:07 +08:00 |
|
minecraft1024a
|
5a99442064
|
refactor(memory): 引入 MemoryManager 统一管理瞬时记忆
引入 `MemoryManager` 类来封装和统一处理瞬时记忆(消息集合)的检索和管理逻辑。此举将瞬时记忆的相关操作从 `MemorySystem` 中解耦,提高了代码的模块化和可维护性。
主要变更:
- 创建 `MemoryManager` 类,负责消息集合的初始化、上下文检索等。
- `MemorySystem` 现在通过 `MemoryManager` 实例来获取瞬时记忆,简化了其内部实现。
- 移除了 `MemorySystem` 中原有的、分散的瞬时记忆检索代码,使其职责更单一。
|
2025-10-25 20:13:32 +08:00 |
|
minecraft1024a
|
917754b4e0
|
feat(memory): 引入基于向量的瞬时记忆系统
引入了一个新的瞬时记忆系统,该系统将短期对话片段(消息集合)存储在专门的向量数据库中,以提供更即时、更相关的上下文。
该系统通过以下组件实现:
- **MessageCollection**: 用于封装一组相关消息的数据结构。
- **MessageCollectionStorage**: 负责将消息集合向量化并存入专用的ChromaDB集合,同时管理集合的生命周期(基于数量和时间清理)。
- **MessageCollectionProcessor**: 缓冲每个聊天的消息,当达到阈值时,将它们组合成一个`MessageCollection`并交由Storage处理。
- **集成**: `MemoryManager`和`MemorySystem`已更新,将瞬时记忆无缝融合到现有的记忆检索流程中,优先展示来自当前聊天的上下文。
此外,还进行了以下调整:
- 移除`orjson.dumps`中的`ensure_ascii=False`参数,以遵循`orjson`的默认行为,该行为始终返回UTF-8字节串,从而简化了编码处理。
- 在配置文件中增加了瞬时记忆最大集合数和保留时间的选项。
|
2025-10-25 20:07:58 +08:00 |
|
minecraft1024a
|
3877772c7c
|
refactor(memory): 移除硬编码的向量数据库集合名称
将向量数据库的集合名称配置移出代码和配置文件,改为在ChromaDB客户端初始化时动态创建和管理。这提高了灵活性,并为未来支持多集合或动态集合名称奠定了基础。
- 从 `VectorStorageConfig` 中移除了 `memory_collection` 和 `metadata_collection` 字段。
- 从 `MemoryConfig` 中移除了 `vector_db_memory_collection` 和 `vector_db_metadata_collection` 配置项。
- 更新了 `bot_config_template.toml` 模板,删除了相关的集合名称和静态集合定义。
|
2025-10-25 18:36:35 +08:00 |
|
minecraft1024a
|
df4e638e76
|
~谁在写代码不加注释我就把它炒了😡😡😡😡😡~
feat(prompt): 补全了prompt类的函数注释和内联注释
|
2025-10-25 17:48:21 +08:00 |
|
minecraft1024a
|
a2eb7521d5
|
fix(chat): 修复当用户ID为空时主人认证失败的问题
在某些情况下(例如,某些平台或匿名使用场景),用户信息中可能不包含`user_id`。之前的代码没有处理这种情况,导致在调用`permission_api.is_master`时会因`user_id`为空而引发异常。
本次修改增加了对`user_id`的空值检查。如果`user_id`不存在,将直接返回空字符串,避免不必要的权限验证和潜在的错误,从而增强了代码的健壮性。
|
2025-10-25 17:15:20 +08:00 |
|
明天好像没什么
|
0381320859
|
revert(mcp): 移除MCP SSE客户端及工具集成支持
|
2025-10-25 16:16:23 +08:00 |
|
明天好像没什么
|
91021275c7
|
revert(mcp): 移除MCP SSE客户端支持
|
2025-10-25 16:11:22 +08:00 |
|
Eric-Terminal
|
e15573e9d6
|
feat(prompt): 添加主人认证提示词功能 (#47)
|
2025-10-25 15:55:12 +08:00 |
|
minecraft1024a
|
f87c9e25ef
|
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox_Bot into dev
|
2025-10-25 14:57:12 +08:00 |
|
minecraft1024a
|
b4210f614a
|
refactor(api): 重构 LLM 统计数据收集逻辑
将原有的方式重构为直接从数据库中查询和聚合 LLM 使用记录。这提高了数据的持久性和准确性,并消除了对后台统计任务的依赖。
主要变更:
- 移除旧的 `StatisticOutputTask` 和基于 Redis 的统计变量。
- 新增 `_collect_stats_in_period` 函数,用于在指定时间段内从 `LLMUsage` 表中动态收集和计算统计数据。
- 统计时,将数据库中存储的实际模型标识符(model_identifier)映射回配置文件中的模型名称,确保成本计算和数据显示的一致性。
- 扩展了 `period_type` 查询参数,增加了如 "last_hour", "last_24_hours", "last_7_days" 等多个预设时间范围,提升了 API 的易用性。
|
2025-10-25 14:57:09 +08:00 |
|
Windpicker-owo
|
c2314dcff2
|
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox_Bot into dev
|
2025-10-25 14:33:51 +08:00 |
|
Windpicker-owo
|
a8308ed38b
|
fix(chat): 在私聊场景禁用引用回复功能
修改 ChatterActionManager 中的回复逻辑,在私聊场景下不设置引用回复标志,因为私聊只有两个人对话,引用回复是多余的。群聊场景仍然保持引用回复功能以帮助定位回复的目标消息。
- 私聊场景:禁用引用回复(set_reply_flag = false)
- 群聊场景:启用引用回复(set_reply_flag = true)
- 更新了相关日志输出以包含私聊状态信息
|
2025-10-25 14:33:45 +08:00 |
|
minecraft1024a
|
d0610ed500
|
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox_Bot into dev
|
2025-10-25 14:29:09 +08:00 |
|
minecraft1024a
|
fa58b0e999
|
feat(api): 增加 LLM 统计路由
将 LLM 使用情况统计的 API 路由注册到主应用程序中,以便通过 `/api/statistic` 路径访问相关统计数据。
|
2025-10-25 14:27:08 +08:00 |
|