亚马逊AWS官方博客

Amazon Q Developer 现已正式上市,其中包括重塑开发者体验的全新功能



去年,当 Amazon Web Services(AWS)推出 Amazon Q Developer 预览版时,它不仅改变了我与 AWS 服务互动的体验,同时也每天最大限度地发挥了 AWS 服务的潜力。这款基于生成式人工智能(生成式 AI)的助手经过训练,拥有 AWS 17 年的知识和经验,帮助我在 AWS 上构建应用程序、研究最佳实践、进行故障排除和解决错误。

今天,我们宣布 Amazon Q Developer 正式上市。在本次发布中,我们提供了一些更新内容,包括新增功能。我们开始吧!

新增功能:Amazon Q Developer 了解您的 AWS 账户资源
这项新功能可帮助您了解和管理在 AWS 上的云基础设施。借助此功能,您可以使用自然语言提示列出和描述您的 AWS 资源,最大限度减少在浏览 AWS 管理控制台和整理文档页面的所有信息时所遭遇的阻力。

要开始使用,您可以导航到 AWS 管理控制台并选择 Amazon Q Developer 图标。

利用这项新功能,我可以让 Amazon Q Developer 列出我的所有 AWS 资源。例如,如果我询问 Amazon Q Developer,“列出我的所有 Lambda 函数”,Amazon Q Developer 便会返回响应,其中包含我所请求的一组 AWS Lambda 函数以及深度链接,这样我就可以轻松导航到每个资源。

尝试以下提示:列出我的所有 Lambda 函数。

我还可以列出位于其他 AWS 区域的资源,而无需浏览 AWS 管理控制台。

尝试以下提示:列出我在新加坡地区的 Lambda 函数。

不仅如此,此功能还可以生成 AWS 命令行界面(AWS CLI)命令,这样我就可以立即进行更改。在这里,我要求 Amazon Q Developer 更改我的 Lambda 函数的超时配置。

尝试以下提示:将新加坡地区的 Lambda 函数 <AWS LAMBDA 函数的名称> 的超时时间更改为 10 秒。

我可以看到,Amazon Q Developer 生成了一条 AWS CLI 命令供我执行该操作。接下来,我可以将此命令复制并粘贴到我的终端中以执行更改。

$> aws lambda update-function-configuration --function-name <AWS_LAMBDA_FUNCTION_NAME> --region ap-southeast-1 --timeout 10
{
    "FunctionName": "<AWS_LAMBDA_FUNCTION_NAME>",
    "FunctionArn": "arn:aws:lambda:ap-southeast-1:<ACCOUNT_ID>:function:<AWS_LAMBDA_FUNCTION_NAME>",
    "Runtime": "python3.8",
    "Role": "arn:aws:iam::<ACCOUNT_ID>:role/service-role/-role-1o58f7qb",
    "Handler": "lambda_function.lambda_handler",
    "CodeSize": 399,
    "Description": "",
    "Timeout": 10,
...
<truncated for brevity> }

我真正喜欢这项功能的地方在于,它最大限度地减少了获取我在 AWS 管理控制台中的账户信息和生成 AWS CLI 命令所需的时间和精力,这样我就可以立即实施我需要的任何更改。这可以帮助我专注于用于管理 AWS 资源的工作流。

Amazon Q Developer 现在可以帮助您了解成本(预览版)
为了充分发挥云支出的价值,我需要全面了解我的云成本。利用这项功能,我可以使用自然语言获得 AWS 成本相关问题的答案。此功能通过从 AWS Cost Explorer 成本管理服务检索和分析成本数据来发挥作用。

最近,我一直在使用 Amazon SageMaker JumpStart 制作一个生成式人工智能演示,现在正是时候,因为我需要知道总支出。因此,我向 Amazon Q Developer 询问以下提示,来了解我在今年第一季度的支出。

尝试以下提示:第一季度成本最高的三项服务是什么?

根据 Amazon Q 的响应,我可以选择 Cost Explorer 链接以进一步调查此结果,这将带我进入 AWS Cost Explorer 成本管理服务控制面板。然后,我可以继续使用以下提示:

尝试以下提示:列出我的账户中逐月增量最大的服务。提供细节和分析。

简而言之,这一功能让我更容易深入了解我的云支出,并获得宝贵的洞察。

