Amazon CodeWhisperer 开箱初体验

文章作者:Coder9527

科技的进步日新月异,正当人工智能发展如火如荼的时候,各大厂商在“解放”码农的道路上不断创造出各种 Coding 利器,今天在下就带大家开箱体验一个 Coding 利器: Amazon CodeWhisperer

亚马逊云科技开发者社区为开发者们提供全球的开发技术资源。这里有技术文档、开发案例、技术专栏、培训视频、活动与竞赛等。帮助中国开发者对接世界最前沿技术,观点,和项目,并将中国优秀开发者或技术推荐给全球云社区。如果你还没有关注/收藏,看到这里请一定不要匆匆划过,点 这里让它成为你的技术宝库!

话不多说,开撸!

准备环境和开发工具:Win11 系统,VSCode,python3.9(环境变量已添加)

Amazon Toolkit 插件安装需要一个邮箱以及设定一个密码以便设置 Amazon Builder ID 并激活 Amazon CodeWhisperer 这对于没有亚马逊云科技账号的开发者来说可以很方便的使用亚马逊云科技系的服务了。

激活 Amazon CodeWhisperer 后我们的 VSCode 是这样的。如下图:

图片

代码自动建议默认是打开的,另外还可以提供安全扫描服务等。

1.代码生成的自动建议

于是让 Amazon CodeWhisperer 先来一个简单的,生成打印 hello world 函数:

在 py 文件中输入:

# a function named print_hello_world that prints "Hello World" to the screen.

图片

稍等片刻,它会自动提示函数名定义,按 Tab 键确认生成函数定义。

图片

然后是函数体以及调用:

图片

我们运行一下试试:

图片

运行完成。

接下来再撸一个求斐波那契数列第 n 位数的函数:

图片

生成运行成功,这个很考验英文描述能力,希望以后能增加解读汉语的功能!!

2.代码风险检测

我们看看 Amazon CodeWhisperer 对于除数为零的代码风险能不能检测到:

图片

竟然是:未在工作区检测到问题。 我和我的小伙伴们都惊呆了,说实话心理很忐忑。。。。。。

非得运行一下才能报出来问题。当然我写的这个除数为零的比较明显,如果能在比较隐藏的深的代码中检测到除数为零问题,那简直是很有帮助的。

图片

对于内存溢出我们来测试一下看看能不能检测出来:

def  max_recursion(n):
    if n == 1:
        return 1
    else:
        return n * max_recursion(n-1)
        
print(max_recursion(1000000))

图片

来运行一下,

图片

啊,这。。。抱歉,是在下肤浅了。。。

总体体验下来,Amazon CodeWhisperer 表现还是不错的生成的代码比较规范,我这里只用 python 测评了一下,有空在用其他语言试试。

好了,达摩克里斯之剑入鞘!

感觉没过瘾的小伙伴们请移步☞ ☞ ☞ ☞ ☞️ 

文章来源:
https://dev.amazoncloud.cn/column/article/64f434262a1d01763ea480c0?sc_medium=regulartraffic&sc_campaign=crossplatform&sc_channel=CSDN

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/230286.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SCI一区级 | Matlab实现GWO-CNN-BiLSTM-selfAttention多变量多步时间序列预测

SCI一区级 | Matlab实现GWO-CNN-BiLSTM-selfAttention多变量多步时间序列预测 目录 SCI一区级 | Matlab实现GWO-CNN-BiLSTM-selfAttention多变量多步时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.Matlab实现GWO-CNN-BiLSTM-selfAttention灰狼算法优化卷…

JWT介绍及演示

JWT 介绍 cookie(放在浏览器) cookie 是一个非常具体的东西,指的就是浏览器里面能永久存储的一种数据,仅仅是浏览器实现的一种数据存储功能。 cookie由服务器生成,发送给浏览器,浏览器把cookie以kv形式保存到某个目录下的文本…

【iOS】数据持久化(三)之SQLite3数据库

目录 数据库简介什么是SQLite?在Xcode引入SQLite APISQL语句的种类存储字段类型 SQLite的使用创建数据库创建表和删表数据表操作增(插入数据INSERT)删(删除数据DELETE)改(更新数据UPDATE)查&…

QT打包部署程序时候程序无法启动

当在Qt打包部署程序后(用windeployqt打包好qt依赖库后),在本机可以运行,在其他电脑上显示程序无法启动,如下图所示。可能是在复制dll时候将System32中的dll复制到了应用程序中,应该改用SysWOW64中的dll&…

通过kubeadm方式安装k8s

虚拟机最少是 2 core,master内存最小3G,node内存最小2G. 要求的Docker版本是18.03,如果不是安装的docker ce,版本是过旧的,可以选择删除后重新安装; 也可以重新创建一个虚拟机执行以下命令。 简单方法&am…

LeetCode Hot100 17.电话号码的字母组合

题目: 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 方法:灵神 子集型回溯 class Solution {p…

npm私有源构建项目下载依赖报错

Jenkins构建项目报错,依赖找不到 Error: Couldnt find any versions for "babel/helper-module-imports" that matches "^7.22.15"at MessageError.ExtendableBuiltin (/data1/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/…

屏幕分辨率修改工具SwitchResX mac功能特点

SwitchResX mac是可用于修改和管理显示器的分辨率和刷新率。 SwitchResX mac功能和特点 支持多种分辨率和刷新率:SwitchResX可以添加和管理多种分辨率和刷新率,包括自定义分辨率和刷新率。 自动切换分辨率:SwitchResX可以根据应用程序和窗口…

如何提高大模型在超长上下文的表现?Claude实验表明加一句prompt立即提升效果~

本文来自DataLearnerAI官方网站:如何提高大模型在超长上下文的表现?Claude实验表明加一句prompt立即提升效果~ | 数据学习者官方网站(Datalearner)https://www.datalearner.com/blog/1051701947131881 Claude 2.1版本的模型上下文长度最高拓展到200K&am…

时间序列预测 — VMD-LSTM实现单变量多步光伏预测(Tensorflow):单变量转为多变量

目录 1 数据处理 1.1 导入库文件 1.2 导入数据集 1.3 缺失值分析 2 VMD经验模态分解 3 构造训练数据 4 LSTM模型训练 5 预测 1 数据处理 1.1 导入库文件 import time import datetime import pandas as pd import numpy as np import matplotlib.pyplot as plt f…

windows系统和虚拟机上ubuntu系统通过虚拟串口进行通信

本文的目的是实现windows系统和虚拟机上安装的ubuntu通过串口进行通信。为了直观观测串口收发数据的内容,需要在windows系统和ubuntu系统使用串口助手来进行监听。windows系统端用的监听工具是串口助手SSCOM,ubuntu系统端使用的串口助手是CuteCom。 ubu…

电子眼+无人机构建平安城市视频防控监控方案

电子眼(也称为监控摄像机)可以通过安装在城市的不同角落,实时监控城市的各个地方。它们可以用于监测交通违法行为、监控公共场所的安全以及实时监测特定区域的活动情况。通过电子眼的应用,可以帮助警方及时发现并响应各类安全事件…

『Redis』在Docker中快速部署Redis并进行数据持久化挂载

📣读完这篇文章里你能收获到 在Docke中快速部署Redis如何将Redis的数据进行持久化 文章目录 一、拉取镜像二、创建挂载目录1 宿主机与容器挂载映射2 挂载命令执行 三、创建容器—运行Redis四、查看运行情况 一、拉取镜像 版本号根据需要自己选择,这里以…

PPT插件-好用的插件-图形缩放-大珩助手

图形缩放 包括适合屏幕、适合宽度、适合高度、水平翻转、垂直翻转、指定角度,可同时对多个形状进行操作 适合屏幕 一键设置图像、文本、形状的长宽尺寸与当前幻灯片一致 适合宽度 一键设置图像、文本、形状的宽度尺寸与当前幻灯片一致 适合高度 一键设置图像…

鸿蒙方舟开发框架ArkUI简介

语雀知识库地址:语雀HarmonyOS知识库 飞书知识库地址:飞书HarmonyOS知识库 嗨,各位别来无恙呐,我是小白 众所周知,华为在今年推出了 HarmonyOS 4.0 版本,而在此之前的版本中,HarmonyOS 应用的 …

第17章:随堂复习与企业真题(反射机制)

第17章:随堂复习与企业真题(反射机制) 一、随堂复习 1. 反射的概述(熟悉) Java给我们提供了一套API,使用这套API我们可以在运行时动态的获取指定对象所属的类,创建运行时类的对象,…

web漏洞原理与防御策略,web漏洞怎么挖掘

目录 Web安全的重要性 ​编辑常见的Web漏洞类型及其原理: 1、跨站脚本攻击(XSS): 2、SQL注入: 3、跨站请求伪造(CSRF): 4、远程文件包含(RFI)和本地文件包含(LFI):…

[笔记]ARMv7/ARMv8 交叉编译器下载

开发 Cortex-A7、Cortex-A72 或其他 ARM 架构 profile 芯片时,经常需要下载对应架构的交叉编译器,所以写这篇笔记,用于记录一下交叉编译器下载流程,免得搞忘。 编译环境:ubuntu 虚拟机 下载地址 我们可以从 ARM 官网…

使用MfgTool烧写前需准备的文件

一. 简介 本文我们就来学习,如何将我们编译的 uboot,zImage(内核镜像),xxx.dtb设备树文件,还有制作的根文件系统,这四个文件烧写到开发板中,最后 开发板能正常启动。 本文这里使用…

数据可视化软件的兴起:背后的驱动力

在当今信息时代,数据变得比以往任何时候都更为重要。数据可视化软件的广泛应用成为了一种趋势。那么,为什么越来越多的人选择使用数据可视化软件呢?今天我就以自己的工作经验为基础,进行简单的分析。 数据可视化软件能将枯燥的数…