近日,AWS 宣布其机器学习工具 CodeGuru 已向大众全面开放。这款工具可帮助开发人员简化应用程序,并提高应用的代码质量。

CodeGuru

据悉,这一服务由两个组件组成,分别是:

  1. Amazon CodeGuru Reviewer:它是在 code review(代码评审)期间运行的错误扫描程序;

  2. CodeGuru Profiler:它是识别生产应用程序中的代码行并帮助找出 CPU 过度使用原因的工具。

去年 12 月,AWS 发布了 CodeGuru 的预览版本。它可以帮助客户自动化代码审查流程,查找错误并提出补救措施的建议,以期在应用程序交付最终用户之前修复问题。

对于在 AWS 计算实例上运行应用程序的开发人员而言,该工具可能大有助益。如果应用程序的代码无法有效利用 CPU 资源,开发人员要付出的成本就会比预期高出很多,而 CodeGuru 可以帮助避免这种情况。

据了解,CodeGuru reviewer 基于一些机器学习模型进行代码审查,这些模型是使用 GitHub 上的 10000 多个开源项目以及亚马逊自己的代码审查数据训练的。

开发人员像平常一样将代码提交到 GitHub 或其他存储库上,然后将 Amazon CodeGuru Reviewer 添加为代码审查者之一。它会打开一个个 PR 以审查代码。AWS 表示它能非常准确地识别错误和关键问题。

它还提供了一个 PR 仪表板,其中包含关于代码审查状态、分析的代码行数和给出建议数的信息。用户可以批准或拒绝建议。

这款服务一项不错的特性是,其配置文件包括了对生产应用程序中发现的低效成本的估算数据,以及关于提高性能和降低成本的建议。

效益:为亚马逊节省数千万美元

亚马逊表示,其内部团队已在 30000 多个生产应用程序中使用了 Amazon CodeGuru Profiler,从而帮助其节省了价值数千万美元的计算资源。亚马逊的消费者付款团队还使用它简化了高峰时期的运营工作,并提升了高峰期的应用程序性能。

" 我们的客户开发并运行了众多应用程序,其中的代码数以百万行计,”AWS Amazon Machine Learning 副总裁 Swami Sivasubramanian 说。

“确保代码的质量和效率是非常重要的,因为即使是少数几行代码中的错误和低效率部分也可能造成巨大损失。今天人们用来识别代码质量问题的方法非常耗时,缺乏自动化且容易出错,尤其是在大规模场景下更是如此。”

软件管理公司 Atlassian 是 CodeGuru 的早期用户,他们表示,在遇到应用程序问题时,这款工具可以将调查时间从几天缩短到几小时。

Atlassian 技术团队部门的工程主管 ZakIslam 表示:“当我们检测到生产中的异常时,凭借 Amazon CodeGuru 的持续分析功能,我们能将调查时间从几天缩短到几小时甚至是几分钟。”

“我们的开发人员现在将更多精力投入到了提供差异化功能上,并减少了研究生产环境中出现问题的时间投入。”

90 天免费试用和收费概况

据了解,AWS 提供了长达 90 天的 CodeGuru 免费试用期。试用期结束后,在源代码存储库中运行 CodeGuru Reviewer 时,每 100 行代码收费 0.50 美元。用户可以扫描所有源代码 PR,之后该服务会只扫描更改的代码行。

目前,CodeGuru Profiler 的定价是基于总的采样小时数,每小时收费 0.005 美元。

未来计划

这一新服务现可在美国东部(北弗吉尼亚州、俄亥俄州),美国西部(俄勒冈州),欧盟(爱尔兰、伦敦、法兰克福、斯德哥尔摩)和亚太地区(新加坡、悉尼、东京)使用。AWS 计划在未来几个月内宣布将其扩展到更多地区。

英文原文:

Amazon’s CodeGuru is out: AI tool checks code and suggests changes to save you money