自动标签内容管理
详情介绍
AI 自动标签(AutoTags)使用文档
作者:kuakeba.cn | 版本:1.2.0 | 适用于 Zsens Admin 3.0+(PHP 8.2+)
一、插件简介
发帖时调用 AI 分析文章标题与正文,智能提取关键词作为文章标签并自动挂载:
- 标签数量一般不超过 5 个(可配置 1-5)
- 帖子已有标签时不覆盖
- 支持主流 AI 服务商,下拉选择后仅需填入 API Key
- 支持自定义多协议接口(OpenAI Chat Completions / OpenAI Responses / Anthropic Messages)
- 后台配置页内置「连通性测试」,一键验证 AI 服务商配置是否正确
- AI 调用失败不影响正常发帖
二、环境要求
| 项目 | 要求 |
|---|---|
| Zsens Admin | 3.0+ |
| PHP | 8.2+,已开启 curl 扩展 |
| 社区插件(community) | 必须安装(发帖功能宿主) |
三、安装步骤
- 将
AutoTags目录放入plugins/下 - 进入后台 应用中心,找到「AI 自动标签」,点击 安装
- 进入 应用中心 → AI 自动标签 → 配置,完成服务接入配置
- 确保已安装 社区(community) 插件,否则发帖页不会出现插件入口
四、服务商配置
后台插件配置中,AI 服务商 下拉选择后,只需填入对应 API Key 即可使用(接口地址与默认模型自动带出)。
| 服务商 | API Key 获取地址 | 默认模型 |
|---|---|---|
| DeepSeek | https://platform.deepseek.com | deepseek-chat |
| 通义千问(阿里百炼) | https://bailian.console.aliyun.com | qwen-turbo |
| 智谱 GLM | https://open.bigmodel.cn | glm-4-flash |
| 月之暗面 Kimi | https://platform.moonshot.cn | moonshot-v1-8k |
| OpenAI | https://platform.openai.com | gpt-4o-mini |
| OpenRouter | https://openrouter.ai | openai/gpt-4o-mini |
| 硅基流动 SiliconFlow | https://siliconflow.cn | Qwen/Qwen2.5-7B-Instruct |
| 豆包(火山方舟) | https://console.volcengine.com/ark | doubao-seed-1-6-flash-250815 |
| 腾讯混元 | https://console.cloud.tencent.com/hunyuan | hunyuan-turbos-latest |
| 自定义接口 | — | 需自行填写模型(多协议可选) |
配置项说明
| 配置项 | 说明 |
|---|---|
| 启用插件 | 总开关,关闭后所有功能停用 |
| 发帖后自动提取 | 开启后,发布新帖成功即自动提取并挂载标签 |
| 发帖页显示按钮 | 在发帖页标签区显示「AI 提取标签」按钮,可手动生成预览 |
| AI 服务商 | 下拉快捷选择,选「自定义接口」时需填写 API 地址 |
| API Key | 服务商控制台创建;保存后不回显明文 |
| 模型名称 | 留空使用所选服务商默认模型;自定义接口必填 |
| 自定义 API 地址 | 接口根地址(不以斜杠结尾),保存后自动按 API 格式补端点路径,如 https://api.example.com/v1 |
| API 格式 | 自定义接口的请求协议:OpenAI Chat Completions / OpenAI Responses / Anthropic Messages |
| 完整 URL | 开启后直接使用自定义地址请求,不再自动补端点路径(适用于中转站给出的完整地址) |
| 模型展示名称 | 界面中展示的模型名称,未设置时默认显示模型 ID |
| 连通性测试 | 按钮:以当前保存的配置向 AI 服务发送一条测试消息,验证 API Key、接口地址、模型是否可用(需先保存配置) |
| 标签数量上限 | AI 提取的标签数量上限,1-5 |
五、功能使用
方式一:自动提取(推荐)
开启「发帖后自动提取」后无需任何操作:
- 用户正常发帖
- 帖子保存成功后,插件自动将标题与正文发送给所配 AI 服务
- AI 返回的关键词经规范化后作为标签挂载(标签不存在时自动创建)
- 帖子已有标签则跳过,不做覆盖;AI 失败静默跳过,不影响发帖
方式二:发帖页手动提取
开启「发帖页显示按钮」后,发帖页标签选择区下方会出现 「AI 提取标签」 按钮:
- 填写标题与正文后点击按钮
- 按钮显示「分析中…」,稍候标签以胶囊形式展示
- 可点击胶囊上的 × 单独移除不想要的标签
- 发布时:若未手动选择任何标签,AI 标签自动随帖子提交;若已选择标签,AI 标签不覆盖
- 帖子已有标签时点击按钮会提示「帖子已有标签,AI 不会覆盖」
六、接口说明
POST /autotags/generate
手动触发标签提取(需前台登录)。
请求参数(form-urlencoded)
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| title | string | 二选一 | 文章标题 |
| content | string | 二选一 | 文章正文(支持 HTML) |
返回示例
{
"code": 1,
"msg": "提取成功",
"data": {
"tags": ["PHP", "插件开发", "AI"]
}
}错误返回:code = 0,msg 为失败原因(未登录 / 未填 API Key / AI 服务异常等)。
POST /admin/apps/autotags_test
连通性测试(后台专用,需管理员登录;无请求参数,使用插件已保存配置)。
返回示例
{
"code": 1,
"msg": "连通性测试通过,AI 服务可正常调用",
"data": {
"model": "glm-4-flash",
"preview": "连接正常"
}
}错误返回:code = 0,msg 为失败原因(配置不完整 / AI 服务异常 / 无权限等)。
七、常见问题
Q:点击按钮提示「请先在插件配置中填写 API Key」?
后台「应用中心 → AI 自动标签 → 配置」中填写所选服务商的 API Key 并保存。
Q:如何确认 AI 服务商配置是否正确?
在后台插件配置弹窗中点击「连通性测试」:插件会以当前已保存的配置向 AI 服务发送一条测试消息,通过则提示成功并显示所用模型;失败则返回具体原因(配置不完整 / Key 无效 / 余额不足 / 网络不通等)。修改配置后请先保存再测试。
Q:配置后依然失败,如何排查?
- 确认 API Key 有效、账户有余额
- 自定义接口按「API 格式」填写根地址(如
https://api.example.com/v1),系统自动补/chat/completions、/responses或/v1/messages端点;若为中转站给出的完整地址,可开启「完整 URL」直接使用 - 豆包(火山方舟)模型名需为已开通的接入点或模型 ID
- 服务器需能访问对应服务商域名(出网正常、PHP curl 扩展已开启)
Q:自动提取时发帖会变慢吗?
会。自动模式在帖子保存后同步调用 AI(超时 25 秒),通常增加 1-3 秒;若介意可关闭「发帖后自动提取」,仅保留发帖页按钮手动提取。
Q:标签在哪里管理?
标签由社区插件统一管理(颜色、封面等),AI 创建的标签与手动添加的标签完全一致,可在后台社区标签管理中调整。
Q:改了 static/ 目录下的文件为什么不生效?
静态资源安装时复制到 public/static/AutoTags/,修改源文件后需在后台对插件执行「升级」,或手动同步到 public 目录。
更新记录 (3)
-
v1.2.01
2026-10-20
修复bug
-
v1.2.0
2026-10-20
新增AI服务商测试
-
v1.0.0
2026-10-16
首次发布
QQ官方交流群