·  阅读 个人免费使用的Github Copilot——AWS CodeWhisperer

这两天看到了好多关于AWS的CodeWhisperer针对个人用户终身免费使用的消息,便抽空简单梳理了下目前市面上的辅助编程工具,最后再来重点介绍下如何在VS Code和JetBrains这两款IDE上安装和使用CodeWhisperer。

辅助编程工具的发展

提到辅助编程,最直观的感受就是在IDE中写代码时的自动补全。

其实, 除了自动补全,语法检查、错误修复、导航跳转、类型与范围提示、参数补全、自动注释、代码生成、代码质量分析等等,都属于辅助编程工具的能力范畴

最早的辅助编程工具,就是各类IDE中内置的代码补全功能,时间可能追溯到上个世纪90年代。

然后到了2015年前后,各种基于机器学习的代码生成/补全工具逐渐出现,这里面就包含了大名鼎鼎的 Kite (2021年已停止维护)、Tabnine、Codota。此时的工具,已经具备了部分 智能 的感觉。

然后时间到了2021年,OpenAI、GitHub、AWS相继推出了自己基于深度学习的辅助编程工具——Codex、Copilot、CodeWhisperer,至此,辅助编程工具进入了一个互卷的时代,提供的功能也越来越强大,甚至有些时候可以称为 AI编程助手

这篇文章,就主要介绍两款AI编程助手——GitHub的Copilot与AWS的CodeWhisperer。

GitHub Copilot

GitHub Copilot 是GitHub推出的一款AI辅助编程工具。它通过大量训练编程语言的示例,可以根据当前的上下文为程序员自动补全代码。目前支持Python、JavaScript、TypeScript、Java、Ruby 和Go等语言。

Copilot提供的主要功能有:

  • 函数/方法参数提示
  • 快速文档提示
  • 目前的 收费方式如下

  • 学生、教师、开源项目维护者:免费
  • 个人:提供30天试用,试用期后每个自然月10美元,每年100美元
  • 企业用户:仅支持月付,每月19美元。
  • AWS CodeWhisperer

    AWS的CodeWhisperer是Amazon于2021年12月推出的一款代码补全工具,与GitHub Copilot类似。主要的功能有:

  • 注释和文档补全
  • 代码安全问题的辅助定位
  • CodeWhisperer主要由Java、Python、JavaScript、TypeScript、C#相关语料训练而成,在支持上述语言的同时,也支持Ruby、Go、PHP、C++、C、Shell、Scala、Rust、Kotlin、SQL等。

    目前的 收费方式如下

  • 个人版:免费,基于AWS Builder ID,代码安全检查不超过50次/人/月
  • 专业版:19美元/人/月,基于AWS IAM Identity Center认证,代码安全检查不超过500次/人/月
  • 两者的主要区别

    AWS的CodeWhisperer和GitHub的Copilot都是代码补全工具,但具体有如下区别:

  • 训练数据差异。Copilot使用GitHub开源代码库进行广域的训练,支持更普适的场景。CodeWhisperer利用AWS的大量服务示例代码进行训练,在AWS服务相关领域有优势
  • 产品定位差异。Copilot目标更广的开发者群体,CodeWhisperer更侧重于提高AWS开发体验
  • AWS CodeWhisperer的安装与使用

    AWS CodeWhisperer的安装与使用都较为直接,具体可以参考 CodeWhisperer官方文档 ,文档中的步骤描述很清楚,并且根据不同的IDE有着类似的操作方式与快捷键。

    另外,下面两个视频分别介绍了VSCode与JetBrains中CodeWhisperer的安装与简单使用。

    如何在VS Code中使用AWS CodeWhisperer

    如何在JetBrains中使用CodeWhisperer

    更多内容,欢迎关注 算法工程笔记 微信公众号。