JetBrains推出其首个用于编码的开源模型Mellum,主要功能为代码补全

大语言模型3个月前发布 小马良
88 0

软件开发公司JetBrains,以提供一系列流行应用程序开发工具而闻名,它们在今天发布了其首个用于编码的开源模型——Mellum。这款模型于周三在Hugging Face平台上公开,通过高度专业化的代码生成能力推动开发者工具和研究的进步。

Mellum的核心特点

Mellum 是一个拥有 40亿参数 的多语言代码生成模型,训练数据量超过 4万亿个tokens。每个token代表模型处理的基本单位,一百万个tokens相当于约3万行代码。这意味着 Mellum 在庞大的代码数据集上进行了深度学习,能够理解并生成多种编程语言的代码片段。

支持的语言

Mellum 支持以下主流编程语言:

  • Java、Kotlin、Python、Go、PHP
  • C、C++、C#、JavaScript、TypeScript
  • CSS、HTML、Rust、Ruby

专为代码补全设计

Mellum 的主要功能是 代码补全,即根据上下文自动补全代码片段。这种能力特别适合集成到现代集成开发环境(IDE)中,例如 JetBrains 自家的 IntelliJ IDEA 或 PyCharm,作为智能代码建议工具。此外,它还适用于教育应用和微调实验。

JetBrains 表示,Mellum 的设计理念是“焦点模型”,即专注于特定任务而非追求通用性。与大型通用模型相比,Mellum 更加高效、轻量化,并且运行成本更低。

开源背后的意义

Mellum 并非简单的现有模型微调版本,而是从零开始训练的全新模型。JetBrains 选择将其开源,旨在推动技术社区的协作与创新。

为什么开源?

JetBrains 在博客文章中详细解释了这一决定背后的思考:

  1. 透明性与信任:开源使研究人员和开发者能够深入了解模型的工作原理,增强对其输出的信任。
  2. 推动协作与进步:像 Linux 和 Git 等开源项目曾推动技术领域的巨大飞跃,JetBrains 认为 AI 领域的发展也可能遵循类似轨迹。
  3. 降低门槛:Mellum 的轻量化设计使其更容易被小型团队、教育机构和研究人员使用,而无需昂贵的计算资源。

适用人群

虽然普通开发者可能不会直接微调或部署 Mellum,但它对以下群体尤其有价值:

  • AI/ML 研究人员:探索 AI 在软件开发中的作用或进行模型可解释性研究。
  • 教育工作者:作为教学工具,帮助学生理解如何构建和调整领域专用语言模型。
  • 高级开发团队:用于研究实验或定制化工具开发。

焦点模型的理念

JetBrains 强调 Mellum 是一款“焦点模型”,即专注于解决特定任务而非追求通用性。这种设计理念类似于 T 型技能:

  • 水平顶栏:广度覆盖多个主题。
  • 垂直主干:在某一领域具备深厚的专业知识。

焦点模型的优势包括:

  • 精确性:针对特定任务的高度优化。
  • 成本效益:运行和部署的成本更低。
  • 环保性:计算需求和碳足迹显著减少。
  • 易用性:更适合研究人员、教育者和小型团队。

JetBrains 认为,这种方法不仅更高效,而且更符合实际需求。并非所有问题都需要通用解决方案,也不是每个团队都有资源运行大规模模型。

性能评估

JetBrains 对 Mellum 进行了广泛的基准测试和人工评估,尤其是在其自家 IDE 中的实际表现。尽管 Mellum 的规模较小,但其在代码补全任务上的表现与一些更大规模的模型相当。具体性能数据可在 Hugging Face 的模型卡上找到。

JetBrains推出其首个用于编码的开源模型Mellum,主要功能为代码补全

需要注意的是,Mellum 并非即插即用的解决方案。基础模型需要经过微调才能适应特定任务。目前,JetBrains 已提供了针对 Python 微调的 Mellum 版本,但这些模型仅用于展示潜在能力,尚未适合生产环境。

安全与局限性

JetBrains 坦言,Mellum 的代码建议可能反映公共代码库中存在的偏见,例如生成风格类似于开源存储库的代码。此外,其建议不一定总是安全或无漏洞的。这反映了 AI 生成代码带来的新挑战。

根据开发者安全平台 Synk 的调查,超过 50% 的组织在使用 AI 生成代码时遇到了安全问题。因此,JetBrains 提醒用户在使用 Mellum 时需保持警惕,并采取必要的验证措施。

未来展望

Mellum 只是 JetBrains 计划中的代码专用模型家族中的第一个。该公司表示,未来将扩展焦点模型的应用范围,涵盖更多任务,例如:

  • 差异预测:自动识别代码变更的影响。
  • 代码重构:优化现有代码结构。
  • 错误检测:发现潜在的代码缺陷。

JetBrains 将其视为一次长期的技术探索:“如果 Mellum 能引发哪怕一个有意义的实验、贡献或合作,我们都会认为这是一个胜利。”

© 版权声明

相关文章

暂无评论

none
暂无评论...