在推出专为文本形成、语言解释和音频创作而设计的人工智能算法之后,Meta 现在开源了另一个名为 Code Llama 的重要模型。 Code Llama 是一种尖端的机器学习系统,能够用简单的英语生成和详细说明代码。
Meta 的这一新开发与 GitHub Copilot、Amazon CodeWhisperer 等其他人工智能代码生成解决方案以及 StarCoder、StableCode 和 PolyCoder 等著名开源工具一致。 Code Llama 拥有跨多种编程语言(包括 Python、C++、Java、PHP、Typescript、C# 和 Bash)完成现有代码并对其进行故障排除的能力。
Meta利用开放的方法,通过人工智能模型,特别是特定于编码的大型语言模型,宣示其对创新和安全的承诺。通过免费提供 Code Llama,该公司打算丰富技术进步,改善人们的生活,并鼓励社区参与评估能力、识别问题和修复漏洞。
Code Llama 有多种变体,包括针对 Python 的优化版本和用于理解指令的微调版本(例如,“创建一个生成斐波那契数列的函数”)。 Code Llama 的基础是 Llama 2,Meta 的文本生成模型,较早开源。尽管 Llama 2 能够生成代码,但与 Copilot 等专用模型相比,其质量往往较差且相形见绌。
在 Code Llama 的训练阶段,Meta 使用了适用于 Llama 2 的相同数据集,有选择地从互联网上的公共门户获取;然而,处理代码的训练数据领域被优先考虑,使 Code Llama 能够更密切地了解代码和自然语言之间的相关性
Code Llama 模型的参数大小从 70 亿到 340 亿不等,使用 5000 亿个代码和相关数据进行训练。 Python 特定的 Code Llama 使用额外的 1000 亿个 Python 代码进行了精心校准,而理解指令的版本则根据人工注释的反馈进行了微调,以制定对查询的“有用”和“安全”响应。
多个 Code Llama 模型能够将代码集成到现有代码中,并可接受最多 100,000 个代码标记作为输入。 Meta 声称,340 亿个参数模型在功能方面领先于任何其他开源代码生成器,而且它也是参数数量最多的。
虽然 Meta 确实警告 Code Llama 可能偶尔会对提示产生“错误”或“不合适”的响应,但它也建议开发人员在部署该模型的任何应用程序之前进行量身定制的安全测试和调整。
在Code Llama的部署中,Meta并没有对开发者施加严格的限制,无论他们希望将其用于商业还是研究目的。然而,开发人员应遵守道德标准,并停止利用该模型进行有害的追求。如果该模型部署在每月活跃用户超过 7 亿的平台上,则必须寻求许可证。
Code Llama 旨在帮助所有领域的软件工程师,包括研究、工业、开源项目、非政府组织和企业等,除了其基础和指令模型当前涵盖的范围之外,还有更多使用场景的空间。希望 Code Llama 能够激励其他人利用 Llama 2 为研究和商业产品创建创新工具。就像AppMaster增强应用程序开发的愿景一样,Code Llama 代表了编码发展的下一步。
人们无法否认这些进步可能对科技行业产生的影响, AppMaster等其他平台在使应用程序创建变得更容易方面做出了重大贡献。然而,在道德和责任框架内确立人工智能的作用也至关重要,以确保安全有效地使用此类技术。