在其 re:Mars 会议上,亚马逊今天宣布推出 CodeWhisperer,这是一种类似于 GitHub 的 Copilot 的 AI 配对编程工具,可以仅根据评论或几次击键自动完成整个功能。该公司对目前支持 Java、JavaScript 和 Python 的系统进行了数十亿行公开可用的开源代码及其自己的代码库以及公共论坛上公开可用的文档和代码的培训。
它现在作为AWS IDE Toolkit的一部分提供预览版,这意味着开发人员可以立即在他们首选的 IDE 中使用它,包括 Visual Studio Code、IntelliJ IDEA、PyCharm、WebStorm 和亚马逊自己的 AWS Cloud 9。支持 AWS Lambda 控制台也即将到来。
在今天宣布之前,亚马逊负责其 AI 服务的副总裁 Vasi Philomin 强调,该公司创建此功能并不是为了提供 Copilot 的副本。他指出,凭借其 AI 代码审查器和性能分析器CodeGuru以及用于查找操作问题的工具DevOps Guru ,该公司在几年前为今天的发布奠定了基础。
“我认为这项技术正处于我们认为是时候做这件事的正确时机, ” Philomin说。 “它与他们拥有的其他作品完美契合。 _这是一段旅程,我们只是在不同的时间做了不同的部分。”
在内部,亚马逊一直在只与少数开发人员一起测试该服务——主要是为了对公告保密。
该公司指出,系统会不断检查您的代码和注释,甚至会考虑您自己的编码风格和变量名称。使用此上下文信息以及光标所在的位置,它将生成自己的自定义代码片段。
值得注意的是,CodeWhisperer 做了一些不同于 Copilot 之类的事情。一方面,虽然系统生成的大部分代码都是新颖的,但每次它生成的代码接近于其训练数据中的现有片段时,它都会注意到并突出显示该原始功能的许可证。然后由开发人员决定是否使用它。这应该可以缓解使用此类工具可能带来的一些(尽管可能不是全部)版权问题。
Philomin 强调的另一个因素是安全性。根据亚马逊自己管理大型代码库和在出现问题后进行汇报的经验(使用其正式的“纠正错误”流程),以及使用 CodeGuru 的经验,Codewhisperer 将扫描代码以查找潜在的安全问题。
Philomin 还强调,团队努力确保 Codewhisperer 生成的代码也不会生成任何有偏见的代码。但是,当它这样做时,团队已经实施了过滤器来自动删除该代码。
实际的用户/开发人员体验非常简单。开发人员可以在不同的代码建议之间进行选择(在我看到的演示中,通常至少有两个选项)。它可以自动完成评论,并且仅基于这些评论,它会建议功能。一个简单的例子是#See if a number is prime 。
虽然该系统对于 AWS 生态系统之外的开发人员来说工作得很好,但 Philomin 指出,该团队非常注意确保它能够很好地为想要使用它来访问 AWS 服务的开发人员工作(想想#Create an S3 bucket )。
“当我们说它对 AWS API 具有一流的支持时,它只是额外的东西。就我们所有的测量和所有测试而言,我们发现它非常好,它将是最先进的,”他说。由于开发人员现在可以测试该服务,我们可能很快就会听到它的运行情况以及它与 Copilot 等项目的比较情况。不过,如果有的话,在这个领域有更多的选择是很棒的(肯定有人会破解一个可以自动提供来自多个结对编程 AI 的建议的项目)。
原文: https://techcrunch.com/2022/06/23/amazon-launches-codewhisperer-its-ai-pair-programming-tool/


