开工福利|免费学 2200+ 精品线上课,企业成员人人可得! 了解详情
写点什么

Amazon Q 审查:最新的 AI 代码伴侣

  • 2023-12-13
    北京
  • 本文字数:1746 字

    阅读完需:约 6 分钟

大小:882.92K时长:05:01
Amazon Q 审查:最新的 AI 代码伴侣

亚马逊云科技推出了一项机器学习支持的服务,该服务通过根据开发人员在自然语言中的评论和他们在集成开发环境中的代码生成代码建议来帮助提高开发人员的工作效率。这项名为 Amazon CodeWhisprer 可以免费使用。类似于微软去年推出的 GitHub copilot 。


在过去的几个月里,我有机会在几个用例中试验了这项服务。作为一名机器学习 (ML) 开发人员,我拥有利用 ML 帮助开发 ML 解决方案的优势。因此,我在访问此服务后写了一些观察。此外,我正在就如何使其更智能和更易于访问提供具体建议。

服务在行动


该服务根据代码编辑器中的注释和同一文档中的先前代码提供实时代码建议。该服务可以建议行完成或完整的代码块(例如,方法)。


在 Visual Studio 上,有一些方便的快捷方式使服务的使用更加方便。启用扩展后,该服务提供类似于许多 IDE 支持的自动完成功能的在线推理。但是,用户可以点击 (Alt+C) 来查看推荐,而无需等待响应。

下面是编写著名的二分查找方法的示例



有趣的是,该服务可能会建议多个代码片段,这些代码片段可以轻松导航(使用左/右箭头)以选择最合适的推荐。



Amazon CodeWhisprer 就像是试图用正确的代码在您耳边耳语的伴侣。因此,它是一个非常花哨和超级描述性的名字。在命名服务方面做得很好。

深入探讨,如何充分利用服务?


AI 代码伴侣是一个强大的工具,可以提高开发人员的工作效率。尽管有人认为这样的工具将来可能会取代开发人员,但现在下结论还为时过早,因为该服务与任何其他服务一样:Garbage in Garbage out。也就是说,它在很大程度上取决于返回良好结果所需的输入。以下是输入质量如何完全影响输出质量的示例。


在这里,提供的描述很模糊,没有明确的要求,所以在等待比较长的时间后,输出是混乱的导入。



随着输入描述变得更加清晰,输出变得更好,如下所示,这是一个类似但更清晰的问题。



此外,随着用户添加更多上下文,即开发人员编写更多代码,推荐的质量显着提高。例如,与在同一文档上的孤立任务或在项目早期上下文仍然不够的情况下相比,在处理一个项目时预计会获得更快和更个性化的结果。


尽管如此,该服务预计不会为臭名昭著的自定义任务返回有用的答案。下面是一个同样的二分查找问题的例子,但对输入格式做了些许修改。



显然,引擎无法理解对问题的轻微修改(即,允许重复的元素)并且仍然产生与前面建议的相同的代码。

服务能不能更好?


由于该服务仍处于预览阶段,预计会遇到许多不足。以下是可以使服务变得更好的精选操作列表。

推理速度:


正如在上面的示例中可能指出的那样,该服务需要花费大量时间来提出建议。我相信这方面还有很大的改进空间。

一致性和实时性:


该服务有望在开发人员编写代码时提供实时建议。但是,实时建议可能不会在特定时刻给出任何输出。令人惊讶的是,按下 (Alt+C) 快捷键会返回可行的解决方案,而无需更改任何内容(即同时即时)。

最终用户定制:


引擎盖下的推荐引擎使用了一个巨大的代码库,这些代码库来自许多为不同目的而编写的源代码。为某些项目接受的源启用更多自定义是合理的。


此外,根据项目主题预测代码可能是有益的。例如,机器学习开发与开发移动应用程序完全不同。


作为另一个示例,用户可能想要处理需要设计和聚合的多个代码块的项目。在其他项目中,可能需要优先考虑线路完成而不是阻止建议。


自定义示例列表非常庞大,需要仔细设计。

解决方案排名:


建议多种解决方案是一个很棒的功能。然而,在实践中,这些解决方案的排名并不是最优的,用户需要浏览所有解决方案才能找到正确的建议。这可能很乏味,并且会降低整体生产力。

