2. 数据许可基础

数据许可(Data License)是数据提供方与使用方之间关于“谁可以用、用来做什么、以什么方式再分发、是否需要付费或署名”的法律与技术约定。它既是法律文本,也是工程约束:在数据管道、模型训练、API 调用和二次分发中,许可条款会直接决定数据能否入库、能否合并、能否商用、能否对外发布。理解许可类型,是数据合规治理的第一道关口。

核心判断链:权利归属 → 授权范围 → 使用限制 → 义务要求 → 违约后果。任何数据接入前,都应先回答这五个问题,而不是先看数据格式或字段质量。

一、许可证类型:从“保留全部权利”到“放弃全部权利”

数据许可并非只有“开源”和“闭源”两种。按权利让渡程度,可形成一个连续谱:

  • 专有/商业许可:权利保留最多。使用方通常需付费,授权范围、期限、地域、用途、并发量、衍生权利均由合同约定,常见于金融行情、征信数据、地图轨迹、医疗数据等。
  • 开源协议:主要面向软件代码,但常被用于数据或数据工具。典型如 MIT、Apache-2.0、BSD、GPL、AGPL。它们强调自由使用、修改、分发,但不同协议对“衍生作品是否必须开源”要求不同。
  • 知识共享协议(CC):面向内容与数据,常见组合有 CC BY、CC BY-SA、CC BY-NC、CC BY-ND、CC0。核心维度是署名(BY)、相同方式共享(SA)、非商业(NC)、禁止演绎(ND)。
  • 公共领域数据:权利保护已过期、被明确放弃或依法不受保护的数据,如部分政府公开数据、CC0 声明数据。使用限制最少,但仍需注意来源真实性、隐私与国家安全等上位法约束。

需要特别区分:“公开可访问”不等于“可自由使用”。网页可爬取、API 可调用,只说明技术可达,不说明法律授权。很多网站的服务条款明确禁止批量抓取、商业利用或再分发。

二、开源协议与知识共享协议的关键差异

开源协议和 CC 协议常被混用,但它们的适用对象和触发条件不同。开源协议主要针对软件代码,关注源码分发、修改、链接和专利授权;CC 协议主要针对内容、数据集、文档、图像,关注署名、商业使用和演绎作品。若把 GPL 数据当成 CC BY 使用,或把 CC BY-NC 数据用于商业模型训练,都会产生合规风险。

许可类型 典型代表 商用 署名要求 衍生/再分发约束 常见适用对象
宽松开源 MIT、Apache-2.0、BSD 允许 通常需保留版权声明 可闭源分发,需保留声明 代码、工具、部分数据集
传染性开源 GPL、AGPL 允许,但衍生需开源 需保留声明 衍生作品需同协议开源 代码、数据库工具
知识共享 CC BY、CC BY-SA、CC BY-NC BY/SA 允许,NC 禁止 必须署名 SA 要求相同方式共享,ND 禁止演绎 文档、图像、数据集
公共领域 CC0、PD 允许 通常无 几乎无限制 政府开放数据、过期版权作品
商业许可 定制合同、订阅协议 按合同 按合同 严格限制再分发与衍生 金融、征信、医疗、地图

三、方法流程:数据许可合规审查五步法

  1. 识别许可来源:查看数据页面、仓库 LICENSE 文件、API 条款、合同附件,确认许可名称与版本号。
  2. 映射权利维度:逐项核对商用、署名、相同方式共享、禁止演绎、专利授权、再分发、模型训练等条款。
  3. 判断使用场景:内部测试、商业产品、对外发布、模型训练、二次分发,不同场景触发不同义务。
  4. 记录合规证据:保存许可快照、版本、获取时间、来源 URL、授权邮件或合同编号,形成可审计链路。
  5. 设置技术控制:在数据目录中打许可标签,在 ETL 与训练管道中做策略校验,禁止不合规数据流入生产。
# 数据许可元数据示例(YAML)
dataset: user_behavior_2024
license: CC-BY-NC-4.0
commercial_use: false
attribution_required: true
share_alike: false
derivatives_allowed: true
source_url: https://example.org/data/2024
retrieved_at: 2025-01-15
review_status: approved_for_research_only

四、案例与场景:许可冲突如何发生

某团队将 CC BY-NC 的公开评论数据与 Apache-2.0 的开源代码工具结合,训练了一个商业推荐模型。问题不在代码,而在数据:CC BY-NC 明确禁止商业使用,模型商用即触发违约。另一个常见场景是 GPL 工具生成的数据集:若工具与数据形成“衍生作品”,再分发时可能被要求以 GPL 兼容方式开放,而企业希望闭源,冲突由此产生。

常见误区:
1. 认为“公开数据”就是“公共领域数据”;
2. 认为“署名”只是写个来源,忽略相同方式共享和禁止演绎;
3. 认为“模型训练”属于合理使用,忽略许可条款对训练用途的明确限制;
4. 认为“买了商业许可”就能无限再分发,忽略合同中的地域、期限和衍生限制。

五、复盘:把许可变成工程参数

许可治理不应停留在法务审阅。更有效的做法是把许可条款转译为机器可读的策略参数,嵌入数据目录、权限系统和流水线。例如:commercial_use=false 的数据自动进入研究分区;share_alike=true 的数据在导出时强制附带相同协议;attribution_required=true 的数据在发布页面自动生成署名清单。这样,合规不再是事后补救,而是数据流中的默认约束。

数据许可类型与权利维度关系图 从“保留全部权利”到“放弃全部权利”的连续谱 权利保留多 权利让渡多 商业许可 付费 / 合同约定 用途·期限·地域受限 传染性开源 GPL / AGPL 衍生需同协议开源 宽松开源 MIT / Apache-2.0 保留声明即可 知识共享 CC BY / SA / NC / ND 署名·商用·演绎组合 公共领域 CC0 / PD 几乎无限制 五个必须核对的权利维度 商用权限 能否用于商业产品 署名义务 是否必须标注来源 相同方式共享 衍生是否同协议 禁止演绎 能否修改与再创作 再分发限制 能否对外提供数据 合规判断路径 识别许可来源 LICENSE / 条款 / 合同 映射权利维度 商用·署名·SA·ND 判断使用场景 内部·商用·训练·分发 记录证据 + 技术控制 许可标签·策略校验

综上,数据许可基础不是背协议名称,而是建立“权利维度—使用场景—义务动作”的映射能力。只有把许可条款翻译成可执行的数据策略,才能在数据接入、加工、训练和分发全链路中做到可解释、可审计、可追责。