feely0208/archive-ai-labeling-dup:静态检查 AI 生成内容是否做了标识

前言

在 DSH 里接 OpenAI、Anthropic、DeepSeek 等模型后,生成结果往往会直接展示给用户或写入对外接口。国内相关办法要求对生成内容进行显式、隐式标识,并提示用户核验。运行时逐条人工核对成本高,也容易漏掉某个页面或某个导出文件。

下面介绍维护者 feely0208 在 SkillHub 分类「联网工具」下的插件线索 feely0208/archive-ai-labeling-dup。目录页与 GitHub 仓库说明:能力已合并进 dsh-cn-ai-labeling v0.2.0,本仓库作废(改名以脱离市场扫描范围)。正文中的安装命令、CLI 与规则说明,以仓库 README 记载的 @deepwhale-cn/dsh-ai-labeling 为准;使用时应以合并后的正式包与当前文档为准,勿把归档仓库当作唯一安装源。

这是什么

@deepwhale-cn/dsh-ai-labeling(README 标题)做的是:在静态层面扫描项目代码,找出「调用了模型生成内容、却可能未按法规要求做标识」的位置。它不判断某段文字是否由 AI 生成,也不做事实核查或内容安全审查,更不会直接给出「合规 / 不合规」结论;命中结果是提示确认,判断留给开发者。

与 dsh-ai-output-trust 的分工在 README 里写得很清楚:前者关注 AI 输出喂给下游组件时的注入风险;本插件关注 AI 输出给人看时的标识义务(显式 / 隐式 / 核验提示)。

维护者:feely0208。许可证:MIT(README)。package.json 中版本为 0.1.0,引擎要求 dsh 为 >=0.1.0-rc.6 <0.3.0,Node >=18。

核心功能:五条规则与守卫条件

扫描基于规则文件(rules/),每条规则带 source 字段对应法规条款。README 列出五条:

规则 ID 查什么 级别
AILABEL-NO-DISCLOSURE 生成结果回给用户的文件里,看不到「AI 生成」类显式标识 高
AILABEL-MISSING-TEXT 项目有 AI 生成调用,但全项目找不到「AI 生成 / 由 AI 生成 / AI-generated」等标识文案 高
AILABEL-NO-REVIEW 面向用户的输出里没有「人工核验 / 仅供参考」提示 中
AILABEL-NO-IMPLICIT-META 生成产出缺少 generated_by / ai_generated 等隐式标识字段 中
AILABEL-VAGUE-GENERATED 用户可见文案写「自动生成 / 系统生成」却没有 AI 字样 低

报告会给出文件路径、行号、代码片段及依据条款。五条规则均带 when 守卫:若项目中没有 openai / anthropic / deepseek / generateText 等痕迹,规则记为不适用而非「通过」,避免不用 AI 的项目出现「假绿」;报告会说明例如「5 条因不适用本项目未运行」。

依据在 README 中列出,包括《生成式人工智能服务管理暂行办法》第 12 条、《互联网信息服务深度合成管理规定》第 17 条、《人工智能生成合成内容标识办法》第 4、5 条等。

安装与启用

安装命令须使用 README 原文(--profile web):

dsh plugin --profile web add @deepwhale-cn/dsh-ai-labeling

插件以当前 DSH 进程权限运行;安装前请自行查看源码与 MIT 许可证。SkillHub 上 archive-ai-labeling-dup 条目仅作归档线索,实际能力以合并后的 dsh-cn-ai-labeling 及 npm 包 @deepwhale-cn/dsh-ai-labeling 为准。

典型用法

CLI 入口为 dsh-ai-labeling(package.json 的 bin 字段)。

扫描指定项目根目录:

dsh-ai-labeling --root /path/to/your-project

查看内置演示(接了 OpenAI、摘要直接展示且无标识的示例项目):

dsh-ai-labeling --demo

列出规则与依据:

dsh-ai-labeling --list-rules

导出 HTML 或 CI 用的 JSON:

dsh-ai-labeling --root . --html ai-labeling.html
dsh-ai-labeling --root . --json

有 high/critical 命中时退出码为 1,可挂在 CI 上当卡口。

报告建议的修复方向

README 中的修复思路可概括为四点:

  1. 在用户可见的页面、接口响应、消息正文中引用统一常量形式的显式标识;仅写在 README、注释或后台日志不算。
  2. 增加人工核验或「仅供参考」类提示。
  3. 落库或落盘时补充 generated_by、ai_generated、model_name、service_provider、content_id 等隐式字段。
  4. 避免仅用「自动生成」「系统生成」等含糊表述,应使用带 AI 字样的说明,且勿用「作者」「编辑」等自然人身份规避标识。

适用场景与已知边界

适合:已在代码中接入主流模型 SDK 或生成 API,需要在发版或 CI 阶段快速发现「可能缺标识」的静态位置的团队。

不适合:需要运行时判定内容是否 AI 生成、或需要替代法务结论的场景。

边界(README「已知边界」):

  • 静态分析看不到运行时拼出的标识(例如从配置中心拉取文案),可能漏报,需人工确认。
  • 标识按文件判断:用户实际看到的那份输出文件里没有标识就会报,即使项目别处有统一文案。
  • 隐式标识只匹配有限关键词集合;自定义字段名可能提示你确认该字段是否承担来源标识语义。

结尾

feely0208/archive-ai-labeling-dup 在 SkillHub 上标记为归档,功能已并入 dsh-cn-ai-labeling v0.2.0;持续使用请跟正式包 @deepwhale-cn/dsh-ai-labeling 及其文档。其价值在于把「有没有告诉用户这是 AI 生成、要不要核验」从人肉 checklist 变成可重复的静态扫描与 CI 卡口。

  • 目录页:https://www.skillhub.cn/plugins/feely0208/archive-ai-labeling-dup
  • GitHub(归档仓库):https://github.com/feely0208/archive-ai-labeling-dup

DSH 生态强调「一切皆插件」;SkillHub 为社区目录站点,与 DeepSeek / 幻方无官方从属关系。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye