DeepCode将使用AI发现软件源代码中的错误

今天是一家瑞士初创公司 深度密码利用人工智能和机器学习实现代码分析自动化的公司宣布已获得风投基金 Earlybird、4VC 和 Btov Partners 的 3 万美元投资。 该公司计划利用这些资金在其服务中引入对新编程语言的支持,以及在全球 IT 市场上营销该产品。

DeepCode将使用AI发现软件源代码中的错误

代码分析对于检测错误、潜在漏洞、格式违规以及在软件开发的早期、代码在任何地方使用之前进行检测是必要的。 通常,此过程与新代码的开发并行进行,并在新代码完成后立即进行,在测试阶段之前进行。 DeepCode 联合创始人兼首席执行官 Boris Paskalev 在接受 VentureBeat 采访时解释道:“软件测试从外部观察代码,而代码分析可以让你从内部观察代码。”

大多数情况下,代码审查是由作者与同事和经理一起执行的,以便在进入下一开发阶段之前识别明显的错误。 而且项目越大,需要检查的代码行就越多,这会占用程序员大量的时间。 应该加速这一过程的工具已经存在很长时间了,例如 Coverity 和 PVS-Studio 等静态代码分析器,但它们的功能往往受到限制,因为它们专注于“烦人且重复的风格问题、格式化和小逻辑错误,”帕斯卡列夫解释道。

反过来,DeepCode 涵盖了更广泛的问题,例如,检测跨站脚本和 SQL 注入机会等漏洞,因为其中嵌入的算法不仅仅将代码分析为一组字符,而是尝试将代码分析为字符集。理解所写程序的工作意义和目的。 其核心是一个机器学习系统,该系统使用来自公开开源项目的数十亿行代码进行训练。 DeepCode 分析代码的先前版本以及随后对其进行的更改,以研究哪些错误以及真正的程序员如何纠正他们的工作,然后向用户提供类似的解决方案。 此外,系统还使用传统的预测算法来发现代码中可能存在的问题,就像上面提到的静态分析器一样。

使用 DeepCode 时的关键问题之一是:自动代码审查的可靠性如何? 分析准确度低于 100% 意味着开发人员仍然需要手动分析他们的代码。 如果是这样,使用工具自动执行此任务实际上可以节省多少时间? Paskalev 表示,DeepCode 将能够为开发人员节省大约 50% 的时间,这是他们目前自行搜索错误所花费的时间,这是一个相当可观的数字。

开发人员可以将 DeepCode 连接到他们的 GitHub 或 Bitbucket 帐户,该工具还支持本地 GitLab 配置。 此外,该项目还有一个特殊的API,允许开发人员将DeepCode集成到自己的开发系统中。 连接到存储库后,DeepCode 将分析每个代码更改并标记潜在问题。

DeepCode将使用AI发现软件源代码中的错误

“平均而言,开发人员花费大约 30% 的时间查找和修复错误,但 DeepCode 现在可以节省一半的时间,将来甚至会更多,”鲍里斯说。 “因为 DeepCode 直接向全球开发者社区学习,所以它能够发现的问题比一个人或整个评审小组发现的问题还要多。”

除了今天获得投资的消息外,DeepCode还宣布了其产品的新价值政策。 到目前为止,DeepCode 仅对开源软件开发项目免费。 现在,它将免费用于任何教育目的,甚至可供开发人员少于 30 名的商业公司使用。 显然,通过这一步,DeepCode 的创建者希望让他们的产品在小团队中更受欢迎。 此外,DeepCode 对云部署收取每个开发人员每月 20 美元的费用,对本地支持向每位开发人员收取 50 美元的费用。

此前,DeepCode团队已获得1万美元的投资。 该公司表示,计划再增加 4 万个用户,将其支持的编程语言扩展到 Java、JavaScript 和 Python 之外,包括增加对 C#、PHP 和 C/C++ 的支持。 他们还确认他们正在开发自己的集成开发环境。



来源: 3dnews.ru

添加评论