天天看点

CodeWhisperer辅助编程实战,帮你轻松提升编程效率

作者:闪耀之星AK

前言

Copilot 是 Github 推出的一款人工智能编程助手,推出仅一年就受到大量开发者的追捧(据官方统计有 120 万用户)。然而,自 2022 年 6 月起,它改为了付费订阅模式(每月 10 美元或每年 100 美元)。

我们暂且不讨论训练代码可能涉及的版权及授权许可问题,可以肯定的是,利用机器学习训练出智能编程 AI 模型,这会是未来的大势所趋!

巧合的是,仅在 Copilot 宣布收费的几天后,Amazon 就推出了一款竞品 CodeWhisperer!相信在不久的将来,类似的产品会如雨后春笋般涌现,到那时,程序员和编程学习者们就更加有福了!

一、CodeWhisperer 简介

Amazon CodeWhisperer 是一款能够帮助我们智能生成代码的工具。经过数十亿行代码的训练,可以根据提示和现有代码实时生成从片段到完整功能的代码建议。类似 Cursor 和Github Copilot编码工具。

通过官方发布的一段简短的视频https://www.youtube.com/watch?v=j8BoVmHKFlI,展示了 Amazon CodeWhisperer 的主要功能,包括代码生成、引用跟踪和安全扫描。了解有关 Amazon CodeWhisperer 的更多信息:https ://go.aws/42UYhAN 。

CodeWhisperer目前已支持近15种变种语言:Python、Java、JavaScript、TypeScript、C#、Go、Rust、PHP、Ruby、 Kotlin、C、C++、Shell 脚本、SQL 和 Scala,以及主流的IDE开发工具:包括 VS Code、IntelliJ IDEA 和 AWS Cloud9。

CodeWhisperer辅助编程实战,帮你轻松提升编程效率

据官方统计,与未使用该编程助手的开发者相比,使用者完成任务的速度平均快 57%,成功率提高 27%。

CodeWhisperer辅助编程实战,帮你轻松提升编程效率

下面我以Java常用的开发工具 IDEA 为例,为大家介绍如何使用 CodeWhisperer。

二、CodeWhisperer收费模式

Amazon CodeWhisperer 直接在集成开发环境 (IDE) 中为开发人员提供实时代码建议。个人开发者可以免费使用 CodeWhisperer。组织为使用 CodeWhisperer 支付固定的“每位用户每月”订阅费,并且没有前期费用或长期承诺。

CodeWhisperer 提供两层:

CodeWhisperer 个人层

CodeWhisperer Individual Tier 可免费使用。个人开发人员可以使用带有 AWS Builder ID 的电子邮件地址注册并登录,以便在几分钟内开始使用 CodeWhisperer。Individual Tier 提供代码建议、参考跟踪和安全扫描。

CodeWhisperer 专业级

除了 Individual Tier 中提供的功能外,CodeWhisperer Professional Tier 还为希望为其开发人员提供 CodeWhisperer 访问权限的组织提供管理功能。管理员获得组织许可管理以集中管理组织中的哪些开发人员应该有权访问 CodeWhisperer。他们还获得组织策略管理,以在组织级别设置服务策略,例如是否允许开发人员接收可能类似于特定开源训练数据的代码建议。

三、安装CodeWhisperer插件

这里以IntelliJ IDEA开发工具为例演示如果安装和使用CodeWhisperer工具,对于Visual Studio Code工具集成CodeWhisperer插件可以参考如下视频:https://www.youtube.com/watch?v=rHNMfOK8pWI

打开 IDEA,通过 Perferences->Plugins ,在里面搜索 aws,找的【AWS Toolkit】,如下图,先进行安装,安装完成以后,重启 IDEA。

CodeWhisperer辅助编程实战,帮你轻松提升编程效率

重启以后,就会在左下角出现 AWS Toolkit 图标,如果没有的,你选择 View->Tool Windows->AWS Toolkit

CodeWhisperer辅助编程实战,帮你轻松提升编程效率

四、注册并使用 AWS Builder ID 登录

在上一步,我们打开 AWS Toolkit,选择tab页 Developer Tools,然后点击【Start】

CodeWhisperer辅助编程实战,帮你轻松提升编程效率

然后再弹出的窗口中,选择“ Use a personal email to sign up and sign in with AWS Builder ID",然后点击“Connect”按钮

CodeWhisperer辅助编程实战,帮你轻松提升编程效率

在弹窗中,点击【Open and Copy Code】

CodeWhisperer辅助编程实战,帮你轻松提升编程效率

然后浏览器会自动打开如下界面,将刚刚复制的 Code 粘贴到输入框中,然后点击next:

CodeWhisperer辅助编程实战,帮你轻松提升编程效率

然后在下面输入自己的邮箱,这一步会在你的邮箱发送一个验证码用于下面的校验。

PS:这里的邮箱没有什么限制,国内国外的均可,本人已测阿里云和gmail邮箱可正常使用。

CodeWhisperer辅助编程实战,帮你轻松提升编程效率

下一步输入用户名之后,会发送一个邮箱验证码,到自己的邮箱中找到aws发送的验证码,填写到下面的输入框中。

CodeWhisperer辅助编程实战,帮你轻松提升编程效率

然后设置密码(密码需要包含数字、字母、特殊字符且不少于8位),点击“Create AWS Builder ID“,如下图:

CodeWhisperer辅助编程实战,帮你轻松提升编程效率

最后点击 Allow,即可注册完成:

CodeWhisperer辅助编程实战,帮你轻松提升编程效率
CodeWhisperer辅助编程实战,帮你轻松提升编程效率

五、智能代码提示

然后我们回到 IDEA,看到如下界面,即表示注册并启动成功:

CodeWhisperer辅助编程实战,帮你轻松提升编程效率

下面我们新建任意Java文件,演示一下CodeWhisperer如何能够帮助我们自动生成代码。

5.1、单行代码补全

开始输入单行代码时,CodeWhisperer 会根据当前和之前的输入提出建议。

在下面的示例中,在 Java 中,用户输入字符串public。根据输入,CodeWhisperer 生成了建议列表

CodeWhisperer辅助编程实战,帮你轻松提升编程效率

5.2、从注释生成完整函数

CodeWhisperer 可以根据您编写的注释生成整个函数。完成注释时,CodeWhisperer 会建议函数签名。如果接受此建议,CodeWhisperer 会自动将光标移到函数的下一部分并提出建议。即使您在建议之间输入了其他注释或代码行,CodeWhisperer 也会根据您的输入进行重构。

CodeWhisperer辅助编程实战,帮你轻松提升编程效率

5.3、部分代码块生成

代码块完成用于完成您的 if/for/while/try 代码块。

CodeWhisperer辅助编程实战,帮你轻松提升编程效率

5.4、根据签名自动生成代码

CodeWhisperer辅助编程实战,帮你轻松提升编程效率

六、用户操作

在编码时,这些用户操作与 CodeWhisperer 相关联。

操作 键盘快捷键
手动触发 CodeWhisperer macOS:Option + CWindows: Alt + CLinux:Alt + C
接受建议 按 Tab 键、输入或单击。
拒绝建议 按 ESC、Backspace 或者继续键入,一旦出现字符不匹配,建议的内容就会消失。

继续阅读