始智AI wisemodel.cn开源社区

始智AI wisemodel.cn社区将打造成huggingface之外最活跃的中立开放的AI开源社区。欢迎《》以及《》。

2024年4月9日,aiXcoder推出全新自研7B代码大模型,该模型在多个主流评估标准评测集中,与所有同量级开源模型对比效果最佳,彰显出其作为百亿参数天花板级代码大模型的非凡实力。 aiXcoder-7B-Base模型及代码都已经发布到了始智AI wisemodel.cn开源社区平台。

https://wisemodel.cn/organization/aiXcoder(aiXcoder主页)

从评测集综合结果来看,aiXcoder-7B相较于传统的刷题式代码生成,它专门针对企业级软件项目,在真实开发场景下效果出众,这意味着aiXcoder-7B非常适合企业私有化部署。

aiXcoder团队一直致力于利用AI技术推动软件开发的自动化,并专注于智能化工具在企业开发场景的落地。这也是aiXcoder-7B开源模型强调贴近真实开发场景、聚焦企业私有部署服务的原因。

01

代码生成与补全效果达SOTA

真实场景中的编程总需要面对层出不穷的情况,而人工构造的测试集能力有限,可能会遇到规模和多样性有限、难以评估上下文理解能力、难以衡量泛化能力等问题。因此aiXcoder-7B模型选择了不同维度的测评集,全面验证模型实际能力,并指导模型迭代和应用部署。

在多个主流评估标准评测集中,无论是代码生成、代码补全还是跨文件上下文代码生成效果,aiXcoder-7B模型均有极佳表现,甚至超越参数量大5倍的34B代码大模型,已达到当前SOTA水准,堪称最适于实际编程场景的基础模型。

测评效果1:

HumanEvalMBPPMultiPL-E三大主流评测集上的平均得分超过340亿参数的,来自Meta、基于Llama2,开源界最先进的AI编程大模型之作的Codellama

测评效果2:

相对于HumanEval等测评集中的任务,真实开发场景的代码生成需要考虑当前代码的上下文信息。在Santacoder(Ben Allal et al.,2023)提出的考虑上下文补全测评集上,aiXcoder-7B Base版在于StarCoder 2、CodeLlama 7B/13B、DeepSeekCoder 7B等主流同量级开源模型的较量中取得了综合最佳效果。

aiXcoder团队还提出了一个更大的测评代码生成补全数据集(16000多条来自真实开发场景的数据),做了进一步测评,效果更明显。

同时aiXcoder-7B表现出相较于其他代码大模型的一大亮点,倾向于使用较短代码来完成用户指定的任务。

测评效果3:

aiXcoder-7B在更贴近真实开发场景的跨多文件代码补全任务上同样表现极佳,在评测集CrossCodeEval上,aiXcoder-7B一举拿下了同级别模型的最好效果。从测评结果看,aiXcoder-7B在只通过光标上文搜索到的结果作为prompt,同时其他模型拿GroundTruth搜索到的结果作为prompt,前者效果依然强于后者。

在真实开发场景中,aiXcoder-7B模型具有更多优势,展现出独特的科技智能与美学。比如预训练采用32K token的上下文长度,并且推理时可扩展至256K,能覆盖整个开发项目中的绝大部分代码;可准确判断何时需要生成新代码、何时代码逻辑已完整无需补全,直接生成完整的代码块、方法体、控制流程;可以准确地抽取项目级的上下文信息,大大降低大语言模型在预测API时产生的幻觉。

02

易私有化部署、个性化定制

aiXcoder团队表示,帮助更多的开发者减轻工作负担,是他们的愿望。开源7B的项目级代码大模型,主打就是“方便企业开发者使用”。

首先, 易部署。代码数据,都是企业私有的核心知识产权。因此,私有化部署和学习是不可避免的,而且,通常企业的部署资源是又是有限的。aiXcoder-7B Base版只有7B参数规模,十分轻便,易于部署,进而还有成本低、性能好的优点。

第二,易定制。很多企业都有自己的软件开发框架和API的库,与其关联的业务逻辑、代码架构规范都因地制宜,十分个性化。同时,这些内容又都有私密性。必须得让大模型学会这些企业代码资产,通过进行有效个性化训练,才能真正为企业所用。aiXcoder-7B Base版就具有这样易定制的特性。

第三,易组合。aiXcoder团队透露 ,未来提供企业服务时,可以让多个7B模型形成MoE架构,组合成为一套解决方案来完成企业定制化服务。不同的企业,都可以得到符合自身个性化需求的MoE版代码大模型解决方案。

据了解,aiXcoder-7B Base版走开源路线,后续将聚焦B端市场,推出企业版本。通过这种方式,aiXcoder通过持续为企业级用户提供精准、高效、连续的软件开发服务,帮助他们不断提高项目的开发效率和代码质量。

03

aiXcoder模型落地可靠性“闯关”成功

aiXcoder 7B通过“开源+闭源”双循环式的生态布局战略,产业反哺技术,扩大行业领跑优势。企业级专属版本针对企业级客户,通过大量的C端用户、B端开发者,会收集到更多关于通用模型的真实反馈,了解实战效果和存在的痛点,并将这些转化为模型和产品层面的优化点,快速应用到企业客户,持续深化B端产品能力和服务质量,扩大在企业级市场的渗透率。aiXcoder-7B模型具有更快、更准的优势,是其他模型效率的至少2倍,这极大降低了企业的开发成本。

