[ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧

文章目录

    • 一、Amazon CodeWhisperer 简介
      • 1.1 CodeWhisperer 是什么
      • 1.2 Amazon CodeWhisperer 是如何工作的
    • 二、Amazon CodeWhisperer 的优势和功能
      • 2.1 Amazon CodeWhisperer 的优势
      • 2.2 Amazon CodeWhisperer 的代码功能
    • 三、Amazon CodeWhisperer 安装
      • 3.1 安装到 IntelliJ IDEA
      • 3.2 安装到 VS Code 中
    • 四、Amazon CodeWhisperer 使用实战
      • 4.1 根据注释生成相应代码
      • 4.2 测试返回多个记录
    • 五、CodeWhisperer 学习好礼

一、Amazon CodeWhisperer 简介

1.1 CodeWhisperer 是什么

Amazon CodeWhisperer 利用机器学习在您编码时提供实时代码建议。这些量身定制的建议适合您当前的代码库,从注释到完整的功能。此外,该工具还执行安全扫描,通过查明可能的漏洞来提高代码质量。通过提供个性化、上下文相关的支持,CodeWhisperer 提高了效率并促进了编码最佳实践的采用。

一句话总结,Amazon CodeWhispere r是 Amazon 推出的一款AI编程助手。

这里提一下,Amazon CodeWhisperer 有两种,一种是个人用,一种是专业级的,大致的区分概括如下:

CodeWhisperer 个人用:代码建议和参考跟踪免费;每月还可免费扫描 50 次代码。
CodeWhisperer 专业级:根据最大用户数(即每个用户每月)按月计费。

1.2 Amazon CodeWhisperer 是如何工作的

我使用起来 Amazon CodeWhisperer 的感受是,你可以当 Amazon CodeWhisperer是一款人工智能伙伴。

你在 IDE 中写代码,或者有疑问编写注释等的时候,IDE会自动的发送你的需求,或者你想要的给 Amazon CodeWhisperer,Amazon CodeWhisperer 会使用 AI 生成基于 IDE中先前的代码和注释生成在你编写代码时提供类似自动补全的建议。你可以通过开始编写你想要使用的代码,或者写下自然语言描述想要代码实现的功能。

[ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧_第1张图片

二、Amazon CodeWhisperer 的优势和功能

2.1 Amazon CodeWhisperer 的优势

个人研究学习的时候发现:Amazon CodeWhisperer优势还是比较多的,毕竟是大公司开发,起主要的功能可以归纳为:

  1. 通用代码生成器: Amazon CodeWhisperer 是一款旨在通过实时生成代码建议来帮助开发人员的工具。

  2. 机器学习驱动: CodeWhisperer 使用机器学习算法来理解和分析您编写的代码。它利用此分析来生成相关且上下文感知的代码建议。

  3. 实时建议:当您编写代码时,CodeWhisperer 会提供自动、即时的代码建议。这种实时反馈可以帮助简化编码流程并提高生产力。

  4. 上下文感知建议: CodeWhisperer 生成的建议是根据您的特定代码库量身定制的。它会考虑您现有的代码、注释和当前上下文来提供相关建议。

  5. 建议的范围不同: CodeWhisperer 的建议的复杂程度可能有所不同。它们的范围可以从简单的注释或代码注释到整个函数或代码块。

  6. 提高生产力:通过提供相关代码建议,CodeWhisperer旨在帮助开发人员更高效地编写代码,减少手动搜索代码示例或语法的需要。

  7. 代码安全分析:除了代码生成之外,CodeWhisperer 还能够扫描您的代码是否存在安全问题。它可以突出显示潜在的安全漏洞,帮助您识别和解决代码库中的安全问题。通过提供实时建议并突出显示安全问题,CodeWhisperer 可以推广编码最佳实践并鼓励遵守编码标准。

  8. 以开发人员为中心: CodeWhisperer 旨在支持开发人员完成编码任务。它旨在提供符合开发人员意图和编码实践的有意义的建议。CodeWhisperer 的代码建议根据开发人员的风格和编码偏好量身定制,打造更加个性化的编码体验。

  9. 学习潜力:开发人员可以从 CodeWhisperer 生成的建议中学习,深入了解编码模式和最佳实践。

2.2 Amazon CodeWhisperer 的代码功能

其实作为开发者,我们的重点大部分是关注 Amazon CodeWhisperer 能给出的diamante级别的建议到底是什么,体验下来可以看到 CodeWhisperer 给出的几种建议:

  • 单行代码完成:提供在您键入时完成单行代码的建议,帮助语法和函数调用。

  • 完整函数生成:根据上下文和编码模式自动生成完整函数。

  • 块完成:提供完成循环或条件等代码块的建议,从而改进代码结构。

  • Docstring 和 Javadoc 补全:生成函数和类的文档字符串,帮助编写代码文档。

  • 逐行建议:提供实时逐行编码建议,提高代码质量和效率。

  • 单行注释完成:提供完成单行注释的建议,帮助代码解释和注释。

例如,你可以通过单击向右箭头接受建议或查看多个代码建议。

三、Amazon CodeWhisperer 安装

3.1 安装到 IntelliJ IDEA

  1. 在 IntelliJ IDEA 中点击 Setting 打开设置窗口,随后点击 Plugins 进入插件页面
  2. 在搜索栏内搜索 AWS ToolKit
  3. 点击 Install 安装插件

[ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧_第2张图片

  1. 待插件安装完毕后点击右下角 OK 确认安装,安装完毕后将在 IDE 中看到 AWS ToolKit 插件

[ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧_第3张图片

  1. 启用 CodeWhisperer 在弹出窗口中,选择“使用个人邮箱注册并登录 Builder ID”,点击右下角 Connect。

[ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧_第4张图片

  1. 登陆 Builder ID

[ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧_第5张图片

在登录时您将看到如下窗口。请点击“打开并复制验证码”,并使用验证码进行验证。

[ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧_第6张图片

跳转到你的浏览器,粘贴刚刚复制的验证码

[ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧_第7张图片

随后将跳转至登录注册页面。如果为首次使用,请用您的电子邮箱进行注册。注册和登录完毕后即可开始使用 CodeWhisperer

[ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧_第8张图片

3.2 安装到 VS Code 中

与安装到 IntelliJ IDEA 中类似,此处不做过多介绍,直接在插件市场里找到亚马逊的AWS Toolkit插件直接安装即可。

[ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧_第9张图片

四、Amazon CodeWhisperer 使用实战

4.1 根据注释生成相应代码

给出的提示词如下(创建一个函数来创建DynamoDB表):

# Create a function to create a DynamoDB table

Amazon CodeWhisperer 给出的解决方案:
[ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧_第10张图片

另外尝试生成的更具体的案例,我们给出的提示词如下:

# 函数创建DynamoDB表,以员工ID为主键和 readcapacity单 位为100和写入容量单位为200
# Function to create a DynamoDB table with employee ID as primary key and ReadCapacityUnits at 100 and WriteCapacityUnits at 200

Amazon CodeWhisperer 给出的解决方案:
[ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧_第11张图片

从这里可以看出,就和 ChatGPT 类似,如果你的提示词更具提,CodeWhisperer 生成的内容也更具具体,符合你的期望,所以适当的写出提示词给 CodeWhisperer,才能更好的让他来帮助到你。

4.2 测试返回多个记录

在这里,我们根据提供的代码,使用 CodeWhisperer 来生成多个记录。

所使用的测试代码如下:
[ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧_第12张图片
我们给出自己的需求,和相应的提示词给 CodeWhisperer

# Patch get_products and test lambda_handler returns a multiple records
# Patch get_products和test lambda_handler返回多条记录

CodeWhisperer 根据我们的提示词生成并返回相应的代码

# Patch get_products and test lambda_handler returns multiple records
@patch('product_api.get_products')
def test_lambda_handler_multiple(self, mock_get_products):
mock_get_products.return_value = [{'id': '1', 'name': 'test', 'description': 'test'}, {'id': '2', 'name': 'test2', 'description': 'test2'}]
response = product_api.lambda_handler(None, None)
self.assertEqual(response['statusCode'], 200)
self.assertEqual(response['body'], '[{"id": "1", "name": "test", "description": "test"}, {"id": "2", "name": "test2", "description":
"test2"}]')

五、CodeWhisperer 学习好礼

云上探索实验室开展至今,越来越多的人都对 AI 编程助手 Amazon CodeWhisperer 赞不绝口。为了让大家在体验时不走弯路,快速上手 Amazon CodeWhisperer,云上探索实验室-码上学堂来啦!为了让更多的伙伴们加入到学课阵营中,云上探索实验室面向所有伙伴们,特别招募码上学堂领学员,邀人加入码上学堂,有好礼相送哦。

活动链接:https://mp.weixin.qq.com/s/WgeRzML5MogLSWeM57zv3w

[ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧_第13张图片

(参与学习奖品)

CodeWhisperer 学课通道:

  • CSDN平台:https://edu.csdn.net/course/detail/38969?utm_source=AWS-Paid-Builder-MKT-Social-YS-CW-CSDN
  • 网易云课堂:
    https://study.163.com/course/introduction/1213602804.htm?from=AWS-Paid-Builder-MKT-Social-YS-CW-NECC
  • Skill Builder 平台:
    https://explore.skillbuilder.aws/learn/course/external/view/elearning/17168/amazon-codewhisperer-getting-started-simplified-chinese?trk=d15c46ed-1e4e-4e8b-82c0-63ba2feb26b9&sc_channel=el

[ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧_第14张图片

你可能感兴趣的:(#,云计算入门与实践,-,AWS,云计算,aws,人工智能,云平台)