提示词黑名单
站长可控的违禁词清单, 命中即拦, 不烧上游 token
后台 → 提示词黑名单 是一份你自己维护的违禁词清单。 用户提交的提示词如果包含里面任何一条, 直接被拦下来, 不冻结点数, 不调上游, 也不会留在生图历史里。
适合用来挡:
- 政治高敏 / 国家领导人 (国内合规线)
- 未成年色情 / 极端暴力 (各地法律红线)
- 你不希望生在自己站点上的特定题材 (品牌相关 / 同行碰瓷词等)
不是 AI 语义审核, 就是字符串包含匹配: 简单、快、可解释。 站长说什么是违禁就是违禁, 不依赖第三方判断。
用户看到什么
启用后, 用户在创造页提交一段命中黑名单的提示词时, 顶部弹出红色提示 (文案由你配置), 不消耗任何点数:

提示词不会进入生图历史, 也不会出现在你的渠道账单上。
默认拦什么
首次部署时, 系统自带 ~20 条政治类底线词 (国家领导人 / 高敏历史事件 / 分裂主张 / 极端组织), 覆盖中英文写法。默认总开关是关闭的 — 装好不会自动开始拦, 你确认要用了再去打开。
为什么默认不放未成年色情 / 暴力词:
- 各地法律口径不一样, 内置词表很难做到"全球都对"
- 词太多容易误伤 (普通词被切成片段命中), 反而影响正常用户
- 这块强烈建议你按当地法规自己加, 用下面的批量导入功能一次粘 50-100 个
总开关 + 文案
去 后台 → 设置 → 内容安全:
- 启用提示词黑名单 — 总开关; 关闭时整套机制不工作 (词表保留, 不删)
- 命中后给用户的提示文案 — 自定义中文文案, 建议中性表述, 不要透露具体命中词
- AI 提示词优化也走黑名单 — 默认开启; 防止用户借优化按钮"洗白"违禁词
改完即时生效, 不用重启。
词条管理

后台 → 提示词黑名单 进入管理页, 顶部一排操作:
- 新增 — 单条添加, 填词 + 选分类即可
- 批量导入 — 一次粘几十上百个词进来 (推荐做法, 见下节)
- 导出 .txt — 导出当前词表为纯文本, 一行一词; 备份 / 多站点同步用
- 测试匹配 — 不依赖总开关, 输入一段提示词看会被哪些词命中, 上线前自测
- 重置内置 — 把内置政治类词重置回出厂状态 (你自己加的 / 导入的不动)
每条词带:
- 分类 (政治 / 色情 / 暴力 / 自定义) — 仅用于筛选, 不影响匹配
- 状态 (启用 / 停用) — 停用不删, 留痕便于复盘
- 命中次数 + 最近命中 — 让你看哪些词在生效、哪些是"加了从来没拦过"可以清掉
- 备注 — 自己写"为啥拦这个", 三个月后回来看不会一脸懵
批量导入: 让 AI 帮你列词
直接去 ChatGPT / Claude / Gemini 网页, 让它给你列一份, 比如:
我在做 AI 生图站, 帮我列出 50 个跟未成年色情相关的中英文关键词,
每行一个, 不要解释复制结果, 粘到批量导入对话框, 选个默认分类 (这一批共用), 点导入。
格式约定:
- 一行一词,
#开头是注释会跳过, 空行忽略 - 自动转小写 + 去重 (同一批次内重复词只留一个)
- 撞到现有词自动跳过, 不报错; 导入完成会告诉你新增了几条 / 跳过了几条
模式两种:
- 追加 (默认) — 新词加进去, 已有的不动
- 覆盖 — 清空整张词表再写入; 高危, 二次确认才动手, 适合"换一份完全新的词表"
工作原理 (技术细节)
- 匹配: 全局子串包含 + 大小写不敏感, 不是正则也不是分词
- 范围: 文生图 / 参考图编辑 / 局部重绘 / AI 提示词优化 — 4 个用户提交入口都过一遍
- 速度: 词表整体加载到内存, 每次提交内存里跑一遍, 几百条词单次匹配 < 0.1ms, 不会成为提交瓶颈
- 位置: 计费之前就拦, 命中不冻结点数, 也不写历史; 用户多次试错也不会扣到钱
- 日志: 命中时只在后端日志记一行 "matched=[...]", 不入数据库 (不存用户的违禁 prompt 原文)
一些常见问题
用户用拼音 / 谐音 / 错字怎么办?
字符串匹配挡不住, 需要靠你自己把变体也加进去。可以让 AI 帮你列 "xx 的常见拼音 / 谐音 / 错字写法", 一次性导进去。
会误伤吗?
全局子串匹配 + 大小写不敏感 — 加 cao 会拦截所有含 cao 的英文词 (cause / cocoa 等)。
建议:
- 中文短词不要太短 (单字 / 双字慎加, 容易踩到正常词)
- 英文短词加点上下文 (加
child porn而不是child) - 上线前用 测试匹配 跑几段你自己的常用提示词试试, 别盲信导入结果
站点已经在跑, 改了开关 / 加了词需要重启吗?
不需要。开关切换、单条增删改、批量导入 — 都是改完立刻生效。
误拦了用户怎么办?
- 对应词调成 "停用" 状态 (留痕但不参与匹配), 或直接删掉
- 给用户改一下"命中后文案", 让他知道下一步怎么办 (改词 / 联系客服)
和上游中转的内容审核冲突吗?
不冲突。本地黑名单是第一道, 拦不住的才走上游。上游中转 / OpenAI 自己的 moderation 仍然会在他们那一侧生效, 触发后我们会归类为 "moderation_blocked", 同样不暴露具体原因给用户。
推荐运维流程
- 第一次部署: 总开关保持关闭, 进管理页看下内置词跟你的合规要求是否对上, 不对就改 / 删
- 让 AI 列一份"目标人群最容易踩的违禁词" (按你站点定位: 国内 / 海外 / 二次元 / 商业摄影 …), 批量导入 50-100 条
- 用 测试匹配 拿几段你常见的正常提示词测一遍, 看有没有误伤
- 打开总开关, 上线观察 1-2 周
- 周期性回看 命中次数 列, 把"从来没命中过"的词清掉, 把"高频命中"的词记下作为运营素材