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

Amazon Q 这些实用功能,开发者早就用上了

  • 2024-11-01
    北京
  • 本文字数:2298 字

    阅读完需:约 8 分钟

大小:1.09M时长:06:21
Amazon Q这些实用功能,开发者早就用上了

在麦肯锡 2024 年 5 月 30 日提供的一项名为“The state of AI in early 2024-Gen AI adoption spikes and starts to generate value”的调研中有这么一句话:人工智能在组织中最常见的两个使用职能是:“市场营销和销售”以及“产品和服务开发”,这两个职能是之前的研究确定采用人工智能可以产生最大价值的职能。调研的相关分析数据参考如下:



调查报告的结论在开源社区 Meetup 中得到印证。这个 Meetup 设置的 4 个演讲主题中,有三个是与生成式 AI 代码开发工具有关。来自于三家互联网大厂的产品经理分别分享了他们的大语言模型辅助开发工具,每一个工具都致力于提高开发效率和代码质量。除了生成式 AI 开发工具都有常规功能,如代码补全、单元测试、安全扫描等以外,在场的开发者还关注一些生产中的实际功能。这篇文章以 Amazon Q Developer 为例展开聊聊那些被开发者关注且用于生产的实用功能。


代码注释和文档生成


对于大多数开发者而言,编写项目文件比如.readme 和代码注释是一项繁琐且耗时的任务。然而,这些文档对于项目的可读性和维护性至关重要。Amazon Q Developer 能够帮助开发者自动生成详细且清晰的.readme 文件和代码注释。这个功能很实用,不仅节省了开发者的时间,还确保了文档的一致性和准确性。

对于大语言模型来说实现这个功能并不难,区别在于生成内容的可读性和准确性。这就需要大语言模型对整个项目的分析全面,对代码的理解准确,以及对于文档阅读者逻辑的合理把握。为了提供给开发者更好的开发体验,Amazon Q Developer 使用不同的大语言模型来分别完成项目理解和文档生成,以及处理代码理解。这样做的理由,出于不同的 LLM 对特定的使用场景各有擅长。就像开发者可以在 Amazon Bedrock 上选择不同的大语言模型来应对他们不同的生产场景一样。


Amazon Bedrock

https://aws.amazon.com/cn/bedrock/


在一些使用场景中 Amazon Q Developer 代码注释生成以及文档生成的功能,基本可以做到 90%的生成可用率。相关的 demo 视频展示,很快就可以在亚马逊云科技的视频频道里看到。


使用自然语言完成新功能的开发


Amazon Q 的另一个强大功能是通过自然语言开发新功能。开发者只需用自然语言描述他们的需求,Amazon Q 就能生成相应的代码。这种方式不仅降低了开发的门槛,使得非专业人士也能参与到开发过程中,还大大提高了开发效率。

举个例子:增加猜字游戏的复杂度。

1. 基于 Amazon Q 对整个游戏源代码理解的基础上,在集成在 IDE 中的 Amazon Q chart 中输入:


“As a user, I'd like to be able to select the difficulty of the word I'm guessing before starting a game. The difficulty changes the length of the word being guessed. The 3 levels of the game should be: Beginner with a 5 character word length, Intermediate with a 6 character word length and Advanced with  a 7 character word length”(需要注意的是目前 Amazon Q Developer 还不支持中文)。



2. Amazon Q 根据 prompt 生成了新功能实现计划,如下:



3. 不仅仅如此,如果对生成的计划满意,还可以让 Amazon Q 继续生成代码。这一切只需一个按钮。



Amazon Q 生成的代码是这样的:



点击文件名,打开其中一个被修改的文件。可以看到之前的代码与建议的代码之间的差异,同时支持在此进行其他修改。



生成的代码可能不是 100%准确或完整。如果对生成的代码不满意,可以通过 chat prompt 继续修改并重新生成代码,直到满意为止。


即将到来的更多新体验


在全球 Hero 峰会期间(Global Hero Summit),Amazon Q 展示了一些令人兴奋的新功能:

  • 定制化生成式 AI 模型-允许开发者从私有库和库中创建定制化的生成式 AI 模型。这意味着开发者可以根据自己的需求和项目特点,训练出更为贴合的生成式 AI 模型,从而提高开发效率和代码质量。

  • 代码库问答-通过聊天界面,开发者可以向 Amazon Q 提问关于代码库的问题。无论是代码结构、函数用途还是调试信息,Amazon Q 都能快速提供准确的答案,帮助开发者更好地理解和管理代码。

  •  .Net 代码转换-Amazon Q 具备强大的代码转换功能,尤其是在.Net 平台上。它可以自动将代码从一种语言转换为另一种语言,帮助开发者轻松实现跨平台开发。

  • 集成 Amazon SageMaker Studio 和 Eclipse IDE-Amazon Q 与 Amazon SageMaker Studio、Eclipse IDE 等开发环境无缝集成,使得开发者可以在熟悉的环境中使用 AI 工具,提高工作效率。

  • 使用自然语言更新亚马逊云科技账户资源-Amazon Q 允许开发者使用自然语言更新亚马逊云科技账户中的资源。这种方式不仅简化了资源管理流程,还降低了出错的风险。

  • 高级故障排除-Amazon Q 提供了高级故障排除功能,可以自动检测和修复系统中的复杂问题,确保系统的稳定性和可靠性。

