一个容易混淆的概念
「开源模型」这个词你肯定见过无数次了。每次有大公司放出新模型,媒体标题八成会带上「开源」两个字。
但问题是:这些模型真的「开源」吗?「开源」在 AI 领域到底是什么意思?
如果你是写代码的,你对「开源」的理解可能是:源代码公开,任何人可以查看、修改、分发。Linux 是开源的,Python 是开源的,这个概念很清晰。
但到了大语言模型这里,事情变得模糊了。因为一个模型涉及的东西比一个软件项目复杂得多,而不同公司在「开源」的程度上差异巨大。
这篇文章就是帮你把这件事理清楚的。
一个模型到底由什么组成
在讨论「开源了什么」之前,先搞清楚一个大语言模型包含哪些东西。
1. 模型权重(Model Weights)
这是模型最核心的部分。所谓「权重」,就是模型内部那几十亿、几百亿个数字——神经网络经过训练后得到的参数值。
打个比方:如果模型是一个学霸的大脑,那权重就是他脑子里存的所有知识和思维模式。你拿到了权重,就相当于「复制」了这个大脑。
权重文件长什么样? 通常是一些 .safetensors 或 .bin 文件,大小从几个 GB(7B模型)到几百个 GB(405B模型)不等。
2. 训练代码(Training Code)
训练模型用的代码——数据处理管线、训练循环、超参数配置、分布式训练脚本等。
这相当于「制造大脑的工艺流程」。有了它,你就可以从零复制整个训练过程。
3. 训练数据(Training Data)
用来训练模型的那些数据——文本、对话、指令-回答对等。
这是「学霸读过的所有书」。数据的质量和构成直接决定了模型的能力和偏好。
4. 评测结果与方法
模型在各种基准测试上的表现数据,以及评测使用的具体方法和代码。
5. 技术报告 / 论文
描述模型架构、训练方法、设计决策的文档。
6. Tokenizer(分词器)
将文本转换为模型能理解的数字序列(token)的工具。关于 token 的概念,可以看看 Token 到底是什么 那篇入门科普。
不同公司「开源」的程度差异巨大
现在有了这个框架,我们来看看各家公司在「开源」上到底做到了什么程度。
Meta 的 Llama:权重开放,但有条件
Meta 的 Llama 系列是目前最有影响力的「开源」模型之一。但严格来说,它的开放程度是有限的:
开放了的:
- 模型权重(可以下载使用)
- 模型架构细节
- 部分评测代码
- 技术论文
没有完全开放的:
- 完整的训练数据(只公开了数据的来源描述,不提供原始数据集)
- 完整的训练代码(不是全部公开的)
- 数据处理管线的细节
许可证限制:
Llama 使用的是 Meta 自己设计的许可证(Llama Community License / Llama 3.1 Community License),不是标准的开源许可证。关键限制包括:
- 月活跃用户超过 7 亿的产品,需要单独向 Meta 申请授权(这基本上就是排除了其他大厂直接用)
- 不能用模型的输出来训练其他模型(在某些版本的许可证中有这条限制)
- 需要保留 Meta 的署名
所以 Llama 算「开源」吗?在 OSI(开源定义倡议组织)的严格定义下,它不算。但在 AI 行业的通俗用法中,大家一般还是叫它「开源模型」。
Mistral AI:比较开放
Mistral AI 的做法相对更开放一些:
- 早期的 Mistral 7B 使用 Apache 2.0 许可证,这是真正意义上的开源许可证
- 后续的一些模型(如 Mixtral)也采用宽松许可证
- 但更大更新的模型也开始采用更严格的许可证
阿里巴巴的 Qwen:条件式开放
Qwen 系列模型也公开了权重,使用的许可证随版本变化:
- Qwen 2.5 部分版本使用 Apache 2.0
- 部分版本有自定义许可证限制
完全开源的代表:Pythia、BLOOM
真正符合传统「开源」定义的大语言模型项目也有,比如:
- Pythia(EleutherAI):模型权重、训练代码、训练数据全部公开,使用 Apache 2.0 许可证
- BLOOM(BigScience):类似的全面公开策略
这些项目在「开源」的纯度上确实更高,但在模型能力上,和 Llama、Qwen 等商业公司出品的模型还有一定差距。
Hermes 的开放程度
说到 Hermes,它在「开源」方面做到了什么程度?
模型权重:完全公开,可以自由下载使用。
训练方法论:Nous Research 公开了相当详细的技术报告,描述了训练方法、数据策略等。Hermes 3 的技术报告就写得很详尽。
训练数据:这里要诚实地说——Hermes 的训练数据并没有完全公开。Nous Research 描述了数据的构成和处理方法,但原始数据集并不完全可下载。
训练代码:部分公开。
许可证:取决于底座模型的许可证。比如 Hermes 3 基于 Llama 3.1,那就遵循 Llama 的许可证。如果底座是 Apache 2.0 许可的模型,那 Hermes 版本也是 Apache 2.0。
在 cocoloop 论坛上有过关于这个话题的讨论,有人指出 Hermes 虽然不是学术意义上的「完全开源」,但在实际可用性上已经非常开放了——你可以免费下载、在本地运行、商用(遵守底座许可证的前提下)、做二次开发。
许可证到底有什么区别
这部分对开发者和企业用户特别重要。不同的许可证决定了你能拿模型做什么。
Apache 2.0
这是最宽松的主流开源许可证之一。核心要点:
- 可以自由使用、修改、分发
- 可以用于商业目的
- 可以将修改后的版本闭源
- 唯一要求是保留原始版权声明和许可证文本
- 不需要开源你基于它做的东西
哪些模型用 Apache 2.0? Mistral 7B、部分 Qwen 版本、Gemma 等。
MIT License
和 Apache 2.0 类似的宽松许可证,限制更少(没有专利条款)。在 AI 领域较少用于模型本身,更多用于工具代码。
Llama Community License
Meta 自定义的许可证。主要限制:
- 月活 7 亿以上的产品需要额外授权
- 某些使用场景有限制
- 需要署名
这个许可证的具体条款在不同版本间有调整,用之前最好仔细看一遍当前版本的完整文本。
CreativeML / RAIL 类许可证
一些模型使用「负责任AI许可证」(RAIL),会列出一系列禁止的使用场景(如生成虚假信息、歧视性内容等)。这在传统开源定义中是有争议的,因为传统开源不限制使用目的。
商业许可证
一些模型(如 GPT-4、Claude)完全不公开权重,只通过 API 提供服务。你不能下载、不能修改、不能本地部署,只能按调用量付费。
「开源」与「开放权重」的区别
AI 行业越来越多人开始区分两个概念:
- 开源(Open Source):权重、代码、数据全部公开,使用 OSI 认可的开源许可证
- 开放权重(Open Weights):只公开了模型权重,可能有额外使用限制
按这个标准,大多数我们日常说的「开源模型」其实应该叫「开放权重模型」。但在实际交流中,大家一般不做这么严格的区分。
你需要知道的关键区别是:
- 能不能下载权重在本地跑? —— 开放权重和开源都可以
- 能不能商用? —— 取决于具体许可证,不是「开源」就一定能商用
- 能不能看到训练数据? —— 大多数「开源」模型其实不公开完整训练数据
- 能不能复现训练过程? —— 很少有模型做到这一点
为什么这些区别很重要
你可能会想:我只是用模型来聊天/写代码/做应用,这些区别对我有什么影响?
对个人开发者
如果你只是在本地跑模型自己用,大多数「开放权重」模型都没有限制。随便用就行。
但如果你想基于模型做产品赚钱,就得仔细看许可证了。比如你用 Llama 底座做了一个 SaaS 产品,月活增长到了一定规模,就需要考虑 Meta 许可证的限制。
对企业用户
企业使用的法务审查通常更严格。选择 Apache 2.0 许可的模型(或基于 Apache 2.0 底座的 Hermes 版本)会减少很多法律风险。
对研究者
如果你要做学术研究并发表论文,使用真正开源(数据和代码都公开)的模型会让你的研究更具可复现性。
对整个生态
开放程度越高的模型,社区能贡献的越多。完全开源的模型可以被社区从训练阶段开始改进,而只公开权重的模型,社区只能在微调层面参与。
Hermes 在这个光谱上的位置
把各种模型按开放程度排个序的话,大致是这样的:
1 | 完全闭源 ←→ API Only ←→ 限制性许可 ←→ 开放权重 ←→ 完全开源 |
*Hermes 的具体位置取决于底座模型的许可证
Hermes 在实践中的开放度是比较高的。你可以:
- 免费下载
- 本地运行
- 用于商业项目(遵守底座许可证)
- 做二次微调
- 学习其微调方法论
在 cocoloop 社区里,不少开发者就是基于 Hermes 做二次微调来适配自己的特定场景。这种自由度是闭源模型完全不可能给你的。
怎么查一个模型的许可证
实际操作中,查许可证最快的方法:
- 打开模型在 Hugging Face 上的页面
- 看页面右侧的 License 标签
- 如果是自定义许可证,点进去仔细读全文
或者直接看模型仓库里的 LICENSE 或 LICENSE.md 文件。
一个小建议:不要只看别人说这个模型是「开源的」就放心了。自己花10分钟读一下许可证,可以避免很多潜在的法律问题。特别是如果你要做商业应用的话。
开源 AI 的未来方向
AI 领域的「开源」定义还在演变中。OSI 在 2024 年发布了针对 AI 的「开源定义」草案,试图为 AI 模型的开源标准提供更明确的框架。
趋势来看:
- 越来越多的公司选择公开模型权重(即使不是完全开源),因为这有助于建立生态和获取用户
- 训练数据的公开仍然是最大的挑战,涉及版权、隐私等复杂问题
- 许可证碎片化的问题在加剧,各家都搞自己的许可证
作为用户和开发者,你要做的就是搞清楚你在用的模型到底开放了什么、限制了什么,不要被「开源」这个标签一叶障目。
这才是这篇文章最重要的 takeaway。