feat: 评论前置过滤(合规检测)与 AI Foundation 隔离加载 (v1.1.0)

This commit is contained in:
sunny-335
2026-06-23 19:54:55 +08:00
parent 1a2732fe19
commit e5f973c13d
23 changed files with 742 additions and 139 deletions
+42
View File
@@ -8,6 +8,8 @@
- Prompt设置
- 数据清理
页面右侧为操作控制侧边栏,显示保存按钮和未保存状态指示器。在 Prompt 设置页面,侧边栏还会显示可用模板变量列表。
## 基本设置
| 配置项 | 说明 | 默认值 |
@@ -18,6 +20,8 @@
| 速率限制 | 每分钟最大AI回复数量,防止批量评论消耗过多额度 | 10 |
| 最大重试次数 | AI生成失败时的最大重试次数 | 3 |
| 评论者黑名单 | 不触发AI回复的评论者,支持名称、邮箱和正则表达式(`regex:` 开头),逗号分隔 | 空 |
| 启用前置过滤 | AI回复前检测评论合规性,拦截广告/辱骂/敏感内容,节省Token | 开启 |
| 违规评论设为待审核 | 检测到违规评论时自动取消通过,需人工审核 | 开启 |
::: tip 评论者黑名单
黑名单支持三种格式:
@@ -28,6 +32,26 @@
点击"添加评论者"按钮可从已有评论列表中选择评论者自动添加到黑名单。
:::
::: tip 前置过滤(合规检测)
启用前置过滤后,AI 在生成回复前会先对评论内容进行合规性分类,识别以下类别:
- **正常**:放行,继续走 AI 回复流程
- **广告**:包含推广链接、产品推销、引流信息等
- **辱骂攻击**:包含辱骂、人身攻击、恶意挑衅、歧视性言论等
- **敏感内容**:涉及政治敏感、违法违规、色情暴力等
- **无意义**:纯乱码、无意义字符堆砌、与文章完全无关的废话
对于非"正常"类别的评论,插件会:
1. **停止生成 AI 回复**,节省 Token 与 API 调用
2. 创建一条 `FILTERED` 状态的日志记录(可在日志页通过"已拦截"状态筛选查看)
3. 若启用"违规评论设为待审核",会自动将原评论的 `approved` 置为 `false`,使其进入待审核队列,需人工判断后审核通过
::: warning
前置过滤依赖 AI Foundation 插件进行分类判断,会额外消耗少量 Token。若 AI 服务不可用或分类失败,为安全起见将拦截评论而非放行,防止违规内容漏网。
:::
:::
## AI角色设置
AI角色定义了回复评论的虚拟身份。支持创建多个角色,每个角色有独立的昵称、人格提示词、性别、语气风格和 Gravatar 头像,可指定一个为默认角色。
@@ -113,3 +137,21 @@ AI角色定义了回复评论的虚拟身份。支持创建多个角色,每个
::: warning
清理操作仅删除 `AiCommentReply` 记录(插件内部的日志记录),不会删除已发布的 Halo Reply 评论。
:::
## 配置导入导出
插件设置页面顶部提供导入导出按钮,方便备份和迁移配置。
### 导出配置
点击 **导出** 按钮,将当前配置(包括 ConfigMap 数据和所有 AI 角色)导出为 JSON 文件。
### 导入配置
1. 点击 **导入** 按钮,选择 JSON 配置文件
2. 确认导入操作(导入会覆盖当前配置,不可撤销)
3. 导入完成后自动刷新设置和角色列表
::: warning
导入操作会覆盖当前配置,请谨慎操作。建议在导入前先导出当前配置作为备份。
:::