目前这些功能大多都还在预览版阶段,但很快就可以用于生产。


亚马逊云科技账户资源

https://aws.amazon.com/cn/blogs/devops/chat-about-your-aws-account-resources-with-amazon-q-developer/


Amazon Q 的独特之处


其实每个生成式 AI 开发工具都有它的特点和适合的应用场景,就像 Amazon Bedrock 提供的十几种大语言模型一样。与其他生成式 AI 开发工具相比,Amazon Q 与亚马逊云科技提供的其它服务深度集成,对云资源也有更深度的理解。Amazon Q 不仅仅是一个辅助工具,更像是一个智能助手,随时随地为开发者提供帮助。无论是代码编写、调试,还是项目管理,Amazon Q 都能提供全面的支持。


云上开发的未来


随着云计算技术的不断发展,云上开发正成为一种趋势。Amazon Q 的出现,进一步推动了这一趋势。通过将开发环境和生成式 AI 工具整合到云端,开发者可以随时随地进行开发工作,提升工作灵活性和效率。此外,云上开发还提供了更强的计算能力,数据安全性以及弹性,确保开发过程的顺利进行。

云上开发的未来已来。您怎么看?


2024-11-01 16:157739

评论

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

构建可靠的磁盘系统:故障判定和自动化处理

焱融科技

云原生 运维自动化 高性能 分布式存储 超融合

CampusBulider(模模搭)学习笔记6:室内搭建

ThingJS数字孪生引擎

3D可视化 数字孪生

三大业界大佬的DevOps解决方案

码语者

DevOps

IOS端音频的采集与播放

floer rivor

音视频

LeetCode题解:341. 扁平化嵌套列表迭代器,DFS,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

MySQL 数据库学习笔记(2)

lenka

5月日更

你习惯写注释吗?

ES_her0

5月日更

【LeetCode】二叉树的堂兄弟节点Java题解

Albert

算法 LeetCode 5月日更

SimpleDateFormat线程不安全的5种解决方案!

王磊

Java 后端 5月日更

比物理线程都好用的C++20的协程,你会用吗?

华为云开发者联盟

事件驱动 嵌入式 事件 主循环 C++20

系统思考力建立3个简单操纵方法

风翱

系统性思考 5月日更

模块四:课后作业

黄先生

架构训练营

模块四作业

c

架构实战营

图像灰度与灰阶的纠结:gray level/scale译文释义

老猿Python

灰度 图形图像处理 数字图像处理 灰阶 gray scale

「打碎质疑」,阿里云未来何止600亿?

ToB行业头条

云计算 阿里云 盈利模式

针对 Restful 协议下的接口测试平台设计

GrowingIO技术专栏

RESTful

Python 正则表达式

若尘

正则表达式 正则 Python编程 5月日更

Golang 别名类型

escray

学习 极客时间 Go 语言 5月日更

下周极客时间课程学习计划

IT蜗壳-Tango

5月日更

架构实战训练营 - 模块4 - 作业

Presley

网络攻防学习笔记 Day16

穿过生命散发芬芳

5月日更 网络攻防

垄断

小天同学

商业 市场垄断 5月日更

《Spring 手撸专栏》| 开篇介绍,我要带新人撸 Spring 啦!

小傅哥

spring 后端 小傅哥 面经 手撸Spring

密码学系列之:IDEA

程序那些事

IDEA 密码学 程序那些事

五行合一,微服务运行态建设的“内功心法”

BoCloud博云

微服务

模块4作业-Redis方案

高亮

架构训练营

K8s二开之 client-go 初探

雪雷

Kubernetes Go 语言

🍃【Spring原理系列】让你知道真正的“AOP”

洛神灬殇

spring aop 面向切面 spring aop 5月日更

变电站运维推陈出新?无人值守却更胜一筹

一只数据鲸鱼

数据可视化 3D可视化 智慧电网 变电站

缓存数据一致性 - 架构师峰会演讲实录

万俊峰Kevin

缓存 微服务 cache 分布式缓存 Go 语言

Docker 存储调整的几种方法

运维研习社

Docker 5月日更 存储管理

Amazon Q这些实用功能,开发者早就用上了_亚马逊云科技_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章