# 插件介绍 AI回评(Comment AI Autopilot)是一个 Halo 博客系统的插件,能够自动为博客评论生成AI回复。 ## 核心功能 - **自动回复** — 监听新评论,自动调用AI生成回复,支持多轮对话上下文 - **多 AI 角色** — 支持创建多个 AI 角色,每个角色有独立的昵称、人格提示词、性别、语气风格和 Gravatar 头像,可为不同文章指定不同角色 - **唤醒词** — 评论以唤醒词开头可唤醒指定角色回复,支持自定义唤醒词,可在未启用AI回评的页面使用唤醒词召唤AI - **性别与语气** — AI角色支持性别配置(男/女)和中性语气风格,AI回复时保持对应性别身份 - **多语言适配** — 根据评论语言自动用对应语言回复 - **情感分析** — 分析评论情感倾向(非常正面/正面/中性/负面/非常负面),根据情感调整回复语气 - **草稿模式** — AI回复先存为草稿,管理员审核后再发布 - **失败重试** — AI生成失败时自动重试,指数退避策略 - **批量操作** — 草稿模式下支持批量通过/拒绝/删除 - **文章/页面级开关** — 在文章编辑器中直接控制是否启用AI回复,文章默认开启,页面默认关闭 - **评论者黑名单** — 屏蔽指定评论者,不触发AI回复,支持名称、邮箱和正则表达式 - **前置过滤(合规检测)** — AI回复前对评论进行合规性分类,自动拦截广告/辱骂/敏感/无意义内容,节省Token;可选将违规评论设为待审核状态 - **手动触发** — 在评论管理页面对历史评论手动触发AI回复 - **安全审核** — AI生成的内容经过两阶段安全审核(安全检查 + 质量评分),不合规内容自动拒绝 - **Prompt 预设** — 内置友好型、专业型、幽默型、简洁型预设风格,可多选组合 - **对话轮次限制** — 同一评论线程中限制 AI 最多回复轮次,防止无限对话 - **速率限制** — 每分钟最大 AI 回复数量,防止批量评论消耗过多额度 - **日志筛选搜索** — 按状态、情感筛选,关键词搜索 - **对话上下文查看** — 在日志页面查看完整对话上下文,支持引用摘要展示和 Gravatar 头像显示 - **数据清理** — 自动清理超过指定天数的旧记录 - **配置导入导出** — 支持将插件配置导出为 JSON 文件,方便备份和迁移 - **AI Foundation 集成** — 通过 Halo 官方推荐的 `ExtensionGetter` 获取 AI 服务,需安装 AI Foundation 插件 ## 工作流程 ``` 新评论 → 唤醒词检查 → 过滤检查 → 前置过滤(合规检测) → 情感分析 → 构建Prompt → AI生成 → 安全审核 → 发布/草稿 ↓ (失败) 重试 → ... → 最终失败 ``` 1. **新评论到达** — Reconciler 监听到新评论创建事件 2. **唤醒词检查** — 检查评论是否以某个角色的唤醒词开头,匹配则唤醒对应角色 3. **过滤检查** — 检查文章/页面是否启用AI回复、评论者是否在黑名单中(唤醒词触发时绕过页面级启用检查) 4. **前置过滤(合规检测)** — 若启用,AI 对评论内容进行合规性分类(正常/广告/辱骂攻击/敏感内容/无意义)。违规评论将停止后续流程,可选自动设为待审核状态 5. **情感分析** — 调用AI分析评论情感倾向 6. **构建Prompt** — 结合AI角色人格、情感提示、文章内容、评论上下文构建Prompt 7. **AI生成** — 调用AI模型生成回复内容 8. **安全审核** — 对生成内容进行两阶段审核(安全检查 + 质量评分 1-5 分映射到 0-100) 9. **发布/草稿** — 根据设置自动发布或存为草稿等待审核 10. **重试** — 如果AI生成失败,系统会自动重试(最多 maxRetryCount 次),每次重试间隔递增 ## 前置要求 - Halo 2.25+ - AI Foundation 插件(必须) — 本插件通过 `ExtensionGetter` 调用 AI Foundation 提供的 `AiModelService` 扩展点 ## 技术栈 - **后端**:Java + Spring WebFlux + Reactive - **前端**:Vue 3 + @halo-dev/components - **AI**:通过 AI Foundation 插件集成