人工智能领域的开源问题一直存在,其中最大的争议点是到底什么样的人工智能可以称之为“开源”。开放源代码倡议(OSI)作为业内公认的开源仲裁机构,二十五年来一直负责管理开放源代码定义 (OSD)。在过去两三年中,OSI 致力于为开源 AI 制定定义和标准,以构建可供任何人用于研究、修改和共享的 AI 系统。
因此,开放源代码倡议(OSI)邀请了 70 人组成的团队,包括研究人员、律师、政策制定者和活动家,以及 Meta、谷歌和亚马逊等大型科技公司的代表,来共同协商制定 AI 开源定义。他们在全球范围内进行了数月的意见收集和“路演”以期收到更多元、更全面的关于 AI 开源定义的反馈,最终,OSI 于 10 月 2 日首次发布了开源 AI 定义的暂行版本 1.0。
OSI 执行董事 Maffulli 表示,定义仍处于试用阶段:“这是 1.0 版本,但是一个非常简陋的 1.0。我们并不是说这已经是板上钉钉的事情了。”。
开源 AI 定义 1.0 版本:https://opensource.org/ai/drafts/the-open-source-ai-definition-1-0-rc1
但让人意外的是,1.0 版本发布后在社区中引发了广泛讨论,有不少声音质疑 OSI 放宽了对于开放源代码 AI 的定义。为此,OSI 董事会近日又就开放源代码 AI 定义(OSAID)进行投票,微调后的 1.0 版本标准准则也定于 10 月 28 日发布(截止发稿前还未发布)。
此前,由于 AI 开源标准的缺失带来了很多问题。虽然 OpenAI 和 Anthropic 决定对其模型、数据集和算法保密,这使得他们的 AI 成为闭源的,但一些专家认为,Meta 和 Google 的免费模型(任何人都可以检查和调整)也不是真正的开源,因为许可证限制了用户可以对模型做什么,而且训练数据集不公开。
人工智能模型构建和共享平台 Hugging Face 的应用政策研究员 Avijit Ghosh 表示:“众所周知,公司在营销其模型时会误用该术语。”将模型描述为开源可能会使它们被认为更值得信赖,即使研究人员无法独立调查它们是否真的是开源的。
开源不仅仅是一个法律和商业问题,它还关乎开发者的自由和权益。真正的开源许可证让每个人的生活都更轻松,如果没有开源,开发者将失去自由使用代码的好处,每次想要使用新库时都需要进行法律审查。这将导致整个项目停止工作、安全漏洞无法被修复、维护变得更加困难等问题。
正确地定义好开源规则,有助于确保公司不会通过欺骗性的营销策略来误导消费者和公众。同时,也有助于推动真正的开放和透明实践,从而促进人工智能领域的健康发展。
但该标准在社区内引发了诸多知名人士的担忧,他们认为 OSI 的 OSAID 门槛过低,可能破坏过去数十年来开源社区为了引导供应商遵守或尊重原始开放源代码定义(OSD)而做出的努力。
OSI 执行董事 Stefano Maffulli 于 2023 年 6 月正式宣布,该组织计划为开源 AI 设置定义。他对于当前种种“大语言模型、基础模型、工具和服务均自称为「开放」或者「开源」”的状况表达了反对,称其中仍存在与 OSD 相抵触的条款。2023 年对于大语言模型(LLM)系统的一项调查也发现,表面上开源的大模型几乎都名不副实。
这个问题远不止“要保证大语言模型的许可证符合 OSD”那么简单,因为还有更多组件需要考虑。原始的 OSD 强调作为“程序员修改程序的首选形式”对程序的源代码施加影响。如果开发人员无法学习、使用、修改和共享特定程序,则该程序就不能被称为开源项目;而如果许可证中不保留这些自由空间,即被视为不符合 OSD。当然,即使程序中包含非自由数据,也仍不影响其开源属性。例如,游戏《雷神之锤 3:竞技场》可在 GPLv2 许可证下使用,但该发行版并不包含地图、纹理以及实际游玩这款商业游戏所需要的其他 pak 内容文件。尽管如此,其他人仍可以在该游戏代码的基础之上开发自己的版本,例如《Tremulous》。
过去几十年,开源的世界发展很顺利,而且以前软件的概念很简单:有源代码,有二进制代码。“现在,人工智能突然出现,”Maffulli 说。“特别是过去三、四、五年来出现的新一代人工智能,创造了新的人工制品。现在,模型权重和参数是一个全新的东西。它们是功能性的,它们改变了系统的状态。但它们不是软件,不是源代码,也不是数据。所以它们是一种新的人工制品。”
他补充道:“还有一件事:已经有数十亿人在使用它们。”
此外,与开源软件之前的历史相比,Maffulli 表示,“全球各地的监管机构对此感到极度担忧。因为就连计算机科学家自己也坦言,‘我们不清楚其中的原理,不知道如何操作,甚至真的无法修复它们。但请相信我们,一切都会没问题的。’ 这样的说法让监管机构深感恐慌。”
所以问题一旦牵涉到“AI 系统”身上,情况就要复杂得多。
其不仅仅是指通过运行模型来完成某些任务的代码,而且数据也不可能像游戏程序那样完全与系统本体分离开来。对于大语言模型,其中涉及的核心要素就有模型架构、用于模型训练的代码、模型参数、用于训练的技术和方法、标记训练数据的程序、支持库以及用于模型训练的数据等等。
OSI 自去年以来就一直在研究如何设置定义,并于 2023 年 6 月 21 日在旧金山的 Mozilla 总部召开了项目启动会议。随后,OSI 又通过一系列定期线下及线上会议,以及在线讨论论坛邀请人们加入这个议题。
OSAID 当前草案对于 AI 系统的定义取自经济合作与发展组织(OECD)AI 理事会的建议:
一种基于机器的系统,出于明确或隐含的目标,而从收取的输入中推断如何生成输出,包括预测、内容、建议或者可能影响到物理或虚拟环境的决策。
其中包含用于训练和系统运行的源代码、“权重或其他配置设定”等模型参数,以及关于系统训练数据的充分而详尽的信息,以便技术人员能够建立起基本等效的系统。
根据拟议的定义,这些元素必须在 OSI 批准的许可证下得到保障,而这似乎已经能够符合我们对于“开源”概念的基本期望。但其中还存在一个例外,就是对于数据食相和模型参数之类的内容,必须要在“OSI 批准的术语”下可用。至于 OSI 批准的术语究竟是什么,目前尚无定论。
新标准并不要求提供训练数据。要符合 OSAID 的当前草案,AI 系统只需要提供关于数据的“详细信息”,而并不需要提供数据本体。
OSI 于 8 月 22 日发布了开源 AI 标准的 0.0.9 版本,其中承认“训练数据是定义当中最受争议的部分之一”。最终,OSI 决定不要求开放训练数据:
经过长时间的审议和联合会议商讨,我们得出结论,最好是将训练数据定义为一种建议开放、而非强制开放的元素。
训练数据对于研究 AI 系统极具价值,包括理解模型已经习得的偏见,以及这些偏见可能对系统行为造成的影响。但训练并不是对现有 AI 系统进行修改的首选形式。这些数据中的见解和相关性已经被模型习得。
就目前情况而言,有人认为 OSAID 并没能实现其希望保障的四项基本自由。例如 Julia Ferraioli 就评论称,如果不包含数据,那么 OSAID 所能约束的就只剩下使用和分发 AI 系统的能力。“开源参与者可以通过迁移学习和微调等方法在此基础之上进行构建,但也就仅此而已。”
Tom Callaway 也在 LinkedIn 上详细阐述了为什么应当将数据开放纳入标准要求。他承认,出于种种相当充分的理由,AI 系统的发行商可能不愿意或者无法发布训练数据。例如,数据本身可能具有很高的货币价值,而供应商可能不愿或者无法进行共享。Acme Corp 可能会授权某些数据集,允许开发者利用其创建 AI 系统,但却不允许开发者对数据本体进行发布。另外数据发布还可能造成法律问题,例如涉及机密性(如医疗数据集)或者避免因泄露受版权保护的数据而面临诉讼。
他强调,上述情况让不发布 AI 系统的训练数据有了合理的理由,但同时也破坏了将 AI 系统划为“开放”性质的现实意义:
如果我们在开源 AI 定义中保留不公布数据这样一个缺口,无疑会损害“开源”这个定义的基本立场。虽然很多企业都希望能够收紧开源的约束范围,但我认为我们在这方面绝不能够妥协,哪怕这在起步阶段会影响到符合开源定义的 AI 系统数量。
对于不开放训练数据的抨击不止是在维护开源定义的纯洁性。Giacomo Tesio 发布了 OSAID RC2 版本中待讨论问题的列表,其中就包括由于在机器学习模型中植入无法检测到的后门,进而引发的固有安全风险问题。
自由软件基金会(FSF)宣布正在制定“自由机器学习应用程序的标准声明”,希望借此办公室一款应用程序到底算不算是自由机器学习应用程序。该基金会表示,目前标准草案已经基本完成,正在对具体文本进行调整和修订。FSF 方面补充称,“我们认为,除非所有训练数据和处理这些数据的相关脚本都尊重全体用户并遵循四大自由原则,否则我们就不能认为某款机器学习应用程序是「自由」的。”
然而,该基金会也对非自由和不道德问题做出进一步细分:
某些非自由机器学习系统可能出于正当的道德理由而不发布训练数据,例如个人医疗数据。在这种情况下,我们仍会将整体应用程序称为非自由。但是,只要它能帮助用户完成对社会至关重要的专业工作,例如诊断疾病或者伤痛,那么在道德上就具备合理性。
软件自由保护协会则公布了一份关于大语言模型支持的生成式编程 AI 的“理想声明”,名为“尊重用户自由的机器学习辅助编程”。与 OSAID 不同,其目标仅关注计算机辅助编程领域,专门针对 GitHub Copilot 开发而来。该声明没有直接提及 OSI 或者 OSAID 项目,仅表示“我们回避了任何自动将那些存在问题、但已经得到广泛部署的商业专有产品认可为自由项目的实践方案”。这份声明描述了一种理想的大语言模型系统,该系统仅使用自由开源软件(FOSS)构建、所有组件均对外开放,且可用于创建自由开源软件。
众说纷纭之下,有外媒向 Maffulli 发出一封问询邮件,询问他对于当前 OSAID 草案的批评声音有何看法,并质疑向来坚守源代码可用性和使用限制条款的 OSI 这次为什么似乎打算“降低标准”。他的回复是:
直言不讳地讲:您在问题中提到了“源代码重新分发”,这也是令 Callway 等批评人士陷入思维陷阱的核心所在……
有些团队认为需要更多组件来保证开源 AI 的高透明度,也有一些人认为模型参数和架构就足以定义 AI。开源 AI 的定义由全球各利益相关方公开参与制定,他们在构建 AI 方面拥有深厚的专业知识,也意识到虽然各种方法各有合理性,但都达不到理想要求。OSAID 希望授权用户权利(以许可证的形式)和工具(以所需组件列表的形式),帮助他们以符合现实意义的方式参与 AI 系统的协作和创新(必要时亦可分叉)。我们并没有在原则上作出妥协,只是一路以来从真正的 AI 专家那里学到了很多新东西。
Maffulli 反对 OSAID 变得软弱或者做出了让步的说法,并表示 OSAID 最核心的诉求在于修改机器学习系统的首选形式:“这不是我个人或者 OSI 董事会的决定,而是支持者们以及卡耐基梅隆大学的意见。”他补充称,OSI 综合了“来自世界各地的 AI 构建者、用户和部署者、内容创建者、工会、伦理学家、律师以及软件开发人员”的意见,并最终得出了这一定义。他同时强调,对过往开源定义进行“简单翻译”在 AI 领域根本行不通。
RedMonk 分析公司创始人 Stephen O’Grady 也认为,原有开源定义在 AI 项目当中很难直接转化。但他的观点恰恰相反,认为开源一词“不一定能或者说不应该扩展到 AI 领域”。他在 10 月 22 日发表的博文中解释道:
从本质上讲,目前围绕 AI 开源定义展开的讨论,就是在强行把一个二十多年前诞生的术语拖进 AI 时代,用以描述一种狭义资产,而不是真正涵盖一种全新的、更为复杂的未来工件集合。
在 O’Grady 看来,OSI 已经走上了一条更加务实的开源 AI 定义之路,其中的种种细节都需要认真对待。开源之所以能够取得成功,部分原因就在于开源定义消除了这些细微差别。一份许可证到底符不符合开源定义?这个问题可以有明确的答案。但 OSAID 则没那么简单或者明确。他眼中务实的道路:
应当涉及实质性的妥协,更重要的就是必须做出具体解释才能实践落地。但正如古老的政治谚语所说,“如果你的话需要解释,那你已经输了。”
在他看来,如果 OSI 放弃“改变和重塑几十年前的陈旧定义”,转而从头开始创造新的标准,情况可能会更好。他表示通过过去两年间“在理想主义和功利主义之间反复摇摆,尝试得出一个既具备意识形态合理性、又具备商业运作可行性的定义”之后,人们终于发现这似乎是个无解的问题。
事实上,OSI 董事会很可能会继续推进 OSAID 这份现有草案、或者其他类似的修订版本,而最终将对开源 AI 产生何种影响也只有时间能够给出答案。
关于“开源”定义是否能扩展到 AI 领域的问题,目前尚无确切结论,但围绕 AI 大模型是否真正符合“开源”标准的讨论一直未曾停歇。
尽管有声音声称某些 AI 大模型为开源,但实际上,这些模型所附带的许可证条款往往与开放源代码促进会(OSI)在《开放源代码定义》中规定的标准存在出入。以 Llama 3 为例,其许可证中包含的诉讼和品牌条款等多个方面均未达到 OSI 的要求。
令人遗憾的是,Meta 并非孤例,多家公司都曾声称其部分软件和模型为开源,然而实际上却并未真正做到开放。这种现象被称为“开放清洗”,是一种欺骗性的营销策略。在此策略下,公司或组织会将其产品、服务或流程标榜为“开放”,但实际上并未遵循透明、信息获取、参与和知识共享的真正开放精神。这一术语是由互联网和气候政策学者米歇尔·索恩于 2009 年创造的,旨在类比“漂绿”(greenwashing)现象,即企业通过虚假宣传来掩盖其不环保的实质。
随着人工智能的蓬勃发展,“开放清洗”现象已变得愈发普遍,这得到了最近一项研究的佐证。拉德堡德大学语言研究中心的 Andreas Liesenfeld 和 Mark Dingemanse 对 45 个声称开放的文本和文本到图像模型进行了调查。他们发现,尽管少数不太知名的大模型(如 AllenAI 的 OLMo 和 BigScience Workshop + HuggingFace 的 BloomZ)符合开放的标准,但大多数知名模型并非如此,其中包括谷歌、Meta 和微软的大模型。这一结果或许并不令人意外。
也这并不是说所有知名的人工智能公司都在撒谎。例如,IBM 的 Granite 3.0 LLM 确实是在 Apache 2 许可下开源的。
那么,为何公司会采取开放清洗的做法呢?在过去,公司曾对开源持避之不及的态度。例如,史蒂夫·鲍尔默在 2001 年曾将 Linux 比作“癌症”,原因是使用开源软件可能会引发许可证问题,要求公司将其他软件也开源。然而,时至今日,开源已被视为一种积极的因素。
“开放清洗”使得公司能够利用人们对开源和开放实践的正面看法,而无需做出真正的承诺。也就是动动嘴皮子就能提升公司的公众形象,并吸引那些重视透明度和开放性的消费者。
此外,一些公司还利用“开放清洗”来保护他们的模型和实践免受科学和监管的审查,同时从“开放”标签中获益。另一个重要因素是,欧盟的人工智能法案为“开源”模型提供了特殊豁免。这为公司提供了强大的激励,使他们的模型被认定为开源,从而面临更少的限制要求。这意味着他们需要更少的资金来满足监管要求,或者必须处理其数据集中的版权和其他知识产权问题。
参考链接:
https://lwn.net/SubscriberLink/995159/a37fb9817a00ebcb/
https://www.technologyreview.com/2024/08/22/1097224/we-finally-have-a-definition-for-open-source-ai/
文章来自于微信公众号“InfoQ”
【开源免费】DeepBI是一款AI原生的数据分析平台。DeepBI充分利用大语言模型的能力来探索、查询、可视化和共享来自任何数据源的数据。用户可以使用DeepBI洞察数据并做出数据驱动的决策。
项目地址:https://github.com/DeepInsight-AI/DeepBI?tab=readme-ov-file
本地安装:https://www.deepbi.com/
【开源免费】airda(Air Data Agent)是面向数据分析的AI智能体,能够理解数据开发和数据分析需求、根据用户需要让数据可视化。
项目地址:https://github.com/hitsz-ids/airda
【开源免费】XTuner 是一个高效、灵活、全能的轻量化大模型微调工具库。它帮助开发者提供一个简单易用的平台,可以对大语言模型(LLM)和多模态图文模型(VLM)进行预训练和轻量级微调。XTuner 支持多种微调算法,如 QLoRA、LoRA 和全量参数微调。
项目地址:https://github.com/InternLM/xtuner