SXP-Simon and Copilot
bb04114cdb
[v4.10.2] - ✨ Telegram 头像处理修复,支持多地区渲染环境与自定义镜像
...
Co-authored-by: Copilot <copilot@github.com >
2026-04-25 12:35:18 +08:00
SXP-Simon
948bfb1b5b
refactor(render): 解决国内可能存在的资源访问问题,新增大陆资源和海外资源可选项,允许用户根据服务器位置选择不同的资源策略,并且允许自定义资源镜像站
...
- Updated language attributes in HTML templates to dynamically set based on `t2i_font_source`.
- Replaced hardcoded Google Fonts links with dynamic links using `t2i_google_fonts_mirror` and `t2i_gstatic_mirror`.
- Adjusted font-family declarations to conditionally include 'Noto Sans SC' and 'Noto Sans TC' based on the `t2i_font_source`.
- Ensured consistent formatting and style across various templates including image, quote, topic, and user title items.
- Added missing newlines at the end of several files for consistency.
2026-04-25 12:22:36 +08:00
SXP-Simon
fc843fac03
feat: 优化 T2I 渲染与自定义配置
...
1. 支持配置两轮 T2I 渲染策略,允许用户自定义图片格式(PNG/JPEG)、质量、分辨率及超时时间。
2. 实现 T2I 返回 HTML 错误页的自动识别与摘要提取(如 502 Bad Gateway),提升故障排查效率。
- 参考 #174 关于 T2I 动态超时与配置的建议
- 参考 #171 关于处理 T2I 返回 HTML 错误信息的建议
- 解决了 [Feature Request] 支持配置 PNG/JPEG 渲染优先级,避免大报告场景下因本地大图保护而回退为文件发送 #164
2026-04-23 08:43:51 +08:00
SXP-Simon
b119ea741e
feat(album): 支持 LLBot 群相册接口并优化 OneBot 适配器
2026-04-22 15:15:59 +08:00
SXP-Simon
ed85876b36
feat(mbti): 替换 mbti 简单实现 sbti acgti 功能
2026-04-13 21:43:25 +08:00
Shiitin
911b8b2fb2
feat(html): 增加了html_only_url选项,使在选择输出格式为html时可以单独发送BaseURL ( #166 @shiitin)
...
* 更改了AstrBot中面板的的设置项,增加了html_only_url选项
* 增加了html_only_url
* 增加了单独发送URL
在html_only_url设置被打开且配置了Base URL后,将会单独发送URL
* 加入测试日志,尝试解决存在问题
* 加入测试日志,尝试解决存在问题
* 删除了定时触发部分的测试日志
* 修改了手动触发部分的发送HTML的判断
* 修改了main.py的单行长度过长问题
* 修复了dispatcher.py的缩进问题
2026-04-12 22:03:45 +08:00
SXP-Simon
93b2b847ef
fix(output_format): 改为 options 形式处理,提升用户体验
2026-04-07 22:27:34 +08:00
SXP-Simon
ae38febca2
fix(pdf): 删除 PDF 模块和相关的功能
2026-04-07 22:17:09 +08:00
SXP-Simon
a8a22233d4
fix(ChatQualityAnalyzer): 手动 apply_persona_reinforcement
2026-04-04 20:44:36 +08:00
SXP-Simon
92a365475c
feat(persona): 人格设定功能增强,支持插件指定和会话继承的人格分析
2026-04-04 19:40:30 +08:00
SXP-Simon
5375659769
fix(conf): 增强服务稳定性
2026-04-04 19:40:30 +08:00
凉雨
a5c3aa2af1
ATRI风格模板 ( #154 )
...
* Add files via upload
* Create test
* Add files via upload
* Delete src/infrastructure/reporting/templates/ATRI/test
* Add files via upload
2026-04-03 13:51:10 +08:00
leko and SXP-Simon
47eeff3f61
fix(template-utils): str.format -> string.Template ( #149 )
...
* feat: upgrade prompt templates from str.format to string.Template for improved compatibility
* fix(get_astrbot_data_path): fallback 到 get_astrbot_data_path 方法
* feat: upgrade prompt templates from str.format to string.Template for improved compatibility
* fix: strict mode
* fix: 补齐文件名格式的自动迁移
* fix(ChatQualityAnalyzer): 删除无效的 prompt 提示语句
* ruff
---------
Co-authored-by: SXP-Simon <sxp20061207@163.com >
2026-04-02 16:40:34 +08:00
SXP-Simon
5e2da8c852
fix(get_astrbot_data_path): fallback 到 get_astrbot_data_path 方法
2026-04-02 15:25:07 +08:00
SXP-Simon
05836f64f2
fix: 定时任务超时问题优化
...
Fixes #141
定时分析任务间隔启动,放宽超时配置限制
2026-04-01 21:14:00 +08:00
leko and SXP-Simon
8ba5f69788
feat: 檔案名稱模板支援 ULID 和資料夾路徑 ( #146 @lekoOwO)
...
* feat: Enhance HTML report generation and dispatching with captions
* chore: apply ruff fixes
* fix(ReportGenerator): update HTML caption for report generation
* fix(ReportGenerator): encode filename in HTML report caption URL
* fix(ReportGenerator): refactor golden quotes handling for clarity and consistency
* feat(ReportGenerator): enhance filename formatting with ulid support and path sanitization
* fix(ReportGenerator): enhance path validation and filename uniqueness in report generation
* fix: pylance type error and ruff
* fix: 路径默认使用 ulid 变量
---------
Co-authored-by: SXP-Simon <sxp20061207@163.com >
2026-04-01 20:38:57 +08:00
3662ac3d75
feat(html): Add HTML output format support ( #143 @lekoOwO)
...
* feat: add HTML output format support
- Add HTML settings section to _conf_schema.json with base URL and output directory configuration
- Add HTML configuration methods to ConfigManager (get_html_output_dir, get_html_base_url, get_html_filename_format)
- Create html_template.html files for all themes (fallback to image_template.html)
- Implement generate_html_report method in ReportGenerator to save HTML and JSON files
- Update main.py to handle HTML output format and send both file and URL if base_url is configured
- Update set_output_format command to include HTML as a valid format option
Co-authored-by: lekoOwO <20151124+lekoOwO@users.noreply.github.com >
* feat: enhance JSON serialization in HTML report generation
* fix: 优化输出目录获取逻辑
---------
Co-authored-by: anthropic-code-agent[bot] <242468646+Claude@users.noreply.github.com >
Co-authored-by: lekoOwO <20151124+lekoOwO@users.noreply.github.com >
Co-authored-by: SXP-Simon <sxp20061207@163.com >
2026-03-31 20:06:57 +08:00
SXP-Simon
4200631f17
fix(HatsuneMiku): 完善
2026-03-28 21:18:50 +08:00
SXP-Simon
7e741854a9
feat(response_format): 使用 OpenAI 格式的 response_format 参数约束 json 格式化数据生成,并且兼容旧版本逻辑,等待本体合并相关参数的传入
2026-03-26 22:56:02 +08:00
SXP-Simon
9ed4771730
feat: 完善自动分析名单调度与面板配置说明
...
- 重构自动分析调度流程:以分层名单解析目标群组,统一报告入口,并按群组模式分发传统/增量任务。
- 新增定时名单与增量名单配置能力:补充 scheduled_group_list(_mode)、incremental_group_list(_mode)、incremental_fallback_enabled。
- 优化失败兜底策略:增量最终报告在超时、异常或无有效结果时,可回退至传统全量分析。
- 完善配置与文档说明:在 _conf_schema.json 与 README 中补充面板操作指引、判定顺序与边界场景说明。
- 兼容旧配置行为:保留废弃接口,并在配置管理中统一名单匹配语义(UMO/群号兼容)。
2026-03-26 19:23:49 +08:00
lingyun14
664918e28f
feat: 新增文本/表情回复模式开关) ( #123 @lingyun14beta)
...
fixes #115
2026-03-24 00:03:29 +08:00
SXP-Simon
fcffe7d35a
fix(quality_summary): 优化增量分析逻辑,优化提示词
2026-03-23 13:38:12 +08:00
NyaaByte
4ffcb3065f
fix: 修改提示词同时添加后端校验,保证总占比不超过 100% ( #119 @J621111)
...
* fix: 修改提示词同时添加后端校验,保证总占比不超过 100%
* fix: 将 ai 返回的占比限制在 [0, 100]
2026-03-23 00:42:18 +08:00
SXP-Simon
9a35ed9600
feat(chat_quality_analysis): chat_quality_analysis 模块
2026-03-23 00:42:18 +08:00
SXP-Simon
cd6a6294e1
feat(增量分析): 更新增量分析配置,增加安全上限并优化消息拉取逻辑
2026-03-20 23:59:24 +08:00
SXP-Simon
4cae39d153
feat(分析功能): 添加人格设定的配置选项,并更新相关提示词构建逻辑
...
feat(persona): 自动检测当前群聊激活的对话所绑定的性格
2026-03-16 23:46:03 +08:00
SXP-Simon
4813c8e3df
feat(金句分析): 明确告知 LLM 在 reason(选择理由/锐评)中提到群成员时,应使用 [用户ID] 格式
2026-03-13 17:34:58 +08:00
SXP-Simon
1ae3e877f2
fix: 重构金句分析匹配机制 ( #104 )
...
- [修复] 尝试解决金句头像无法显示的问题。通过将 Prompt 输入改为 [user_id] 标识符,实现 100% 准确的身份回填,彻底消除了由于 LLM 微调内容导致的匹配失败。
- [警告] 强制初始化金句提示词,丢弃原本用户可能自定义的金句提示词模板。重命名配置项为 golden_quote_v2_prompt,避免用户更新后旧版本提示词干扰导致 LLM 金句分析功能失效。
2026-03-13 17:09:42 +08:00
SXP-Simon
1e3d3b922c
feat: 新增群相册上传严格模式
...
- 在 _conf_schema.json 中增加 group_album_strict_mode 开关
- 修改 ReportDispatcher,在严格模式下禁止回退到默认相册
- 优化 OneBotAdapter 的日志输出,使其符合决策逻辑
2026-03-12 15:16:43 +08:00
SXP-Simon
87d5cccdd4
[v4.8.0] - perf(concurrency): 实现群聊分析任务锁及全局资源并发限流控制,增强重试管理器
2026-03-03 21:24:43 +08:00
SXP-Simon
7850697f1a
refactor(perf): 建立三级资源防线并优化并发限流配置
...
- 【异常处理优化】引入自定义任务重复异常,精准区分“因重复运行而跳过”与“实际分析取消”两种不同语义,提升调度健壮性。
- 【三级并发控制架构】针对不同层级的资源消耗,建立了完整的限流保护体系:
- 入口层:控制同时处于活跃状态的任务总数,防止瞬时加载大量消息导致服务器内存溢出 (OOM);
- 接口层:全局限制 LLM API 并发请求数,确保严格遵守服务商的频率限制 (RPM);
- 渲染层:全局限制浏览器图片生成进程,保护物理 CPU 与内存不被高能耗渲染任务耗尽。
- 【配置体验升级】新增「并发限流设置」配置组,统一收纳核心性能参数,并提供面向普通用户的防坑说明与更稳健的默认值。
- 【代码清理】移除陈旧的兼容逻辑与冗余参数,统一配置命名规范。
- 【功能精化】重排增量分析逻辑,确保在任务入口与分段处理流程中均有可靠的信号量保护。
- 【细节完善】优化群文件及群相册上传设置的文案描述,明确功能支持范围与权限要求。
2026-03-03 21:07:51 +08:00
SXP-Simon
ee0bf037b8
feat: 实现群聊分析任务锁及全局资源并发限流控制
...
1. 任务锁定机制 (Group Task Locking):
- 在应用服务层实现基于群组和任务类型的异步锁,使用 asynccontextmanager 生成器函数确保同一群聊在同一时间只能执行一个分析任务。
- 使用弱引用字典 (WeakValueDictionary) 管理锁实例,防止长期的内存占用。
- 在指令入口增加对 CancelledError 的捕获,当任务冲突时向用户反馈“任务正在执行中”的友好提示。
2. 全局并发限流重构 (Resource-level Throttling):
- 资源层限流下沉:将并发控制中心从调度层迁移至具体的资源处理层(T2I/LLM)。
- T2I 渲染保护:在报告生成器中引入全局信号量,严格控制 T2I 引擎的瞬时负载。
- LLM API 保护:在应用服务层引入全局信号量,平滑所有分析请求对 LLM 提供商接口的请求频率。
- 调度逻辑简化:移除调度器内部冗余的信号量,使其仅专注于分发逻辑与 Stagger(交错启动)平滑。
3. 调度与反馈优化:
- 自动分析调度器增加对“跳过”任务的独立统计,并在执行报告中清晰展示“成功、跳过、失败”的具体数量。
- 优化了管理测试指令和增量分析指令的异常处理逻辑。
4. 消息重复发送防护:
- 在重试组件中增加基于消息历史记录的探活逻辑。在重试发送前先核实记录,确认是否已因网络抖动导致“假失败”但已实达,有效拦截重复消息。
2026-03-03 21:07:51 +08:00
RichardLiu
ba30818212
feat(onebot): 新增可选 Base64 图片传输开关 ( #89 )
...
* feat(onebot): add optional base64 image transport toggle
* fix(onebot): logger 信息增强
* fix(base64): 默认开启
2026-02-22 15:08:37 +08:00
SXP-Simon
626a890a58
[v4.7.9] feat(Onebot): 重构 OneBot 消息拉取逻辑,采用分页回溯策略;新增分析报告同步上传至群文件和群相册的功能
2026-02-21 19:40:54 +08:00
SXP-Simon
de3c189d4f
feat: 增强图片上传能力并完成核心架构类型重构
...
- 重构: 优化主类命名逻辑,提升多平台架构的可读性与通用性。
- 功能: 新增分析报告同步上传至群文件和群相册的功能,支持自动化文件管理与清理。
- 类型: 全面修正静态类型错误,确保各分析器模块与基类接口签名严格对齐。
- 优化: 改进内部类成员标注,解决可选参数与类型推断在透传过程中的不匹配问题。
- 稳健性: 完善网络请求超时处理、临时资源管理以及可选依赖项的动态加载逻辑。
- 配置: 扩展配置管理项,支持自定义上传开关、目标目录以及 PDF 渲染参数。
2026-02-21 19:30:51 +08:00
SXP-Simon
36a4819282
chore: 更新 demo 图资源
2026-02-12 21:00:08 +08:00
SXP-Simon
8c58a7b3d3
feat(template): retro_futurism 调整和 hack 模板
2026-02-12 19:55:24 +08:00
SXP-Simon
c2df2f906c
feat(template): 将模板选择改为 options,方便配置
2026-02-12 15:52:30 +08:00
SXP-Simon
2cd97a73b7
fix(debug): 增加每次增量分析完成后发送的配置,用于调试
2026-02-10 23:16:07 +08:00
SXP-Simon
5a81ffea20
refactor(话题分析): 采用 ID-Only Prompt 策略优化头像展示
...
- TopicAnalyzer: 仅向 LLM 发送 [ID] 而非昵称,减少 Token 并消除歧义
- _conf_schema.json: 更新默认 Prompt,强制要求 LLM 输出 ID 引用
- Logic: 后端负责将 ID 映射回昵称,实现精确的头像关联
2026-02-10 21:25:25 +08:00
SXP-Simon
472c78e622
feat(话题分析): 用户头像引用展示
...
- TopicAnalyzer: Prompt中包含 [user_id],引导LLM使用ID引用用户
- ReportGenerator: 解析话题详情中的 [uid] 并替换为内联头像HTML
- Templates: 更新所有主题的 topic_item.html 以支持富文本详情展示
- _conf_schema.json: 更新默认 Prompt,指导 LLM 使用 [用户ID] 引用用户
- ReportGenerator: 实现胶囊样式渲染 (头像+昵称),提升视觉体验
2026-02-10 20:57:51 +08:00
SXP-Simon
c793858f59
fix(typo)
2026-02-10 20:16:04 +08:00
SXP-Simon
1e7ecd57c3
fix(conf): 修复增量分析描述
2026-02-10 19:54:36 +08:00
SXP-Simon
9aa502f01a
refactor(配置): 重构 _conf_schema.json 为 7 组嵌套结构,更新 ConfigManager 适配嵌套配置路径
2026-02-10 16:09:18 +08:00
SXP-Simon
603fa4be07
feat(增量分析): 添加增量分析配置项
...
- ConfigManager 新增 11 个增量分析相关的 getter 方法
- _conf_schema.json 新增增量分析配置项定义,包含详细中文描述和提示
- 配置项包括:启用开关、分析间隔、每日上限、消息阈值、话题/金句数量、活跃时段、交错间隔
- 增量模式默认关闭,保持向后兼容
2026-02-10 14:49:25 +08:00
SXP-Simon
0b096351d5
fix(docs): 完善注释
2026-02-09 02:14:43 +08:00
SXP-Simon
aca6937efc
fix: 多平台,避免注释误解
2026-02-08 21:46:59 +08:00
SXP-Simon
7ea84093da
fix(typo)
2026-02-08 21:27:44 +08:00
SXP-Simon
185c5edcfb
feat(debug): 调试模式,启用后,会在 plugin_data/debug_data 目录下保存每次分析的平台 API 原始历史消息和 Prompt 原文,用于调试和优化提示词
2026-02-08 21:25:20 +08:00
SXP-Simon
c3cc2fd1f4
fix: complete the migration of the group_list configuration to use AstrBot Unified Message Origins (UMOs).
...
Changes Implemented:
Configuration: group_list now supports UMOs (e.g., qq_123456:GroupMessage:123456) while maintaining backward compatibility for simple group IDs.
Logic: ConfigManager and AutoScheduler were updated to handle UMOs for permission checking and group fetching.
Commands: The /分析设置 command now uses the full UMO when enabling/disabling analysis for a group.
2026-02-08 20:19:07 +08:00