QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

使用 Amazon Q Developer 作为 AI 编码助手,重新构想软件开发

  • 2023-11-28
    北京
  • 本文字数:2435 字

    阅读完需:约 8 分钟

大小:1.14M时长:06:39
使用 Amazon Q Developer 作为 AI 编码助手,重新构想软件开发

在 Amazon CodeWhisperer 正式发布后,许多客户都已经使用它来简化和精简其软件开发方式。CodeWhisperer 使用由根基模型提供支持的生成式人工智能来理解代码的语义和上下文,并提供相关且有用的建议。它有助于更快、更安全地构建应用程序,并且可以在不同层面提供帮助,从小建议到编写完整的函数和单元测试,帮助将复杂的问题分解为更简单的任务。


想象一下,您想提高代码测试覆盖范围或为应用程序实施细粒度的授权模型。当您开始编写代码时,CodeWhisperer 将在后台运行。它可以理解您的注释和现有代码,提供从代码段到整个函数或类的实时建议。这种即时帮助会根据您的流程进行调整,减少了在搜索解决方案或语法提示时进行上下文切换的需要。在开发过程中,使用编码助手可以提高专注度和工作效率。


当您遇到不熟悉的 API 时,CodeWhisperer 可以为您提供相关的代码建议,从而加快您的工作速度。此外,CodeWhisperer 还具有全面的代码扫描功能,可以检测难以发现的漏洞并提供修复建议。这与全球开放应用程序安全项目(OWASP)概述的最佳实践一致。这不仅使编码更高效、更安全,还让工作质量更有保证。


CodeWhisperer 还可以标记类似于开源训练数据的代码建议,并标记和删除可能被认为有偏见或不公平的有问题的代码。它为您提供相关开源项目的存储库 URL 和许可证,使您可以更轻松地查看它们并在必要时添加归因。


下面提供了几个 CodeWhisperer 实际应用的示例,这些示例涵盖了软件开发的不同领域,从原型设计和入门到数据分析和权限管理。

CodeWhisperer 可加快原型设计和入职培训


一个以有趣的方式使用 CodeWhisperer 的客户是 BUILDSTR,这是一家提供专注于平台开发和现代化的云工程服务的咨询公司。他们在后端使用 Node.js 和 Python,在前端主要使用 React。


我与 BUILDSTR 的联合创始人 Kyle Hines 进行了交谈,他说:“在对不同客户不同类型的开发项目利用 CodeWhisperer 的过程中,我们已经看到了它对原型设计的巨大影响。例如,我们能够以极快的速度为与其他亚马逊云科技服务(例如 Amazon DynamoDB)交互的 Amazon Lambda 函数创建模板,这给我们留下了深刻的印象”。 Kyle 说,他们现在在原型设计上花费的时间减少了 40%,而且他们注意到客户环境中存在的漏洞数量减少了 50% 以上。



Kyle 补充说:“由于招聘和培养新人才是咨询公司的一项长期工作,因此我们利用 CodeWhisperer 对新开发人员进行入职培训,它帮助 BUILDSTR Academy 将入职培训的时间和复杂性减少了 20% 以上。”

CodeWhisperer 用于探索性数据分析


Wendy Wong 是一名业务绩效分析师,在 Service NSW 和 AI 敏捷项目中构建数据管道。由于她对社区的贡献,她还被评为了 亚马逊云科技数据大侠。她表示,当她使用统计和可视化工具分析数据集以获取其主要特征的摘要时,Amazon CodeWhisperer 显著加快了探索性数据分析过程。


她认为 CodeWhisperer 是一个快速、用户友好且可靠的编码助手,可以准确地推断出她编写的每一行代码的意图,并最终通过其最佳实践建议帮助提高代码质量。


“使用 CodeWhisperer,我不必记住每一个细节,因为它可以准确地自动完成我的代码和注释,大大简化了代码编译”,她分享道,“以前,我需要花 15 分钟来设置数据准备预处理任务,但现在只需要 5 分钟就能准备好”。



Wendy 说,通过将这些重复的任务委托给 CodeWhisperer,她的工作效率得到了提高,她写了一系列文章来解释如何使用 CodeWhisperer 来简化探索性数据分析。


另一个用于浏览数据集的工具是 SQL。Wendy 正在研究 CodeWhisperer 如何为不是 SQL 专家的数据工程师助力。例如,她注意到他们只需要求其“写入多个联接”或“编写子查询”就可以快速获得要使用的正确语法。


CodeWhisperer 可加快测试和其他日常任务


我有幸与亚马逊云科技开发人员关系平台团队的软件工程师共事了一段时间。这个团队的工作内容包括构建和运营 community.aws 网站。



Nikitha Tejpal 的工作主要围绕 TypeScript,CodeWhisperer 可以在她输入时提供有效的自动完成建议,从而帮助她完成编码过程。她说她特别喜欢 CodeWhisperer 帮助进行单元测试的方式。


“我现在可以专注于编写正面测试,然后使用注释让 CodeWhisperer 为相同的代码提供负面测试建议”,她说,“这可以将我编写单元测试所需的时间缩短 40%”。


她的同事 Carlos Aller Estévez 依靠 CodeWhisperer 的自动完成功能为他提供一两行代码建议,以补充他现有的代码,然后,他再自行判断是接受还是忽略这些代码。其他时候,他会主动利用 CodeWhisperer 的预测功能为他编写代码。“如果我明确想让 CodeWhisperer 为我编码,我会写一个方法签名,并在注释中说明我的需求,然后等待自动完成”,他解释说。


