日期 2023/02/14
今天
华为云智能编程助手CodeArts Snap
正式线上开放邀测
数字时代竞争激烈,应用研发效率提升在企业竞争力构建中扮演着重要角色。2022年Gartner选出12大战略性技术中最强的AI技术之一“生成式AI”,其巨大的商业潜力引起科技市场普遍关注,涌现出一批以智能化代码生成为核心的提高开发者编程效率的AI产品。
AI辅助编程工具对减轻研发人员工作压力、降低企业研发投入成本、提高编程效率都有着重要价值。但与此同时,由于生成的内容难以限制,一些“不安全”或者“不应该”出现在生成结果中的代码会出现在生成结果中,导致市场上各AI辅助编程工具质量不一,部分厂商的AI辅助编程工具所生成的代码40%左右存在网络安全缺陷,出现隐私泄漏、开源风险等问题。
自主创新的AI代码辅助编程工具-华为云CodeArts Snap
作为一款自主创新的AI代码辅助编程工具,华为云智能编程助手CodeArts Snap目标打造现代化开发新范式。通过将自然语言转化为规范可阅读、无开源漏洞的安全编程语言,提升开发者编程效率,助力企业快速响应市场需求。下面用3分钟向大家揭晓华为云CodeArts Snap强在哪里。
规避开源风险 | 杜绝业界普遍存在的编程安全隐患
华为云CodeArts Snap在各阶段均采取了针对性措施,有效规避了业界产品普遍带来的编程安全隐患。例如为避免开源代码带来的系统性风险,在数据预处理阶段,预训练数据对可能产生问题的licence涉及的代码进行了精细的过滤,从根本上杜绝开源licence风险,并会尽可能的从多种渠道获取可用的开源数据(如Gitee等)。
支持多种场景 | 带你感知代码智能生成的全场景化
华为云CodeArts Snap不仅熟悉常见算法,并且能熟练地使用各种API及其它工具;比如能够操作数据库,甚至可以求解高等数学题。华为云CodeArts Snap在形形色色任务中的出彩表现,使得其成为编程人员的得力助手。
场景一. 函数级代码自动生成
可以通过自然语言识别做到函数级的多行代码生成,开发者仅需在定义好的函数签名末尾处敲下“回车键”,CodeArts Snap将生成符合业务逻辑的完整函数代码(如下图)。
函数级代码自动生成
场景二. 承上文语义,展智能风采
CodeArts Snap在已有函数上文的场景下,还可以通过理解上文的语义和逻辑,自动进行行级代码生成(如下图)。
行级代码自动生成
场景三. 从光标乍现处捕捉一次编程灵感
在编程过程中,开发者难免会遇到卡壳、停下来思考。此时CodeArts Snap在光标处会进行行中代码生成推荐,为开发者提供编程灵感。
光标处代码生成推荐
场景四. 让代码生成不止于一个结果方案
每次触发代码生成,CodeArts Snap会提供多个生成结果方案,开发者可以通过快捷键快速翻阅,也可以调取侧边栏对比查看所有候选代码生成推荐结果,并对结果进行选择。
快速翻阅比对候选代码生成结果
同时查看
圈点皆厚重,呈现即亮眼 | 同规模同算力下一次通过率(Pass@1)业界第一
华为云CodeArts Snap的“全场景代码智能生成”能力,其核心技术沉淀于华为云PaaS技术创新lab与华为诺亚方舟实验室联合打造的PanGu-Coder代码大模型中;华为在业界PanGu-Coder技术基础上,对模型方面进行了重点优化调整。
比如,针对函数级的代码生成与补全任务,CodeArts Snap分别发布了参数量为3亿和26亿两个规模可用的生成功能。当给定函数名并用自然语言描述需要实现的功能后,模型即可生成完整的函数功能代码。
对比业界,华为云CodeArts Snap所采用的模型在使用相对更少的训练数据和计算资源的情况下,代码生成一次通过率大幅超越同等规模的模型,甚至可以做到远超参数量规模更大的模型。华为云CodeArts Snap所采用的模型在保障了较强的泛化性能的同时,也大幅降低了研发团队开发成本和缩短产品研发周期,为快速部署应用带来更多的可能性。
附:表1与表2分别给出了CodeArts Snap所采用的模型(PanGu-Coder)在OpenAI Codex发布的Python程序生成评测数据集HumanEval以及谷歌发布的MBPP两个函数级代码生成任务的数据集上的表现:
表1 PanGu-Coder在HumanEval上的一次通过率以及十次通过率
表2 PanGu-Coder在MBPP上的一次通过率以及十次通过率
邀测开放,即刻扫码体验!
华为云CodeArts Snap在华为公司内部上线以来,多个产品线软件研发员工参与内测。目前已对外上线VSCode和JetBrains插件市场,支持Python和Java,支持PyCharm、IntelliJ和VSCode。现进入邀测阶段,感兴趣的小伙伴们快来点击此链接或扫码申请免费体验吧!