AWS今日宣布,现已普遍提供CodeGuru,这是一组使用机器学习自动检查代码中的错误并提出潜在优化建议的工具。该工具于去年12月在AWS re:Invent上启动预览。

CodeGuru由两个工具Reviewer和Profiler组成,这些名称几乎完全描述了它们的功能。为了构建Reviewer,AWS团队实际上是借助GitHub上超过10,000个开源项目的代码以及Amazon自己内部代码库的评论来训练其算法的。

该公司在今天的公告中指出:“即使对于像亚马逊这样的大型组织来说,要有足够的经验丰富的开发人员以及足够的空闲时间来进行代码审查也是一项挑战,因为每天要编写的代码量很大。”“即使是最有经验的审阅者,在影响面向客户的应用程序之前也会错过问题,从而导致错误和性能问题。”

要使用CodeGuru,无论是GitHub,Bitbucket Cloud,AWS自己的CodeCommit还是其他服务,开发人员都将其代码提交到他们选择的存储库中。然后,CodeGuru Reviewer会分析该代码,尝试查找错误,如果存在,它还将提供潜在的修复程序。所有这些都是在代码存储库的上下文中完成的,因此CodeGuru将创建一个GitHub pull request,例如,并在该pull request中添加注释,其中包含有关该错误和潜在修补程序的更多信息。

为了训练机器学习模型,用户也可以向CodeGuru提供一些基本反馈,尽管我们在这里主要是在“竖起大拇指”和“竖起大拇指”。

CodeGuru Application Profiler的任务有所不同。它旨在帮助开发人员找出代码中哪些地方可能存在效率低下的问题,并确定最昂贵的代码行。这包括对无服务器平台(如AWS Lambda和Fargate)的支持。

自从团队首次宣布CodeGuru以来,该团队增加的一个功能是Profiler现在会将估算的金额附加到未优化的代码行中。

“我们的客户开发并运行了许多应用程序,其中包括数百万行代码。确保代码的质量和效率非常重要,因为即使几行代码中的错误和效率低下,其代价也非常高昂。如今,识别代码质量问题的方法非常耗时,手动且容易出错,特别是在规模上很容易。”亚马逊机器学习副总裁Swami Sivasubramanian在今天的公告中说。“ CodeGuru将亚马逊数十年来在大规模开发和部署应用程序方面的经验与相当多的机器学习专业知识相结合,为客户提供了一项服务,该服务可以提高软件质量,以更好的应用程序性能使客户满意,并消除他们最昂贵的代码行。”

AWS说,许多公司在预览期间开始使用CodeGuru。这些包括Atlassian,EagleDream和DevFactory之类的东西。

Zak Islam表示:“尽管我们开发团队的代码审查在防止错误进入生产方面做得很出色,但并非总是能够预测系统在压力下的行为或管理复杂的数据形状,尤其是当我们每天进行多次部署时,尤其如此。” Atlassian技术团队的工程主管。“当我们检测到生产中的异常时,由于Amazon CodeGuru的连续分析功能,我们已经能够将调查时间从几天减少到几小时甚至是几分钟。现在,我们的开发人员将更多精力投入到提供差异化​​功能上,并减少研究生产环境中问题的时间。”

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如有侵权行为,请第一时间联系我们修改或删除,多谢。