谈及螳螂虾,人们首先想到的便是它那两记威力惊人的攻击。这种小型海洋生物能以超越子弹的速度挥动其“鼓槌”,不仅能击碎蟹壳、震裂水族箱玻璃,甚至能在水中瞬间产生接近恒星内部的高温。然而,真正令科学家们惊叹的并非其力量,而是它攻击时展现的一系列极为精密、近乎完美的物理机制——堪称自然界最精巧的“微型大炮”。

美国加利福尼亚州圣克拉拉 – 太平洋时间2024年2月28日 – ServiceNow(NYSE:NOW)、Hugging Face与NVIDIA今日联合宣布推出StarCoder2——一款全新的开放获取大语言模型系列,专为代码生成而设计。该系列的发布,有望在性能、透明度及成本效益方面树立全新标准。
StarCoder2由名为BigCode的社区开发,该社区由ServiceNow与Hugging Face共同管理。ServiceNow作为领先的数字工作流平台,致力于为全球用户创造更优质的工作环境;而Hugging Face则是机器学习社区广泛采用的开源平台,开发者在此围绕模型、数据集及应用展开深入合作。
该模型在619种编程语言上完成训练,并可进一步微调,集成至企业级应用中,执行应用源代码生成、工作流生成、文本摘要等特定任务。对开发者而言,StarCoder2提供的代码补全、高级代码摘要、代码片段检索等功能,能够有效加速创新进程,提升工作效率。
StarCoder2提供三个不同规模的版本:ServiceNow训练的30亿参数模型、Hugging Face训练的70亿参数模型,以及NVIDIA采用NeMo框架并在其加速基础设施上训练的150亿参数模型。较小规模的模型因参数数量较少,推理时所需计算资源更少,从而在保持强大性能的同时大幅降低成本。值得注意的是,全新的30亿参数模型在性能上已可与原版StarCoder的150亿参数模型相媲美。
ServiceNow的StarCoder2开发团队负责人、BigCode联合负责人Harm de Vries表示:“StarCoder2证明了开放式科学协作、负责任的AI实践与道德数据供应链相结合所带来的巨大潜力。这一极为先进的开放获取模型,将显著提升生成式AI的性能与开发者生产力,为更多人提供平等机会,享受代码生成式AI带来的红利。这意味着,任何规模的企业都能更轻松地释放其全部业务潜力。”
Hugging Face的机器学习工程师、BigCode另一位联合负责人Leandro von Werra补充道:“在Hugging Face、ServiceNow与NVIDIA的共同努力下,这套功能强大的基础模型终于问世。在数据和训练过程完全透明的前提下,社区能够更高效地构建各类应用。StarCoder2用事实证明了开源与开放式科学的潜力,我们正在将负责任AI的全民化付诸实践。”
NVIDIA应用研究副总裁Jonathan Cohen表示:“每个软件生态系统都有其专属编程语言,而代码LLM恰恰能在这些领域推动效率与创新的重大突破。NVIDIA与ServiceNow、Hugging Face的合作,带来了兼具安全性与责任感的模型,让更多人能够拥抱负责任的生成式AI。我们相信,这将使全球开发者社区受益。”
StarCoder2模型:为定制化应用开发注入新动力
StarCoder2系列模型均采用BigCode社区先进的架构设计,并结合了经过精心筛选的数据源。为实现负责任的大规模创新,数据源的透明度与开放的治理被置于首位。
StarCoder2重新定义了未来AI驱动的编码应用场景,涵盖文本到代码、文本到工作流等多种转换能力。由于在更广泛的编程语言上进行了深入训练,它能够理解代码库的上下文,从而做出准确的上下文感知预测。无论是经验丰富的软件工程师,还是业余开发者,都能借助这些进步提升业务价值、加速数字化转型。
StarCoder2的基础是名为Stack v2的全新代码数据集,其规模比上一代Stack v1扩大7倍以上。除数据集升级外,新的训练技术还使模型能够更好地理解低资源编程语言(如COBOL)、数学内容以及与程序源代码相关的讨论。
用业务数据微调,打造专属功能
用户可借助NVIDIA NeMo、Hugging Face TRL等开源工具,利用自身行业或组织特有的数据,对开放获取的StarCoder2模型进行微调。从而创建能处理更复杂摘要或分类任务的高级聊天机器人、开发能快速完成编程任务的个性化编码助手、精准检索相关代码片段,甚至实现文本到工作流的转换。
事实上,许多企业已开始对StarCoder基础模型进行微调,以创建适配自身业务的特定功能。
ServiceNow的文本到代码模型Now LLM便是一个典型例子,它基于150亿参数的StarCoder LLM专用版本构建,并针对其特有的工作流模式、用例和流程进行了专门微调与训练。Hugging Face也利用该模型创建了自己的StarChat助手。
BigCode社区:推动AI领域的开放式科学协作
BigCode是一个由Hugging Face与ServiceNow共同领导的开放式科学协作社区,致力于负责任的代码LLM开发。
BigCode社区以工作组和特别任务组的形式,积极参与了StarCoder2项目的各项技术工作。具体而言,他们分别采用ServiceNow的Fast LLM框架训练30亿参数模型、Hugging Face的nanotron框架训练70亿参数模型,以及NVIDIA NeMo云原生框架与NVIDIA TensorRT-LLM软件训练和优化150亿参数模型。
BigCode的核心宗旨是促进负责任的创新。这一点体现在其开放的治理、透明的供应链、对开源软件的使用,以及允许开发者选择不让其数据用于训练等做法上。StarCoder2是在获得Inria托管的Software Heritage数字共享许可下,使用负责任的数据构建而成。
Software Heritage总监Roberto Di Cosmo评论道:“StarCoder2是首个使用Software Heritage源代码存档开发的代码生成式AI模型,其构建方式完全符合我们负责任开发代码模型的政策。ServiceNow、Hugging Face与NVIDIA的这一合作,体现了对道德AI开发的共同承诺,正引领技术朝着更崇高的方向发展。”
StarCoder2与其前代一样,将在BigCode Open RAIL-M许可下免费提供访问和使用。为进一步促进透明度和协作,该模型的支持代码将继续保留在BigCode项目的GitHub页面上。
所有StarCoder2模型均可从Hugging Face下载。此外,StarCoder2 150亿参数版已通过NVIDIA AI Foundation模型提供,开发者可直接在浏览器中或通过API端点进行试用。
获取关于StarCoder2的更多信息,请访问:https://huggingface.co/bigcode。
