挑战三大任务,Amazon CodeWhisperer 生成代码的能力到底如何?
Amazon CodeWhisperer是一款 AI 编码配套应用程序,可在 IDE 中生成整行代码和完整的函数代码建议,以帮助您更快地完成更多工作。在本系列文章中,我们将收录广大开发者的实战心得,为您详细介绍 Amazon CodeWhisperer 的相关信息,帮助您获得更好的体验。敬请关注!随着生成式 AI 逐渐深入各行各业,AI 大模型编程越来越多。虽然 AI 编码暂时无法完全替代程序员,
Amazon CodeWhisperer
是一款 AI 编码配套应用程序,可在 IDE 中生成整行代码和完整的函数代码建议,以帮助您更快地完成更多工作。
在本系列文章中,我们将收录广大开发者的实战心得,为您详细介绍 Amazon CodeWhisperer 的相关信息,帮助您获得更好的体验。敬请关注!
随着生成式 AI 逐渐深入各行各业,AI 大模型编程越来越多。虽然 AI 编码暂时无法完全替代程序员,但是利用生成式 AI 编程工具来辅助开发,已经是潮流趋势所向。
亚马逊云科技就推出了一款 AI 编程助手—— Amazon CodeWhisperer,通过 AI 技术,可以自动分析代码库中的模式和常见用法,从而生成符合标准的代码片段。其旨在帮助开发人员节省时间和精力,提高开发者的工作效率。
本文体验了 CodeWhisperer 编程工具,在这里为大家进行分享。另外,亚马逊云科技还在明天(9月23日)14:00为各位开发者准备了《编程进化论——高效编程”离我们到底还有多远?》的直播分享,由业界专家解码 CodeWhisperer 特点与优势,大家可以下滑至结尾了解详情!
当前 CodeWhisperer 支持集成到几种开发环境中,VS、Jetbrains、JupyterLab,Amazon Lamda 等。由于平时用 C++/Python/Go 比较多,因此本文使用 JetBrains 的 Clion 来测试 CodeWhisperer 生成 C++的能力。
首先安装好 Clion(具体步骤可以参考亚马逊官网指导书)。进行 Clion 后,先通过 tools 搜索安装 Amazon Toolkit,安装好后启动就可以使用 CodeWhisperer 了。第一次启动时会生成一个验证码,链接到你的亚马逊账号进行授权,大家按照提示操作即可。
下面进入正题:
使用 CodeWhisperer 生成代码,需要添加注释。它会根据注释一行一行完成代码编写,并且会帮助你完成要编写代码的注释。
任务一
测试生成全部代码能力,主题完成一个 TCP Server 收发数据,下面图里是一步步的结果:
最终完成的代码如下:
生成过程并非像 ChatGPT 一样,一股脑的代码全部“扔”给你,还是需要开发同学逐行插入确认的。这种方式的好处在于,可以在开发过程中自己一行行确认准确性及排查问题,从而避免在纷乱成堆的代码中重新确认逻辑。
任务二
推荐相应功能的开源库以及使用已集成的开源包进行代码生成测试,主题完成一个 SIP 消息处理函数,下面图片展示其完成过程和结果。
(1)使用 osip2 解析 sip 消息,下面是生成的代码,基本符合预期:
(2)期望重新推荐一个 sip 消息解析库,不知道是已经集成了解析库还是还是什么其他原因,没有成功。
可见 CodeWhisperer 对于 Github、Gitee 以及互联网上标准开源库是进行过训练的,可以读懂 oSip2 是一个很有名的 sip 协议栈,因此可直接使用其 API 根据注释生成可用代码。
任务三
基于已完成部分代码,根据注释生成补全代码,CodeWhisperer 也可以根据上下文和注释补齐代码的相应功能,建立一个资源分配函数(带一定的业务功能),完成一半的部分(>4),让 CodeWhisperer 完成剩下的部分(<4),下面展示结果:
最终的结果:
至此任务三测试完成,生成了基本可用的代码。
总结来说,CodeWhisperer 对于能够更高效地编写代码有一定的帮助:
首先,在集成开源或者第三方不熟悉的代码库时,它可以为开发者们节省大量的时间去学习和查阅 API 接口文档,让大家能够专注于改进和测试;
其次,可以帮助开发者们节省繁琐的重复性工作,比如上面的 TCP Socket 处理。
希望 CodeWhisperer 未来可以生成整体代码段的方式,对于非复杂逻辑代码的场景,效率一定会更高。期待!
活动预告
编程进化论——高效编程”离我们到底还有多远?
明天(9月23日)14:00,我们邀请到了业界专家德勤管理咨询高级专家谭鹏,为您解码 CodeWhisperer 特点与优势,为开发者解析高效强大的输出原理。您不仅能够与专家零距离交流,更有机会拿到亚马逊云科技精美周边礼品!
扫描二维码了解详情和观看直播。期待您的参与!
星标不迷路,开发更极速!
关注后记得星标「亚马逊云开发者」
听说,点完下面4个按钮
就不会碰到bug了!
更多推荐
所有评论(0)