开源(英语 open source)指源代码任何人都可以阅读、修改和分发的软件。是否开源由许可证决定:按照开放源代码促进会(Open Source Initiative)的定义,开源“不仅仅意味着可以获取源代码”:许可证必须允许自由分发程序、修改程序,并分发修改后的版本。1
这场运动始于 1983 年的自由操作系统项目 GNU,而“open source”一词出现于 1998 年。23 如今几乎每个程序里都有开源代码,它对经济的价值以数万亿美元计。45 AI 到来之后,开源代码又成了原料:会写代码的模型就是用开源代码训练的,而开源项目本身则饱受 AI 爬虫和大量 AI 代码修改之苦。
历史
- 27.09.1983理查德·斯托曼宣布,他将开始编写一个完整的、与 Unix 兼容的系统 GNU,并将“免费送给所有能用它的人”。2 ¶ ckb4b47nh
- 25.08.1991林纳斯·托瓦兹在 comp.os.minix 新闻组中说,他在为 386 电脑做一个自由的操作系统——“只是个爱好,不会像 GNU 那样庞大和专业”。Linux 就是从它发展而来的。6 ¶ c2mp68k6u
- 03.02.1998Netscape 决定开放浏览器源代码后不久,在帕洛阿尔托的一次会议上,克里斯汀·彼得森(Christine Peterson)提出了“open source”这个术语;2 月底,开放源代码促进会成立。3 ¶ ct64k8kz9
- 10.04.2008GitHub 上线——这个代码托管平台后来成了开源代码的主要阵地。7 ¶ c7deb3mcs
- 29.06.2021GitHub 推出 Copilot,它基于 OpenAI Codex 模型,而该模型的训练数据中包括大量公开源代码。8 ¶ cav3fkjdg
- 03.11.2022程序员们因 Copilot 对 GitHub、Microsoft 和 OpenAI 提起集体诉讼——据原告称,这是美国第一起质疑 AI 系统的训练及其产出的诉讼。9 ¶ cwzsrimk7
- 28.10.2024开放源代码促进会发布开源 AI 定义 1.0:不仅权重必须开放,训练数据的信息也必须足够详细,让专业人士能据此构建出实质上等效的系统。10 ¶ c6gytcsan
- 16.09.2026美国第九巡回上诉法院维持了驳回依据 DMCA 法对 Copilot 提出的诉求的判决:法院认为,Copilot 和 Codex 并没有从现有作品中删除版权信息,而是创作了原本就不含这些信息的新作品。11 ¶ c4c4ngdr8
数据
| 研究 | 测量内容 | 结果 |
|---|---|---|
| 霍夫曼、内格尔、周(Hoffmann, Nagle, Zhou)(哈佛商学院),01.20244 | 如果广泛使用的开源代码不存在,它值多少钱 | 重新开发需要 41.5亿美元,而它对用户的价值达 8.8万亿美元;没有开源代码,企业在软件上的花费将是现在的 3.5 倍;96% 的价值由 5% 的开发者创造 ¶ czd9pksaf |
| GitHub Octoverse,29.10.202412 | GitHub 上一年的活动 | 5.18 亿个项目中有超过 52 亿次代码修改;生成式 AI 项目增加了 98%,其中的代码修改增加了 59%;Python 超过了 JavaScript ¶ cbutvs2a4 |
| GitHub Octoverse,28.10.202513 | 次年的同一指标 | 开发者超过 1.8 亿;超过 110 万个公开仓库使用大语言模型 SDK,其中 693,867 个是在过去 12 个月内创建的 ¶ c2vtfm8q5 |
| Black Duck,OSSRA 报告,20265 | 经过审查的商业软件;该公司销售代码审查服务 | 98% 的软件含有开源代码;68% 存在许可证冲突 ¶ cq2bi5r9b |
开源代码是公共基础设施:几乎每个商业程序里都有它,它对用户的价值是其开发成本的数千倍。而这份价值依赖极少数人——5% 的开发者贡献了 96% 的价值。AI 从两个方向加重了他们的负担:模型用开源代码训练,而爬虫和自动生成的代码修改则耗费项目的时间和资源。迄今为止,法院尚未认定 Copilot 的训练和运行违反 DMCA 法。 ¶ cfeknc6aa
事件
xz 后门,2024年3月 ¶ cjfj5sjxe
2024年3月29日,开发者安德烈斯·弗罗因德(Andres Freund)报告称,压缩库 xz/liblzma 的代码仓库和发布包中含有一个后门,可以用来攻破 ssh 服务器(CVE-2024-3094)。14 带后门的发布包由一位名为 Jia Tan 的参与者创建并签名。15 两年前,项目维护者拉塞·科林(Lasse Collin)曾写道,由于长期的心理健康问题,他投入项目的能力有限,Jia Tan 可能会在项目中承担更重要的角色。16
AI 爬虫冲击开源基础设施,2025 年 ¶ ckrvdjbad
代码托管平台 SourceHut 的创始人德鲁·德沃尔特(Drew DeVault)在 2025年3月17日写道,他要花 20% 到 100% 的工作时间来抵御“极度激进”的大语言模型爬虫,服务每周都会出现几十次短暂故障;而只有“与现实隔着好几层善意假设”的人,才会以为这些爬虫遵守 robots.txt。17 GNOME 社区在自己的 GitLab 前部署了代理 Anubis,它要求访问者完成一定的计算工作,以此挡住 AI 抓取程序。18
维基媒体:机器人流量,2025年4月 ¶ ciz668dck
维基媒体基金会报告称,自 2024年1月以来,下载媒体文件的流量增长了 50%,而增长来自自动程序,而不是人。在成本最高的流量中,至少 65% 来自机器人,尽管它们在页面浏览量中只占约 35%。19
批评
开放源代码促进会两次声明,Llama 模型(由 Meta 开发)的许可证不是开源许可证:2023年7月20日,它指出 Meta 制造了 Llama 2 是“open source”的误解;2025年2月18日,它又指出 Llama 3.x“无论怎么看都仍然不是开源”,尽管 Meta 继续这样称呼它。2021 ¶ ceqg7vn5e
拉德堡德大学的安德烈亚斯·利森菲尔德(Andreas Liesenfeld)和马克·丁格曼斯(Mark Dingemanse)研究了 45 个以上的生成式 AI 系统后,把这种现象称为“开源洗白”(open-washing):“open source”一词被广泛使用,但许多模型充其量只是“开放权重”,而许多开发者通过隐藏训练和微调数据,逃避科学、法律和监管方面的审查。22 ¶ ce32w57y8
发展
一些大型项目正在对 AI 编写的代码关上大门:2024年4月,Gentoo 理事会禁止使用 AI 工具创作的贡献;NetBSD 将这类代码“推定为受污染的代码”,未经管理层书面许可不予接受;QEMU 拒绝任何被认为含有 AI 生成内容的代码修改。232425 ¶ cefpkc7aa
同一过程的另一面,是大量未经审查的 AI 代码修改和报告,让维护者不堪重负:见维护者危机。
参见
参考资料
-
The Open Source Definition — Open Source Initiative. opensource.org ↩
-
Initial Announcement — GNU Project, 27.09.1983. gnu.org ↩ ↩2
-
History of the OSI — Open Source Initiative. opensource.org ↩ ↩2
-
M. Hoffmann, F. Nagle, Y. Zhou. The Value of Open Source Software — Harvard Business School, Working Paper 24-038, 01.2024. hbs.edu ↩ ↩2
-
Open Source Security and Risk Analysis Report 2026 — Black Duck, 2026. blackduck.com ↩ ↩2
-
Linus Torvalds: «What would you like to see most in minix?» — comp.os.minix, 25.08.1991. groups.google.com ↩
-
We launched — GitHub, 10.04.2008. github.blog ↩
-
Introducing GitHub Copilot: your AI pair programmer — GitHub, 29.06.2021. github.blog ↩
-
GitHub Copilot litigation — Joseph Saveri Law Firm & Matthew Butterick, 03.11.2022. githubcopilotlitigation.com ↩
-
The Open Source AI Definition – 1.0 — Open Source Initiative, 28.10.2024. opensource.org ↩
-
Doe v. GitHub, Inc., No. 24-7700 — U.S. Court of Appeals for the Ninth Circuit, 16.09.2026. ca9.uscourts.gov ↩
-
Octoverse 2024 — GitHub, 29.10.2024. github.blog ↩
-
Octoverse: A new developer joins GitHub every second as AI leads TypeScript to #1 — GitHub, 28.10.2025. github.blog ↩
-
Andres Freund: «backdoor in upstream xz/liblzma leading to ssh server compromise» — oss-security, 29.03.2024. openwall.com ↩
-
XZ Utils backdoor — Lasse Collin, Tukaani Project. tukaani.org ↩
-
Lasse Collin: «Re: [xz-devel] XZ for Java» — xz-devel, 08.06.2022. mail-archive.com ↩
-
Please stop externalizing your costs directly into my face — Drew DeVault, 17.03.2025. drewdevault.com ↩
-
Anime girl on Gnome GitLab — GNOME Discourse, 14.03.2025. discourse.gnome.org ↩
-
How crawlers impact the operations of the Wikimedia projects — Wikimedia Foundation, 01.04.2025. diff.wikimedia.org ↩
-
Meta’s LLaMa license is not Open Source — Open Source Initiative, 20.07.2023. opensource.org ↩
-
Meta’s LLaMa license is still not Open Source — Open Source Initiative, 18.02.2025. opensource.org ↩
-
A. Liesenfeld, M. Dingemanse. Rethinking open source generative AI: open-washing and the EU AI Act — FAccT ‘24, 06.2024. facctconference.org ↩
-
AI policy — Gentoo Council, 14.04.2024. wiki.gentoo.org ↩
-
Commit guidelines — NetBSD. netbsd.org ↩
-
Code provenance — QEMU. gitlab.com ↩