写点什么

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:157791

评论

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

云图说|初识华为云数据库GaussDB(for openGauss)

华为云开发者联盟

数据库 开源 GaussDB GaussDB(for openGauss) 华为云数据库

警惕商标到付快递的骗局

石云升

商标 诈骗 6月日更

Keepalived+Nginx 搭建高可用集群

逸少

nginx 高可用 keepalive

Python——字典的遍历

在即

6月日更

使用 Python 对数据进行压缩

★忆先★

使用poetry进行Python项目开发

★忆先★

Python

一文介绍备机重建各种方法的实现机制

华为云开发者联盟

主机 集群 GaussDB(DWS) 备机重建 备机

JAVA笔记(四)--三大结构语句

加百利

Java 后端 6月日更 结构语句

专访关涛:阿里EB级大数据体系,背后的计算平台竟是这样(采访提纲)

花花

试用期 签约计划

网络研讨会|想弄明白应用安全?我们为你准备了5个锦囊!

鉴释

DevSecOps 安全编码规范 应用安全 静态分析

盘点用jQuery框架实现“for循环”的四种方式!

华为云开发者联盟

jquery 遍历 js 框架 for循环

优秀的 Scrum Master 应当是仆人式的领导

万事ONES

Scrum 敏捷开发 ScrumMaster ONES

商用RTC vs 基于开源WebRTC自研 开发者该如何选择?

融云 RongCloud

150亿美元,CANVA可画市场价值为何堪比金蝶、用友?

ToB行业头条

SaaS 可画 品牌视觉管理

全面赋能泛娱乐社交场景

anyRTC开发者

音视频 WebRTC 泛娱乐社交

SpringBoot之ScopedProxyMode

梦倚栏杆

最牛的编码套路

hasWhere

智慧水务|大坝水利可视化管理,综合态势一屏掌握

一只数据鲸鱼

数据可视化 智慧水务 三维可视化 水利 水力发电

一文讲全了Python类和对象内容

华为云开发者联盟

Python

用 Go struct 不能犯的一个低级错误!

煎鱼

Go 语言

【融云技术】Native C/C++ 服务适配多指令集 CPU 漫谈

融云 RongCloud

项目进度管理 | 如何为项目制定里程碑?

万事ONES

项目管理 研发管理 研发管理工具 ONES

线上程序cpu占用过高、程序死锁,该如何定位问题?

李尚智

EasyRecovery---U盘数据恢复技巧

淋雨

数据恢复 EasyRecovery 文件恢复

HarmonyOS Connect伙伴峰会于厦门举办 硬件生态快速发展

科技汇

Python3.10中的结构化模式匹配语法

★忆先★

Python

为什么服务实例在隔离之后还在继续处理请求?

BUG侦探

TCP 半关闭连接 接收缓存

初探Deno.js

★忆先★

deno

你真的会设置密码吗?

卢卡多多

密码学 6月日更

我想挑战下我的软肋,动手实现个Spring应用上下文!

小傅哥

spring 应用上下文 资源加载 自动识别 扩展机制

Android客户端网络预连接优化机制探究

vivo互联网技术

android TCP HTTP

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