2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

Amazon Q 初体验,享受 AI 带来的效率提升

  • 2023-08-25
    北京
  • 本文字数:1777 字

    阅读完需:约 6 分钟

Amazon Q 初体验,享受AI带来的效率提升

活动推荐: #生成式 AI 先锋开发者集结令 #

免费体验编程神器,丰厚大奖等你来拿!👉🏻👉🏻https://jinshuju.net/f/rVuKYa


随着 Github Copilot 在程序员中流行,越来越多的开源项目和大型公司也在代码生成这一领域发力。最近亚马逊就宣布了自家基于亚马逊云科技的代码生成项目 CodeWhisperer 开放测试,由于还在测试阶段,大家可以在各种 IDE 上免费体验,享受 AI 带来的效率提升。

安装


安装 CodeWhisperer 非常简单,只需要在插件市场搜索 AWS Tookit 即可。以 VS Code 为例:



安装完成之后侧边栏就会出现一个 AWS 的图标,点击最下面的 DEVELOPER TOOLS 登陆,登陆完成之后点击 CodeWhisperer,选择开始就可以体验了。



代码补全体验

获取当前时间


首先我们尝试一个非常简单的例子,用 Python 获取当前时间:


# get current timeimport time
def get_current_time():    return time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
复制代码


实际上我们输入第一行的注释,代码助手就会提示我们输入import time,然后我们可以输入函数的定义def,剩下的都可以自动补充完整:



网页代码修改


首先我们搭了一个简单的网页,网页上面有两个正方形,分别是橘色和红色的,里面还有一些文字,像是 Test Hello World



<html>    <head>        <title>Test</title>        <style>            .test {                width: 100px;                height: 100px;                background-color: orange;            }            .hello {                width: 50px;                height: 50px;                margin: 10px;                background-color: red;            }        </style>    </head>    <body>        <div class="test">Test</div>        <div class="hello">Hello World!</div>    </body></html>
复制代码


现在,我们需要给 Test 这个正方形加上阴影,将*Hello World!*这个较长的字符串省略并在后面加上省略号。尝试给出注释:




这次它生成代码的时间比较长,不过还好最后还是顺利的生成了我们想要的格式:



算法应用


首先我们尝试一下经典的快速排序算法,它很顺利的生成出来了:



基本上是满足了快速排序算法的要求。


接着我们挑战一个难一点的,在字符串中找到最长的回文子串。这个问题可以用中心扩展法在O(n ^ 2)的时间复杂度完成,最优的算法是使用马拉车算法(Manacher's Algorithm),其时间复杂度仅为O(n)



它也很快得到了,不过实践是检验真理的唯一标准,我们来看看它能不能通过 LeetCode



一次通过!代码补全还是很强大的,我自己写的时候在循环的部分很容易就写错了。

单元测试


在日常工作时,我们需要编写单元测试可以在一定程度上保证我们对代码的修改的把握。我们可以对上面的马拉车算法进行单元测试的编写:



Python中我们一般用断言可以完成一些简单的单元测试,这里它给出了一些测试用例。不过我觉得还不够完善,因为s有可能为空或者None,它并没有测试到这些用例。

安全扫描


安全扫描(Security Scan) 是 Amazon CodeWhisperer 推出的一项崭新的功能。在测试阶段,我们每个月可以使用 50 次扫描。首先我们可以尝试一下官网的例子:



直接报错了。从提示来看,应该是因为在一个大的文件夹进行了安全扫描。所以新建一个文件夹再尝试:




这次顺利地得到了结果。不过其实这里面应该有两个安全问题,它只能检测到第一个。这是删除之后的扫描结果这时它才能检测到下一个安全问题:



这个功能确实能够检测出一定的安全问题,尝试使用 Copilot Chat,它只能傻乎乎的回复一些车轱辘话:


结语


总的来说,CodeWhisperer 还是有不少亮点。在代码生成方面几乎不逊色于 Copilot,生成的速度可能稍微慢点,质量还是比较优秀。安全检查是这次最与众不同的地方,需要注意的是扫描的文件长度应该有限制,但是官网中没有提到,稍显不足,但是整个功能还是非常有自己的特色的。除了这些,CodeWhisperer 比起 Copilot 还有一个不足是,没有一个理解代码,解释代码的工具。期待后续的功能更新和迭代。


版权声明: 本文源自微信公众号【air 的代码小屋】未经授权禁止转载,文章转载请联系作者。

2023-08-25 14:546189

评论

发布
暂无评论
发现更多内容

寻找AI新势力!“天翼云息壤杯”高校AI大赛火热报名中!

天翼云开发者社区

人工智能 AI

项目管理系统(源码+文档+部署+讲解)

深圳亥时科技

ElevenLabs Voice Design :可通过文本创建个性化语音;苹果推出首个开发者测试版丨 RTE 开发者日报

声网

开源(open source)是什么?为什么要开源?

伤感汤姆布利柏

Linux内存泄露案例分析和内存管理分享

京东科技开发者

跨越语言边界,Greptime 与蚂蚁向量数据库合作实现向量搜索性能 5 倍新突破

Greptime 格睿科技

数据库 云原生 检索 向量数据库

「毅硕|生信教程」 micromamba:mamba的C++实现,超越conda

INSVAST

教程分享 基因数据分析 生信服务 Sentieon

快手小店详情API接口的获取与应用

科普小能手

API 接口 API 测试 快手API接口 快手数据采集 快手API

高级程序员的7大特征,你占了几条?

秃头小帅oi

Springboot异步事件配置和使用

不在线第一只蜗牛

Java spring 1024程序员节

淘宝1688跨境电商官方接口接入全攻略,跨境卖家必知

tbapi

淘宝数据采集 1688代采系统 1688数据采集 淘宝官方接口 1688官方接口

分销管理系统(源码+文档+部署+讲解)

深圳亥时科技

道路养护系统(源码+文档+部署+讲解)

深圳亥时科技

“政产学”联合培养高技能人才,助推江门制造业数字化转型升级

极客天地

软件测试丨Selenium:常用页面信息对比方法expected_conditions

测试人

软件测试

软件测试学习笔记丨Selenium键盘鼠标事件ActionChains

测试人

软件测试

抖音的API有什么应用?

科普小能手

API 接口 API 测试 抖音商品详情API接口 抖音数据采集 抖音API接口

荣耀应用市场丨新锐榜单首发上线

荣耀开发者服务平台

荣耀开发者服务平台 应用市场 开发者激励计划 荣耀HONOR

关于RAG

AIGC.TWang

大模型 AIGC rag

软件测试学习笔记丨Selenium屏幕操作事件TouchActions

测试人

软件测试

智慧考务管理系统

深圳亥时科技

生产管理系统(源码+文档+部署+讲解)

深圳亥时科技

融合数据的“聚宝盆”:政企业务资源树

鲸品堂

运营商 政企 企业号 2024年10月PK榜

陶瓷制品生产管理MES系统解决方案

万界星空科技

mes 万界星空科技mes 智能制造业 陶瓷 陶瓷制品

国际专线网络:加速全球化贸易

Ogcloud

SD-WAN国际专线 国际专线 国际网络专线 跨国网络专线

Amazon Q 初体验,享受AI带来的效率提升_亚马逊云科技_airmelt_InfoQ精选文章