适用于 IDE 的 Amazon Q 扩展
作为更新的一部分,我们还发布了适用于 Visual Studio CodeJetBrains IDE 的 Amazon Q 集成式开发环境(IDE)扩展。现在,您将在 IDE 市场中看到两个扩展:(1)Amazon Q 和(2)AWS Toolkit。

如果您是新用户,在安装 Amazon Q 扩展后,将会在 IDE 中看到一个包含两个选项的登录页面:使用 AWS 构建者 ID 或单点登录。您可以继续正常使用 Amazon Q。

对于现有用户,您需要更新 IDE 中的 AWS Toolkit 扩展。完成更新后,如果有现有的 Amazon Q 和 Amazon CodeWhisperer 连接,即使它们已过期,也会自动为您安装新的 Amazon Q 扩展。

如果您使用的是 Visual Studio 2022,则可以使用 Amazon Q Developer 作为 AWS Toolkit for Visual Studio 2022 扩展的一部分。

免费访问 IDE 中的高级功能
如您所知,您可以使用 AWS 构建者 ID 开始在首选 IDE 中使用 Amazon Q Developer。此次发布后,您现在可以在 IDE 中免费使用 Amazon Q Developer 的两项现有高级功能,即用于软件开发的 Amazon Q Developer 代理程序用于代码转换的 Amazon Q Developer 代理程序。我对此次更新感到非常兴奋!

借助用于软件开发的 Amazon Q Developer 代理程序,Amazon Q Developer 可以帮助您为 IDE 中的项目开发代码功能。首先,在 Amazon Q Developer 聊天面板中输入/dev。我的同事 Séb 在使用这项功能进行支持案例项目时,与我分享了以下屏幕截图。他使用以下提示生成了一份在 AWS Lambda 中创建新 API 的实施计划:

尝试以下提示:添加 API 以列出所有支持案例。将此 API 作为新的 Lambda 函数公开

Amazon Q Developer 随即提供了一份初始计划,您可以持续迭代这份计划,直到您确定所有内容基本上都已涵盖在内。然后,您可以接受该计划并选择插入代码

您可以使用 AWS 构建者 ID 访问的另一个功能是用于代码转换的 Developer 代理程序。此功能将帮助您升级 IntelliJ 或 Visual Studio Code 中的 Java 应用程序。Danilo 去年介绍过这项功能,您可以在使用 Amazon Q Code Transformation 升级 Java 应用程序(预览版)中查看他的详细历程。

用于代码转换的 Amazon Q Developer 代理程序的功能改进
新的转换计划提供了特定于我的应用程序的详细信息,以帮助我了解整个升级过程。首先,在 Amazon Q Developer 聊天中输入 /transform,并为 Amazon Q 提供开始升级我的 Java 项目所需的详细信息。

在第一步中,Amazon Q 确定并提供有关 Java 开发工具包(JDK)版本、依赖项和需要更新的相关代码的详细信息。依赖项升级现在包括将流行的框架升级至最新的主要版本。例如,如果您使用 Spring Boot 进行构建,现在它会作为 Java 17 升级的一部分升级至版本 3。

在此步骤中,如果 Amazon Q 发现任何 Java 语言规范建议替换的已启用代码,它将在升级期间自动进行这些更新。这是对 Amazon Q 功能的一项全新增强,现已正式推出。

在第三步中,此功能将基于升级后的代码构建和运行单元测试,包括修复任何问题以确保升级后的代码编译过程顺利运行。

借助此功能,您可以将使用 Apache Maven 构建的 Java 8 和 11 应用程序升级至 Java 17 版本。要开始使用用于代码转换功能的 Amazon Q Developer 代理程序,您可以阅读使用 Amazon Q Code Transformation 升级语言版本并执行其中的步骤。我们还提供了示例代码供您尝试此功能。

注意事项

  • 可用性 — 要详细了解 Amazon Q Developer 功能的可用性,请访问 Amazon Q Developer 常见问题页面。
  • 定价 — Amazon Q Developer 现在提供两个定价等级 — Free(免费)和 Pro(每位用户每月 19 美元)。
  • 关于 AWS Skill Builder 的免费自定进度课程 — Amazon Q 简介是一门 15 分钟的课程,其中简要概述了基于生成式人工智能的助手 Amazon Q,以及使用它的用例和好处。该课程是 Amazon AI Ready 计划的一部分,该计划致力于到 2025 年为全球 200 万人提供免费的人工智能技能培训。

访问我们的 Amazon Q 开发者中心,了解深入的技术内容并探索如何加快软件开发工作。

祝大家构建顺利。
Donnie