乐趣区

关于人工智能:AI-帮我写代码Amazon-CodeWhisperer-初体验

文章作者:游凯超

人工智能的冲破和改革正在粗浅地扭转咱们的生存。从智能手机到主动驾驶汽车,AI 的利用曾经深刻到咱们生存的方方面面。而在编程畛域,AI 的簇新尝试正在开启一场反动。Amazon CodeWhisperer,作为亚马逊云科技的一款 AI 编程工具,正是这场反动的一部分。

亚马逊云科技开发者社区为开发者们提供寰球的开发技术资源。这里有技术文档、开发案例、技术专栏、培训视频、流动与比赛等。帮忙中国开发者对接世界最前沿技术,观点,和我的项目,并将中国优良开发者或技术举荐给寰球云社区。如果你还没有关注 / 珍藏,看到这里请肯定不要匆匆划过,点这里让它成为你的技术宝库!

作为一名承受过计算机科班训练的程序员,我曾深信编程是一种须要专业技能和深度思考的工作,不可能被 AI 代替。然而,当我真正接触到 Amazon CodeWhisperer 时,我的观点开始产生转变。这款工具可能主动生成代码,以进步编程效率和代码品质。其惊人的成果让我不得不抵赖,AI 的疾速倒退曾经开始在编程畛域中获得肯定的冲破,甚至在某些方面超过了人类的能力。

CodeWhisperer 是一款由亚马逊云科技推出的 AI 代码生成器。这款工具的呈现是为了帮忙开发者更快、更平安地构建应用程序,它能够依据开发者的正文和现有代码实时生成从代码片段到全函数的代码倡议,从而防止耗时的编程过程(俗称“体力活”),减速应用不相熟的 API(尤其是亚马逊云服务相干的 API)进行开发。

CodeWhisperer 的次要性能和特点包含:

代码生成:CodeWhisperer 通过数十亿行代码的训练,能够依据正文和现有代码实时生成从代码片段到全函数的代码倡议。
多语言和 IDE 反对:CodeWhisperer 反对 15 种编程语言,包含 Python、Java 和 JavaScript,以及各种集成式开发环境(IDE),比方 VS Code、IntelliJ IDEA、Amazon Cloud9、Amazon Lambda 控制台、JupyterLab 和 Amazon SageMaker Studio。
参考跟踪:CodeWhisperer 能够标记或筛选相似于开源训练数据的代码倡议,获取相干开源我的项目的存储库 URL 和许可证,以便开发者能够更轻松地查看它们并查看许可证兼容性。
平安扫描:CodeWhisperer 能够扫描代码以检测难以发现的破绽,并获取代码倡议以立刻修复这些破绽。它遵循跟踪安全漏洞的最佳实际,例如凋谢寰球应用程序平安我的项目 (OWASP) 概述的破绽,或者不合乎加密库最佳实际及其他相似平安最佳实际的破绽。
据亚马逊的一项生产力挑战赛显示,应用 CodeWhisperer 的参与者胜利实现工作的可能性要比未应用 CodeWhisperer 的参与者高 27%,均匀实现工作的速度快 57%。

应用 CodeWhisperer 的办法很简略,也很直观。以我罕用的 VS Code 环境为例:

  1. 搜寻 CodeWhisperer,注册账号
  2. 在 VS Code 外面装置 Amazon Toolkit 插件,侧边栏就会呈现一个亚马逊云科技的图标
  3. 点进亚马逊云科技图标之后抉择“Connect to ……”,就会弹出一个对话框,框里有一串验证码,复制之后点击“Copy Code and Proceed”,导向登录页面,依照要求创立 Builder ID,而后输出方才复制的验证码,就能够了。
  4. 点击 CodeWhisperer 的 Start,就能够应用了。

具体的每一步流程能够参看上面这张图:

CodeWhisperer 有两种应用形式:Auto-Suggestions 模式(程序主动判断何时生成代码),以及手动模式(MacOS 零碎按下快捷键 Option+C、Windows 零碎按下快捷键 Alt+C,按下快捷键之后在光标处生成代码)。我集体喜爱第二种模式,它能给我更强的掌控感:我能明确地晓得我在应用一个工具。而第一种模式,因为无法控制生成代码的机会,我常常在写正文和文档期间停下来整顿思路的时候,就看到了一大段代码提醒,让我感觉像是在考试的时候被监考老师盯着,令人心虚,不敢停下思考……(对,说的就是你,GitHub Copilot,什么时候可能减少手动模式!)

来看一个具体的例子:如果我想在 Python 里写一个疾速排序算法,只须要写好文档阐明,按下 Option+C 快捷键,就能够看到 CodeWhisperer 的代码倡议(高亮的代码是我写的正文文档,灰色局部的代码是主动生成的倡议代码)。CodeWhisperer 会生成三份代码倡议,按下左(←)右(→)方向键能够在三份代码倡议外面抉择,按下 Tab 键驳回倡议。

这段生成的代码的确是我想要的,但还不残缺。所以我在驳回倡议之后再次按下 Option+C 快捷键,生成残余局部的代码:

这样,一个残缺的疾速排序算法就写完了。在这个过程中,我只负责写函数文档,相当于化身一个产品经理,让 CodeWhisperer 为我写出称心的代码,体验十分棒。当然,这个版本的疾速排序算法还存在很多能够改良的中央。然而 CodeWhisperer 仅仅依据我这些正文就写出了代码,这成果堪称是十分惊艳了。

因为我的日常学习科研次要波及一些机器学习钻研相干的代码,不波及平安相干的问题,所以我没有尝试参考跟踪和平安扫描这两项性能。感兴趣的读者能够自行尝试,CodeWhisperer 是收费应用的,也很容易上手。

在对 CodeWhisperer 这款神奇工具有了肯定理解之后,咱们有必要将眼光转向一个或者中国人据说较少、但却在全世界影响力深远的科技巨头——亚马逊云科技。它是寰球份额排名第一的云服务提供商,咱们生存中许多无奈漠视的科技冲破,无论是簇新的利用还是翻新的理念,背地都离不开亚马逊云服务的反对。

近期,相似 ChatGPT 的大语言模型在科技界引发了微小的关注,它们通过模仿人类语言的简单模式,展示了惊人的智能。这些模型的训练,须要大量的数据和宏大的计算能力,其中 很多模型就是在亚马逊云服务的平台上训练的。能够说,亚马逊云服务如同一只有形的巨手,默默推动着人工智能技术的提高。

如果你也对这股 AI 浪潮背地的力量感到好奇,如果你也想要摸索科技的未知领域,那么,欢送来加入2023 年 6 月 27 日 -28 日在上海世博核心举办的亚马逊云科技中国峰会。在这次峰会上,亚马逊云科技将围绕牢靠的技术与服务,携手泛滥业内当先技术践行者,特地出现翻新技术利用、明星讲师团实力助考、开发者社群交换等多样化内容。这将是一个为来自寰球不同行业、领有不同技术水平的用户,提供共话交换、共谋单干、独特摸索的时机的大会。此外,峰会将涵盖多个热点主题,包含云计算年度热点话题盘点、数字化转型翻新、行业转型之道等。在这里,无论你是科技领域的专家,还是对科技有着浓厚兴趣的学生,都能够深刻理解亚马逊云服务的魅力,亲自感触云科技如何扭转世界。峰会还将提供开发者专属板块,以及面向企业高管的全面降级的定制化参会体验。

想要加入峰会的敌人,微信搜寻【亚马逊云科技】小程序,在首页就能够看到亚马逊云科技中国峰会的报名通道了。欢送大家来独特摸索 AI 在编程畛域的将来可能性,体验 CodeWhisperer 的弱小性能,借助亚马逊云科技中国峰会的机会,在亚马逊云服务这个翻新的平台上,共享常识,共创将来。

文章起源:https://dev.amazoncloud.cn/column/article/64f1e60fd75d3d261ab…

退出移动版