本文作者 Sébastien Stormacq
上个月,亚马逊云科技正式推出了 Amazon Q Developer 的定制功能,帮助您在集成开发环境(IDE)中使用内联代码自动补全代码,同时也推出了聊天自定义功能预览版。您现在可以定制 Amazon Q,以便在 IDE 代码编辑器和聊天中从私有代码仓库生成特定的代码建议。
Amazon Q Developer 是一款生成式 AI 编码助手。它通过在IDE中根据现有注释和代码提供代码建议,帮助软件开发人员加快应用程序开发进度。Amazon Q 使用的是在 Amazon 和开源项目的数十亿行代码上训练的大型语言模型(LLM)。
Amazon Q 可在您的 IDE 中使用,您可以下载 JetBrains、Visual Studio Code和Visual Studio 的扩展插件。在 IDE 文本编辑器中,它会在您键入或输入注释时建议代码或完整函数。您还可以与 Amazon Q Developer 聊天,要求它为特定任务生成代码或解释您正在使用的代码库中的代码片段。
有了新的定制功能,开发人员现在可以根据自己组织的内部库、应用程序接口、资源包、分类和方法获得更多相关的代码建议。
例如,假设一名金融公司的开发人员被要求编写一个计算客户总投资组合价值的函数。现在,开发人员可以在注释中描述意图或键入一个函数名。
例如:computePortfolioValue(customerId: String),Amazon Q 就会根据从您组织的私有代码库中学到的示例推荐实现该函数的代码。
开发人员还可以在聊天中询问有关其组织代码的问题。在上面的例子中,假设开发人员是新加入团队,不知道如何检索客户 ID。他可以在聊天中用简单的英语提问:我如何连接到数据库来检索特定客户的 ID?
Amazon Q 可能会回答:我找到了一个函数,可以根据客户的姓和名检索客户 ID,该函数使用数据库连接 XYZ...
作为管理员,您可以从内部存储库(如 GitHub、GitLab 或 BitBucket)或 Amazon S3存储桶创建自定义。它有助于 Amazon Q 理解意图,确定哪些内部和公共 API 最适合该任务,并生成代码建议。
Amazon Q 定制功能满足您对亚马逊云科技强大的数据隐私和安全性的期望。您与 Amazon Q 共享的代码库对您的组织来说是私有的,我们不会用它来训练我们的基础模型。一旦定制部署完成,推理端点就只对您组织内的开发人员开放。基于您的代码建议不会出现在另一家公司开发人员的 IDE 中。您可以决定哪些开发人员可以访问每个单独的定制,并可以跟踪指标来衡量您部署的定制的性能。
我们基于领先的技术,如检索增强生成(RAG),构建了 Amazon Q 定制功能。这篇详细博客文章分享了有关 Amazon Q 定制功能背后的科学原理。
从我们在去年 10 月 17 日推出预览版以来,我们增加了两项新功能:更新自定义功能和在集成开发环境中自定义聊天功能。
您组织的代码库在不断演进,因此您希望 Amazon Q 始终建议最新的代码片段。Amazon Q 管理员现在可以在亚马逊云科技管理控制台中通过一步操作启动更新流程。管理员可以根据代码仓库上的最新提交安排定期更新,以确保开发人员始终收到高度准确的代码建议。
通过新的聊天定制功能(预览版),您组织内的开发人员可以在 IDE 中选择一段代码并将其发送到聊天中,以询问所选代码的作用。开发人员还可以就与其组织代码库相关的一般性问题提问,例如“我如何连接到数据库来检索特定客户的 ID?”
亚马逊云科技管理控制台
扫码了解更多
使用方式
在这个演示中,我决定重点介绍近期正式推出的新定制功能。要快速了解如何创建定制、激活它以及授予开发人员访问权限,请阅读 Donnie 的精彩文章。
要更新现有的自定义选项,我导航到 Amazon Q 控制台页面的“自定义”部分。我选择要更新的自定义选项,然后选择“操作”和“创建新版本”。
类似于我创建自定义时所做的操作,现在选择源代码仓库,然后选择“创建”。
创建定制的新版本可能需要一些时间,因为这取决于需要摄取的代码量。准备就绪后,新版本将出现在“版本”选项卡下。您可以将新版本的评估分数与之前的版本进行比较,并决定是否激活它以供您的开发人员使用。您可以随时恢复到以前的版本。
我喜欢主动自定义的一个原因是,我可以监控它们的有效性,以帮助提高组织中开发人员的工作效率。
在“仪表板”页面上,我可以跟踪“用户活动”。我可以跟踪每日活跃用户数、已生成的代码行数、已执行的安全扫描次数等。
Amazon Q 生成更多指标并将它们发布到 Amazon CloudWatch。我可以构建 CloudWatch 仪表板来监控我部署的定制项的性能。例如,这里有一个自定义的 CloudWatch 仪表板,用于监控代码建议的块接受率和行接受率,并按编程语言进行细分。
支持的编程语言
您可以在使用 Java、JavaScript、TypeScript 和 Python 编写的代码库上自定义定制 Amazon Q 的建议。在创建定制或在 IDE 中提供定制推荐时,将不会使用其他 Amazon Q 支持的语言(如 C#、Go、Rust、PHP、Ruby、Kotlin、C、C++、Shell 脚本、SQL 和 Scala)编写的文件。
亚马逊云科技 IAM Identity Center
扫码了解更多
Amazon Q Developer Professional 订阅
扫码了解更多
亚马逊云科技
扫码了解更多
左右滑动查看更多
本篇作者
Sébastien Stormacq
亚马逊云科技首席开发者步道师。自八十年代中期第一次接触 Commodore 64 以来,Seb 一直从事代码编写工作。他对软件架构、开发人员工具和移动计算领域充满热情,致力于激励构建者更好使用和发挥亚马逊云科技的价值。
记得分享、点赞、在看哟~给你的云技能充个电!
点击阅读原文查看博客,获得更详细内容