正在进行数智化转型的某行业头部券商就采用了aiXcoder的大模型解决方案,在本地环境私有化部署代码大模型,且采用了模型的灵活调整方式,使智能开发系统与使用团队规模保持同步。这种部署方式既确保了既有算力可支持,避免了因硬件门槛过高而带来的挑战;又能满足企业日常的编码需求。

目前,aiXcoder已服务大量银行、证券、保险、军工、高科技、运营商、能源、交通等行业头部客户,深耕服务金融行业,其中与某头部知名证券企业的“代码大模型在证券行业的应用实践”项目荣获2023AIIA人工智能十大潜力应用案例、中国信通院AI4SE银弹优秀案例等殊荣。同时,aiXcoder也因其极具前瞻性的探索方向、踏踏实实的落地实践,不断受到资本市场的追捧,高瓴、清流、彬复等极具行业引领性的基金纷纷加注aiXcoder,使其迅速成为“AI+软件”赛道上的领军型探索者!

看完了成绩,模型实际效果究竟怎么样?接下来就来几个demo给大家感受一下。

首先,aiXcoder-7B Base版能理解更多、更复杂的代码上下文信息,进行代码生成和补全:模型预训练支持的上下文长度为32k,推理阶段扩展则可达256k。

如下图所示,当我们用多个工具函数拼成了1500多行的代码,在文件末端注释要模型接入时,它可以准确识别到文件顶部的相关函数,结合该函数信息补全相关方法。

其次,在企业开发场景中,更重要的是跨文件分析的能力,它可以从多个代码文件中自动识别并提取所需。

如下图所示,我们需要在树结构上应用动态规划来实现编辑距离搜索,让模型补全树结构上目录节点的动态规划状态类。

模型准确识别到了编辑距离的计算与另一个文件中滚动数组内部取最小值的计算之间的关系,从而结合非当前的两个文件给出了正确的预测结果。

最后,aiXcoder-7B Base版的补全还是相当智能化的。例如当用户的采纳情况发生调整时,它会根据当下的采纳情况自动调整补全长度。

同时,作为一个补全代码专家,它还能根据用户输入的流畅性(即停顿时间)来判断用户当前是否需要补全,并不随意触发功能打断咱的工作状态。

广大程序员们真正需要的,正是aiXcoder这样不仅懂通用代码,还能懂“我们企业”代码的AI编程工具。这样的模型是如何炼成的?

团队介绍,该模型属于全自研,首先是训练数据:一共包括1.2T Unique Tokens,在7B参数级模型中,训练数据量算是非常大的了。不光“量胜”,团队也在这些数据上取得了“质胜”:他们耗费大量时间针对数十种主流语言做了语法分析过滤,以及静态分析排除掉了163种Bug和197种缺陷。

其次是针对性的训练方法,团队专门针对真实环境中的项目级代码进行了代码结构化语义训练,充分保证模型效果。

最后就是在训练过程中一开始就充分考虑了多文件的处理问题,通过结合聚类、代码Calling Graph等方式构建了多文件之间的相互注意力关系。

最终,更适用于真实开发场景的aiXcoder-7B Base版得以诞生。

aiXcoder开源链接:
https://wisemodel.cn/codes/aiXcoder/aiXcoder-7b
https://wisemodel.cn/models/aiXcoder/aiXcoder-7b-base

编辑丨安冉

审核丨赵雅鑫

----- END -----

欢迎加盟

始智AI wisemodel社区自2023年9月上线以来,取得了积极的进展,初步形成一定的影响力,为了加快公司发展,我们长期需要技术、运营等人才加盟,技术侧重在AI infra、后端开发,熟悉K8S、模型训练和推理等技术, 以及熟悉开发者生态运营的成员(根据个人意向可备注“求职”或“创业”),有意加盟的朋友也可以把简历投递到liudaoquan@wisemodel.cn。

wisemodel相关

系统升级

系列模型:

欢迎投稿

欢迎投稿分享人工智能领域相关的优秀研究成果,鼓励高校实验室、大企业研究团队、个人等,在wisemodel平台上分享各类优质内容,可以是AI领域最新论文解读、最新开源成果介绍,也可以是关于AI技术实践、应用和总结等。投稿可以发邮件到liudaoquan@wisemodel.cn,也可以扫码添加wisemodel微信。

持续关注和支持

开源社区建设需要长期坚持和投入,更需要广大用户的积极参与、贡献和维护。期待更多开发者将开源成果发布到 wisemodel.cn 社区,共建中立、开放的AI开源社区生态。欢迎扫码添加wisemodel微信,可以申请加入wisemodel社群,持续关注社区动态。

关于始智AI wisemodel.cn开源社区

始智AI wisemodel.cn开源社区由清华校友总会AI大数据专委会副秘书长刘道全创立,旨在打造和建设中立开放的AI开源创新社区,将努力打造成“HuggingFace”之外最活跃的社区,汇聚主要AI开源模型和数据集等,欢迎高校科研院所、大型互联网公司、创新创业企业、广大个人开发者,以及政府部门、学会协会、联盟、基金会等,还有投资机构、科技媒体等,共同参与建设AI开源创新生态。