基于 AI 的代码生成器受到开发人员的广泛关注。尽管大多数此类工具远非完美,例如亚马逊的CodeWhisperer和GitHub Copilot,但对其替代品的需求与日俱增。幸运的是,Hugging Face 与 Service Now 和 Nvidia 合作,通过其最新版本的 StarCoder 来拯救世界,StarCoder 是一个开源代码生成器,现代 GPU 运行起来没有问题。这是您需要了解的所有信息。
什么是 StarCoder 2
Starcoder 2 首先由 AI 初创公司 Hugging Face 开发,是一系列用于代码的大型语言模型,具有以下三种变体:
- StarCoder2-3B 模型(具有 30 亿个参数)由 Service Now 训练。
- StarCoder2-7B模型(70亿个参数)由Hugging Face训练。
- 由 Nvidia 训练的 StarCoder2-15B 模型(具有 150 亿个参数)。
这三个模型都是在 The Stack V2 上训练的,这是一个新的代码数据集,比第一次迭代大七倍,具有先进的技术来理解编程语言和围绕程序源代码的讨论。
但是,只有前两个变体能够在大多数现代消费类 GPU 上运行。造成这种情况的部分原因可能是他们都接受了 17 种编程语言的训练,而 Starcoder2-15B 接受了 600+ 种编程语言的训练(由 Nvidia 提供)。
然而,即使是最小的模型(由Service Now训练)也与上一次迭代的最佳模型一样好,甚至更好。
StarCoder 2 与其他 AI 代码生成器相比如何
与大多数 AI 代码生成器一样,StarCoder 2 将提供建议以完成代码行,总结代码位,并在提示时将它们拉出。据报道,它的效率也更高,并且在性能方面也比其他代码生成器更具优势。
此外,据说 StarCoder 2 在本地部署之前不超过几个小时,可以学习开发人员的源代码,并可用于创建应用程序和聊天机器人。它也被认为是比其他一些更合乎道德的人工智能代码生成器,主要是因为它是在软件遗产许可的数据上训练的。
需要注意的一个重要警告是,StarCoder 2 的许可证 BigCode Open RAIL-M 1.0 可能会给开发人员带来一系列挑战,因为它不允许完全开放地自由使用代码生成器。已经实施了某些限制,以确保遵守法律法规,例如欧盟人工智能法案。