[v3.6.0] (#38, #36, #29) 由于 napcat 存在的问题 [NapNeko/NapCatQQ#441](https://github.com/NapNeko/NapCatQQ/issues/441) 选择取消分页拉取和多次轮询获取逻辑,解决获取消息数量异常的情况 (@exynos967)

This commit is contained in:
SXP-Simon
2025-11-09 23:22:03 +08:00
parent 548b3745d5
commit bc396a3b23
2 changed files with 100 additions and 85 deletions
+99 -84
View File
@@ -3,14 +3,14 @@
# QQ群日常分析插件
[![Plugin Version](https://img.shields.io/badge/Latest_Version-v3.5.0-blue.svg?style=for-the-badge&color=76bad9)](https://github.com/SXP-Simon/astrbot-qq-group-daily-analysis)
[![Plugin Version](https://img.shields.io/badge/Latest_Version-v3.6.0-blue.svg?style=for-the-badge&color=76bad9)](https://github.com/SXP-Simon/astrbot-qq-group-daily-analysis)
[![AstrBot](https://img.shields.io/badge/AstrBot-Plugin-ff69b4?style=for-the-badge)](https://github.com/AstrBotDevs/AstrBot)
[![License](https://img.shields.io/badge/License-MIT-green.svg?style=for-the-badge)](LICENSE)
_✨ 一个基于AstrBot的智能群聊分析插件,能够生成精美的群聊日常分析报告。[灵感来源](https://github.com/LSTM-Kirigaya/openmcp-tutorial/tree/main/qq-group-summary)。 ✨_
<img src="https://count.getloli.com/@astrbot-qq-group-daily-analysis?name=astrbot-qq-group-daily-analysis&theme=booru-jaypee&padding=6&offset=0&align=top&scale=1&pixelated=1&darkmode=auto" alt="count" />
</div>
</div>
## 功能特色
@@ -33,7 +33,10 @@ _✨ 一个基于AstrBot的智能群聊分析插件,能够生成精美的群
- **定时任务**: 支持设置每日自动分析时间
- **自定义LLM服务** :支持自定义指定的LLM服务
### 配置选项
## 配置选项
> [!NOTE]
> 以下配置情况仅供参考,请仔细阅读插件配置页面中各个字段的说明,以插件配置中的说明为准。
| 配置项 | 说明 | 备注 |
|--------|------|--------|
@@ -41,7 +44,11 @@ _✨ 一个基于AstrBot的智能群聊分析插件,能够生成精美的群
| PDF格式的报告 | 初次使用需要使用 `/安装PDF` 命令安装依赖,首次使用命令安装,最后出现提示告诉你需要重启生效,是对的,需要重启 astrbot,而不是热重载插件。 | 输出格式需要设置为 PDF |
| 自定义LLM服务 | 通过配置文件设置自定义LLM服务的API Key、Base URL和模型名称,注意配置中的文字说明, Base URL 需要填写完整,例如 `https://openrouter.ai/api/v1/chat/completions` | 留空则使用 Astrbot 指定的当前提供商 |
上述配置情况仅供参考,注意仔细阅读插件配置页面中各个字段的说明,以插件配置中的说明为准
> [!IMPORTANT]
> **PDF 功能配置**:使用 `/安装PDF` 命令后,需要完全重启 AstrBot 才能生效,热重载插件无效!
> [!TIP]
> **自定义 LLM 服务**Base URL 需要填写完整的 API 端点,例如 `https://openrouter.ai/api/v1/chat/completions`
## 效果
![效果图](./demo.jpg)
@@ -67,27 +74,96 @@ _✨ 一个基于AstrBot的智能群聊分析插件,能够生成精美的群
- `status`: 查看当前群的启用状态
- 例如:`/分析设置 enable`
## 安装要求
### 基础要求
- 已配置LLM提供商(用于智能分析)
- QQ平台适配器
> [!CAUTION]
> **必需条件**
> - 已配置 LLM 提供商(用于智能分析)
> - QQ 平台适配器
## 注意事项
1. **性能考虑**: 大量消息分析可能消耗较多LLM tokens
2. **数据准确性**: 分析结果基于可获取的群聊记录,可能不完全准确
> [!WARNING]
> 1. **性能考虑**: 大量消息分析可能消耗较多 LLM tokens
> 2. **数据准确性**: 分析结果基于可获取的群聊记录,可能不完全准确
## 更新日志
### v1.0.0
- 初始版本发布
- 支持基础群聊分析功能
- 智能话题和用户称号分析
- 精美可视化报告生成
<details>
<summary>📋 点击展开查看完整更新日志</summary>
### v3.6.0
- 由于 napcat 存在的问题 [NapNeko/NapCatQQ#441](https://github.com/NapNeko/NapCatQQ/issues/441) 选择取消分页拉取和多次轮询获取逻辑,解决获取消息数量异常的情况
@exynos967
### v3.5.0
- max_tokens 参数处理 以及 过滤机器人自己的消息
### v3.4.1
- 更新配置文件配置项名称,为了避免用户手动卸载插件配置文件的更新,避免受 3.3.0 以及 3.2.0 错误版本的提示词配置影响导致群分析不可用
### v3.4.0
- 自定义提示词模板,简单修复格式问题,尽量保证可用
### v3.3.0
- 修复 `群分析获取历史消息的机制并不严格,出现超过当天消息、超过最大数量限制的情况` 的问题
### v3.2.0
- 自定义提示词模板,推荐根据群聊情况进行自定义修改以满足自己的需求
### v3.1.0
- llm_analyser 串行执行三部分分析导致处理单次请求耗时太长,修改为异步网络请求
### v3.0.0
- 解决自动分析器获取群聊消息失败的问题
### v2.9.0
- PDF 安装过程不阻塞主线程
### v2.8.0
- (#24) 在配置中启用 "偏好使用群昵称" @Ri-Nai
### v2.7.0
- (llm_analyzer) LLM 输出 json 提取增强
### v2.6.0
- (自动分析处理) 纠正分析日期处理情况
### v2.5.0
- 处理了自动分析器的不唯一问题
- 自动分析器并发处理群聊
### v2.4.0
- 纠正无法正确获取当前使用的模型情况
### v2.3.0
- 修复定时触发自动分析无法获取到实例的 bug,现在启用该功能需要传入 bot 的 QQ 号
### v2.2.0
- image 格式的报告图片清晰度提高
- 字体稍微调大,但是实际效果也不怎么好,后续可能需要彻底改变排版方式再进行调整
### v2.1.0
- 支持配置自定义 Provider 或者留空,支持自定义模型的重试和超时处理,思考模型可以根据情况延长请求超时时间
### v1.9.0
- 生成 24h 时间段活跃情况分析
### v1.8.0
- 修复表情统计情况
### v1.7.0
- 修复提示
- 解耦化
### v1.4.0
- PDF 版本情况说明更新
### v1.3.0
- token 消耗情况说明
### v1.2.0
- 增加了对 LLM 话题分析部分的提示词提示规范,并且提供正则处理来提高服务可用性
### v1.1.0
- 修复了部分bug
@@ -95,74 +171,13 @@ _✨ 一个基于AstrBot的智能群聊分析插件,能够生成精美的群
- 增加了定时自动触发分析功能
- 发送 PDF 版的推送,提供命令安装相关配置,也可以不配置 PDF 版
### v1.2.0
- 增加了对 LLM 话题分析部分的提示词提示规范,并且提供正则处理来提高服务可用性
### v1.0.0
- 初始版本发布
- 支持基础群聊分析功能
- 智能话题和用户称号分析
- 精美可视化报告生成
### v1.3.0
- token 消耗情况说明
### v1.4.0
- PDF 版本情况说明更新
### v1.7.0
- 修复提示
- 解耦化
### v1.8.0
- 修复表情统计情况
### v1.9.0
- 生成 24h 时间段活跃情况分析
### v2.1.0
- 支持配置自定义 Provider 或者留空,支持自定义模型的重试和超时处理,思考模型可以根据情况延长请求超时时间
### v2.2.0
- image 格式的报告图片清晰度提高
- 字体稍微调大,但是实际效果也不怎么好,后续可能需要彻底改变排版方式再进行调整
### v2.3.0
- 修复定时触发自动分析无法获取到实例的 bug,现在启用该功能需要传入 bot 的 QQ 号
### v2.4.0
- 纠正无法正确获取当前使用的模型情况
### v2.5.0
- 处理了自动分析器的不唯一问题
- 自动分析器并发处理群聊
### v2.6.0
- (自动分析处理) 纠正分析日期处理情况
### v2.7.0
- (llm_analyzer) LLM 输出 json 提取增强
### v2.8.0
- (#24) 在配置中启用 “偏好使用群昵称” @Ri-Nai
### v2.9.0
- PDF 安装过程不阻塞主线程
### v3.0.0
- 解决自动分析器获取群聊消息失败的问题
### v3.1.0
- llm_analyser 串行执行三部分分析导致处理单次请求耗时太长,修改为异步网络请求
### v3.2.0
- 自定义提示词模板,推荐根据群聊情况进行自定义修改以满足自己的需求
### v3.3.0
- 修复 `群分析获取历史消息的机制并不严格,出现超过当天消息、超过最大数量限制的情况` 的问题
### v3.4.0
- 自定义提示词模板,简单修复格式问题,尽量保证可用
### v3.4.1
- 更新配置文件配置项名称,为了避免用户手动卸载插件配置文件的更新,避免受 3.3.0 以及 3.2.0 错误版本的提示词配置影响导致群分析不可用
### v3.5.0
- max_tokens 参数处理 以及 过滤机器人自己的消息
</details>
## 许可证
+1 -1
View File
@@ -14,6 +14,6 @@ help: | # 插件的帮助信息
命令:
/群分析 [天数] - 分析群聊活动
/分析设置 [操作] - 管理设置(enable/disable/status/test
version: v3.5.0 # 插件版本号。格式:v1.1.1 或者 v1.1
version: v3.6.0 # 插件版本号。格式:v1.1.1 或者 v1.1
author: SXP-Simon # 作者
repo: https://github.com/SXP-Simon/astrbot-qq-group-daily-analysis # 插件的仓库地址