撰稿丨诺亚
出品 | 51CTO技术栈(微信号:blog51cto)
兵贵神速。在大模型的必争之地,谷歌却总是慢人一步,因而屡屡被调侃“起了大早,赶个晚集”。但昨日,谷歌却突放大招,发布了一款开放模型——Gemma,并声称其是轻量级中“最先进的”开放模型系列,超越了原本最强的Mistral 7B。
这款以拉丁语“宝石”命名的模型在此时推出颇有意味。其一,据谷歌官网介绍,Gemma采用了与创建Gemini模型相同的研究和技术。但相较封闭的Gemini,Gemma的开放无疑会吸引更多人;其二,此前早有消息传出,Meta可能于近期发布其Llama开源模型系列的最新版本,谷歌先声夺人,有了攻守易形的味道。
那么Gemma到底表现如何?其“开放”又开放到何种程度?对于开源大模型的未来发展又会产生哪些影响?我们逐一道来。
1、Gemma出世:从个人PC到谷歌云,皆可运行
目前,Gemma开放模型分为两个版本大小,分别为“Gemma 2B”和“Gemma 7B”,即20亿参数和70亿参数,以满足开发人员的不同需求。两个版本均提供预训练模型及指令调优变体。
用户现在即可通过Kaggle、Colab和谷歌云访问,还可以选择Hugging Face Transformers等多个框架对Gemma进行推理和微调。
此外,首次使用谷歌云的用户可以获得300美元的信用额度。研究人员还可以申请高达50万美元的谷歌云信用额度,以加速他们的项目进度。
那么,Gemma模型是否可以像开源模型Llama2、Mistral等那样本地下载并运行呢?对于这一疑问,开发团队成员也给出了肯定的回答。
“除了支持Python神经网络框架和ggml作为选项外,我们还提供了一个独立的C++实现版本,您可以在https://github.com/google/gemma.cpp 下载并在本地运行。”
为更好地支持开发者创新,谷歌同时提供了与模型配套的“负责任生成式AI工具包”。该工具包包含关键工具,用于指导和支持开发者利用Gemma构建更安全的人工智能应用。
根据谷歌官方的博客,另外一些值得关注的关键细节包括:
- Gemma通过原生Keras 3.0,在所有主要框架(JAX、PyTorch 和 TensorFlow)中提供用于推理和监督微调 (SFT) 的工具链。
- 此次发布还包括即用型的Colab和Kaggle笔记本,以及与Hugging Face、MaxText、NVIDIA NeMo、TensorRT-LLM等流行工具的集成。
- 经过预训练和指令优化的 Gemma 模型能够在各种平台上运行,从笔记本电脑、工作站到谷歌云,还可以轻松部署在Vertex AI和Google Kubernetes Engine(GKE)上。
- 针对NVIDIA GPU和Google Cloud TPU进行了优化,以便实现行业领先的性能表现。
- 使用条款允许所有组织(无论规模大小)进行负责任的商业使用和分发。
整体来看,Gemma的发布节奏紧随Gemini 1.5。后者的上下文窗口容量扩展至100万个tokens。短短一周,Gemini Ultra 1.0、Gemini 1.5 Pro、Gemma次第登场,如此快速的发布周期,不禁让人对谷歌的技术进步速度和产品策略更为关注。
2、多项性能基准测试:超越Llama2,捶打Mistral 7B
谷歌号称Gemma具备“同等规模下最领先的性能”,甚至“Gemma 在关键基准上明显超越了更大的模型”。这一说法的根据在于,Gemma在多个基准测试中超越了Llama 2。
图源:谷歌博客
如上图所示,包括MMLU、HellaSwag以及HumanEval等在内的重要评估标准上,Gemma都取得了比Llama 2更优秀的成绩。
深度学习框架Keras的作者、谷歌人工智能研究员François Chollet 在X上贴出了更详细的对比图。
图源:https://twitter.com/fchollet
以MMLU(大规模多任务语言理解)为例,如图所示,Gemma 7B的表现不仅超越了Llama 7B、Llama 13B,还打败了当红炸子鸡Mistral 7B。
此外,在专门的技术报告里,Gemma 7B在与同等规模开放模型的语言理解和生成性能比较中,谷歌针对不同能力进行了评估。通过将标准学术基准测试按照各自的能力类别,分为问答、推理、数学/科学、编码四组,并计算了相应得分的平均值。
图源:谷歌技术报告
可以看到,在数学/科学、编码这两组,Gemma 7B优势较为明显;在推理方面,Gemma 7B险胜;在问答方面,Gemma 7B则略逊于Llama 13B。
谷歌官方博文将Gemma在性能方面的出色在表现归因于:“Gemma 模型与 Gemini 共享技术和基础设施组件,Gemini 是我们目前广泛使用的最大、功能最强大的 AI 模型。与其他开放式型号相比,这使得 Gemma 2B 和 7B 能够在其尺寸上实现一流的性能。Gemma 能够直接在开发人员笔记本电脑或台式计算机上运行。值得注意的是,Gemma 在关键基准上明显超越了更大的模型,同时遵守我们对安全和负责任输出的严格标准。”
3、“开放模型”:开源,又不完全开源
Gemma的发布引起了不少讨论。开发者们普遍关注到了这样一个问题:Gemma作为一个开放模型,似乎并未采用真正意义上的“开源”许可。
“尽管被称为‘开源’,但Gemma模型的权重实际上是根据一个与开源定义不相符的许可协议发布的。它与源代码可用软件有更多的共同点,因此应当将其称为“权重可用模型”。这意味着用户可以访问和使用模型的权重文件,但可能受到限制,并不符合传统开源许可下的自由分发和修改原则。”
那么这类开放模型的“开放”指的到底是什么,又开放到什么程度?
众所周知,Mistral模型的权重是根据Apache 2.0许可协议发布的,这意味着它们遵循开源原则。但Meta领衔的Llama 2模型的权重则是通过一个专有许可发布,该许可采用了非常有针对性的授权:如果月活用户数超过 7 亿,企业必须从 Meta 申请许可证,而 Meta 会对此类授权进行严格设限,这也就意味着亚马逊、苹果、谷歌、字节跳动等大公司是受限的。
有Llama 2的前车之鉴,因此不少人质疑Gemma的开放性。而谷歌在这方面的措辞是:“使用条款允许所有组织(无论规模大小)进行负责任的商业使用和分发。”
有人猜测:这是谷歌为了避免重蹈覆辙,受到Llama 2许可中类似这种局限性条款的影响而采取的谨慎做法。
显而易见的是,AI领域内对于“开放性”的理解和实践存在显著分歧。部分项目虽然标榜“开源”,但实际上却对使用者施加了特定的限制。这种做法可能出于知识产权保护、市场竞争策略以及避免技术滥用等方面的考量,但也引发了关于如何定义和实施真正开放共享的讨论。
有意思的是,谷歌在发布Gemma的同时,于其开源博客发布了一篇题为《在Gemini时代负责任地构建开放模型》的文章。文中提到,开源许可证赋予了用户完全的创作自主权。这是开发人员和最终用户获得技术的有力保证。但是在恶意行为者手中,缺乏限制可能会增加风险。
在这样的背景下,“真正的开放性和透明度,特别是涉及训练代码、数据集以及不受限制地访问和使用模型资源等方面,仍是当前AI社区需要努力实现的目标”。
谷歌将Gemma 模型作为“开放模型”发布,意味着什么呢?“开放模型可以免费访问模型权重,但使用条款、重新分发和变体所有权因模型的特定使用条款而异,这些条款可能不基于开源许可证。”
“Gemma 模型的使用条款使其免费提供给个人开发人员、研究人员和商业用户访问和重新分发。用户还可以自由创建和发布模型变体。在使用 Gemma 模型时,开发人员同意避免有害使用,这反映了我们致力于负责任地开发 AI,同时增加对这项技术的访问。”
谷歌表示,“开源”的定义对于计算和创新来说是无价的。然而,现有的开源概念并不总是直接应用于人工智能系统,这引发了如何将开源许可证与人工智能一起使用的问题。“重要的是,我们要发扬开放原则,这些原则使我们在人工智能方面所经历的巨变成为可能,同时澄清了开源人工智能的概念,并解决了衍生作品和作者归属等概念。”
参考链接:
https://blog.google/technology/developers/gemma-open-models/
https://storage.googleapis.com/deepmind-media/gemma/gemma-report.pdf
https://news.ycombinator.com/item?id=39453271
https://opensource.googleblog.com/2024/02/building-open-models-responsibly-gemini-era.html