代码提交消息自动生成助手 | OPENAIGC开发者大赛高校组AI创新之星奖
添加书签在第二届拯救者杯OPENAIGC开发者大赛中,涌现出一批技术突出、创意卓越的作品。为了让这些优秀项目被更多人看到,我们特意开设了优秀作品报道专栏,旨在展示其独特之处和开发者的精彩故事。
无论您是技术专家还是爱好者,希望能带给您不一样的知识和启发。让我们一起探索AIGC的无限可能,见证科技与创意的完美融合!
创未来AI应用赛-高校组AI创新之星奖
作品名称:代码提交消息自动生成助手
参赛团队:中南大学张左兰林王
作品简介
本产品是一款根据输入的代码变更信息生成提交消息的插件,它可以集成到PyCharm和Visual Studio Code中,简化代码提交流程。该插件能够根据从向量数据库中存储的历史信息和开发者输入的prompt信息借助大模型快速生成符合项目规范的提交消息,帮助开发者节省时间,同时保持提交消息的准确性。
核心技术和创新点
One fits all:大模型基于超大规模的语料库进行训练,这使得它能在多种下游任务中取得不错的效果,本团队希望通过大模型来实现在多种编程语言(Java、Python、C++、C等)下的提交消息生成,做到只需要一个模型就够满足所有类型的提交消息生成。
个性化:不同开发者或者公司可能会需要不同类型的提交消息,本团队想要能同时满足个人和企业个性化的需求。通过检索增强生成技术RAG来结合用户或者企业的提交历史,用该历史信息构建向量数据库,从而使大模型可以检索用户或项目历史,以实现该目标。
易用性:本产品提供推荐和补全两种功能,开发人员可以对所推荐的提交消息进行选择,而不需要手动编写提交消息。同时,类似于代码补全助手,当开发者键入某些消息前缀时,本产品能够做到补全。同时用户感觉不到生成端的存在,既不需要本地部署,也不需要复杂的设置,开箱即用。
支持中文:现在大多数提交消息生成模型都是基于英文数据集,缺乏有关中文的提交消息生成。本产品通过自定义Prompt模板,检索高质量的中文数据,实现中文提交消息的生成。
具体应用
帮助提高代码质量:良好的提交消息可以帮助团队成员更好地理解代码修改的目的和内容,从而提高代码质量和可维护性。
促进团队协作:规范化的提交消息可以促进团队成员之间的相互沟通和协作,减少在后续代码审查和合并之间的冲突和误解。
开源贡献:插件的代码对外贡献,可以帮助更多的开发者提升代码的开发效率,同时吸引更多的开发者参与贡献,开发者也可根据自己的代码编写风格个性化插件。
未来发展
在本项目初期只集中在如何准确地为开发者生成方便可用的commit message。随着插件的广泛应用,将增加额外功能。具体来说,包括代码评审流程的一些自动化工具,如代码质量评估、代码优化等功能。