当前位置: 首页 > article >正文

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.kler.cn/a/163030.html

相关文章:

  • 搭建监控系统Prometheus + Grafana
  • JavaScript Cookie 与 服务器生成的 Cookie 的区别与应用
  • 详解kafka消息发送重试机制的案例
  • linux安装netstat命令
  • HTMLCSS: 实现可爱的冰墩墩
  • 如何线程安全的使用HashMap
  • JAVA程序如何打jar和war问题解决
  • CentOS系统装机流程
  • 【场景测试用例】上传文件
  • 【数据开发】Hive 多表join中的条件过滤与指定分区
  • ReactNative性能优化实践
  • Azure云WAF服务的CRS规则和DRS规则区别
  • 大数据技术3:数据仓库的ETL和分层模型
  • vite配置nework访问ip
  • 电脑知识:关于电脑使用的误区
  • Linux查看openSSL版本
  • 24、文件上传漏洞——Apache文件解析漏洞
  • 【Python】 Python web开发库大全
  • 云贝教育 |【技术文章】PostgreSQL中误删除数据怎么办(一)
  • java:slf4j、log4j、log4j2、logback日志框架的区别与示例
  • 实例分割网络:Mask RCNN
  • IBM Qiskit量子机器学习速成(四)
  • pytorch中五种常用随机矩阵构造方法:rand、randn、randn_like、randint、randperm
  • CSS import 规则
  • 医院信息系统源码,采用JAVA编程,支持跨平台部署应用,满足一级综合医院(专科二级及以下医院500床)的日常业务应用
  • 从互联网到云计算再到 AI 原生,百度智能云数据库的演进