问题定制:


该引擎有效地理解了训练语料库中发现的常见问题。然而,它更难适应同一问题的新挑战。

结论


总而言之,Amazon CodeWhisprer(以及一般的 AI 代码伴侣)毕竟不是可以解决所有问题的魔法。但是,它是一个很好的工具,可以通过专注于正确的问题而不是繁琐的重复性任务来提高开发人员的工作效率。


为了充分利用 Amazon CodeWhisprer(以及一般的 AI 代码伴侣),以下操作可能有助于实现预期目标:


  • 简明评论:输入任务越清晰明确,获得优质结果的概率就越高。

  • 统一项目:人工智能引擎从整个文档中收集信息。因此,它不断丰富上下文。因此,将它用于以某种方式具有连接的任务会更有益。

  • 避免高级自定义问题:问题越不受欢迎,它不会返回任何有用答案的可能性就越高。



2023-12-13 10:368257

评论

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

盘点在线帮助中心对企业能够起到的作用

Baklib

AI+BI+可视化,Sugar BI 架构深度剖析

Baidu AICLOUD

大数据 数据分析 BI 可视化数据

ICDAR比赛技术分享

之家技术

算法 人工只能 竞赛 ICDAR

云图说丨初识华为云微服务引擎CSE

华为云开发者联盟

微服务 云服务 华为云

理想汽车内部推荐

程序员阿杜

揭秘5名运维如何轻松管理数亿级流量系统

York

云计算 DevOps 云原生 数字化转型 开发与运维

酷开科技 × StarRocks:统一 OLAP 分析引擎,全面打造数字化的 OTT 模式

StarRocks

动态接口比例性能测试实践

FunTester

Spring Security

武师叔

8月月更

关于 Intel 在 micro-vm 快速启动的探索及实例演示 | 第 36-38 期

OpenAnolis小助手

云原生 cpu 开源社区 sig 龙蜥大讲堂

如何避免无效的沟通

观测云

友宏医疗与Actxa签署Pre-M Diabetes TM 战略合作协议

联营汇聚

华为ECS云服务器上安装Docker及部署Redis详细教程【华为云至简致远】

科技怪咖

GaussDB(for Redis)安全性相关设置体验【华为云至简致远】

科技怪咖

一键进入华为云会议,长期免费值得所有开发团队有一套【华为云至简致远】

科技怪咖

如何面向对象编程?程序员:我也要先有"对象"啊

华为云开发者联盟

Python 编程 后端 开发

企业如何选择低代码开发平台

力软低代码开发平台

微信小程序分享功能

源字节1号

软件开发

第01篇:手写JavaRPC框架之思路分析

西魏陶渊明

Java RPC RPC 协议实现原理 RPC框架

完整的搭建内网穿透ngrok详细教程(有图有真相)

Geek_32c728

签约计划第三季

CC2530_ZigBee+华为云IOT:设计一套属于自己的冷链采集系统

华为云开发者联盟

IoT 华为云 冷链

【技术白皮书】第二章:OCR智能文字识别回顾——自然语言文本发展历程

合合技术团队

深度学习 AI OCR 自然语言 信息抽取

云GPU如何安装和启动VNC远程桌面服务?

恒源云

人工智能 深度学习 gpu

七日算法先导(三)—— 冒泡排序,选择排序

工程师日月

8月月更

基于云ModelArts的PPO算法玩“超级马里奥兄弟”【华为云至简致远】

科技怪咖

一加Ace值得买吗?用实力诠释性能的强大

Geek_8a195c

5000元价位高性能轻薄本标杆 华硕无双高颜能打

科技热闻

云渲染的优势与劣势

Finovy Cloud

云渲染 云渲染农场

【技术白皮书】第一章:OCR智能文字识别新发展——深度学习的文本信息抽取

合合技术团队

自然语言处理 深度学习 AI OCR 信息抽取

开源一夏 | 十分钟 教你IDEA 远程debugger SpringBoot项目

Geek_32c728

开源 8月月更

亚马逊云科技 Build On 2022 - AIot 第二季物联网专场实验心得

指剑

AWS AIOT 签约计划第三季 8月月更

Amazon Q 审查:最新的 AI 代码伴侣_亚马逊云科技_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章