例如,当 Carlos 的目标是检查用户是否拥有给定路径或其任何父路径的权限时,CodeWhisperer 根据 Carlos 的方法签名和注释为部分问题提供了一个巧妙的解决方案。生成的代码会检查给定资源的父目录,然后创建所有可能的父路径的列表。然后,Carlos 对每条路径进行了简单的权限检查,以完成实施。


“CodeWhisperer 可以帮助我处理算法和实施细节方面的工作,这样我就有更多时间思考大局,例如业务需求,并创建更好的解决方案”,他补充说。



CodeWhisperer 是一名多语言团队合作者


CodeWhisperer 通晓多种语言,支持 15 种编程语言的代码生成:Python、Java、JavaScript、TypeScript、C#、Go、Rust、PHP、Ruby、Kotlin、C、C++、Shell 脚本、SQL 和 Scala。

CodeWhisperer 还是一名团队合作者。除了 Visual Studio (VS) Code 和 JetBrains 系列 IDE(包括 IntelliJ、PyCharm、GoLand、CLion、PhpStorm、RubyMine、Rider、WebStorm 和 DataGrip)之外,CodeWhisperer 还可用于 JupyterLabAmazon Cloud9Amazon Lambda 控制台和 Amazon SageMaker Studio


在亚马逊云科技,我们致力于通过投资开发新服务来满足客户的需求,帮助客户将负责任的人工智能从理论转变为实践,让他们能更轻松地识别和缓解偏见,提高可解释性,并帮助保持数据的私密性和安全性。

2023-11-28 14:088136

评论

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

云服务器一年低至81元!2023双十一云服务器降价大盘点

学IT的小树叶

服务器 云服务器 阿里云服务器 海外云服务器

热换站2D组态 热换机组监测控制系统

2D3D前端可视化开发

物联网 组态软件 智慧供暖 城市换热站 换热机组

爆款元服务!教你如何设计高使用率卡片

HarmonyOS开发者

HarmonyOS

大模型训练:推动自然语言处理发展的强大引擎

百度开发者中心

自然语言处理 深度学习 大模型

数据库性能优化新选择:NineData慢查询分析

NineData

数据库 架构 数据分析 服务器 优化

图形化探索:快速改造单实例为双主、MGR、读写分离等架

GreatSQL

greatsql

记一次线上问题引发的对 Mysql 锁机制分析 | 京东物流技术团队

京东科技开发者

MySQL 数据库 死锁 间隙锁 企业号11月PK榜

飞码LowCode前端技术系列:如何便捷快速验证实现投产及飞码探索 | 京东云技术团队

京东科技开发者

Vue 前端 低代码 企业号11月PK榜

Excel LTSC 2021 中文破解版 Excel LTSC 2021 最新激活下载

iMac小白

Excel2021 Excel激活版 Excel破解版 Excel下载

率先支持Kuasar!iSulad Sandbox API 简化调用链,沙箱管理能力增强

华为云开发者联盟

云原生 后端 华为云 华为云开发者联盟

即时通讯技术文集(第23期):IM安全相关文章(Part12) [共15篇]

JackJiang

网络编程 即时通讯 IM

文心生物计算大模型重磅升级,构象预测准确度全面提升!

飞桨PaddlePaddle

大模型 文心 文心生物计算大模型

MAMP Pro for Mac激活版下载(PHP/MySQL开发环境)

iMac小白

MAMP PRO for Mac MAMP Pro破解 MAMP Pro Mac下载

Milvus性能优化提速之道:揭秘优化技巧,避开十大误区,确保数据一致性无忧,轻松实现高性能

汀丶人工智能

人工智能 Milvus 向量数据库 检索系统

pycharm pro 中文永久破解版下载

iMac小白

人工智能视频增强软件Topaz Video AI for mac 完美激活版下载

iMac小白

大模型训练中的学习率设定与warm up策略

百度开发者中心

深度学习 大模型

2023年好用的远程协同运维工具当属行云管家!

行云管家

IT运维 远程运维 远程连接 远程系统

SnailSVNPro激活专业版:Mac电脑专业的SVN客户端

iMac小白

SnailSVN Pro SnailSVN Pro下载 SnailSVN Pro mac

ChatGLM3-6B:新一代开源双语对话语言模型,流畅对话与低部署门槛再升级

汀丶人工智能

人工智能 自然语言处理 深度学习 大语言模型 chatglm3

最强大模型训练芯片H200发布!141G大内存,AI推理最高提升90%,还兼容H100

Openlab_cosmoplat

用强数据类型保护你的表单数据-基于antd表单的类型约束 | 京东云技术团队

京东科技开发者

数据类型 表单设计 数据类型位数 企业号11月PK榜

大模型训练:量化策略与优质数据集的重要性

百度开发者中心

人工智能 大模型

定做舞台租赁LED显示屏要注意什么

Dylan

LED LED显示屏 led显示屏厂家 户内led显示屏

深入跨域 - 从初识到入门 | 京东物流技术团队

京东科技开发者

前端 跨域 WMS仓库管理 企业号11月PK榜

ABBYY FineReader PDF 15 for Mac中文激活版

iMac小白

Java基础面试题【分布式】组件

派大星

Java 面试题

冰点还原精灵Deep Freeze for mac

展初云

Mac 系统恢复 冰点还原精灵

G口服务器有多快

Geek_f19a80

服务器

使用 Amazon Q Developer 作为 AI 编码助手,重新构想软件开发_生成式 AI_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章