GitHub代码AL补全Copilot

  • GitHub copilot
  • Tabnine
  • codata
    • 收购了Tabnine

直接在vscode/vs/clion等IDE的插件市场搜索copilog. , Tabnine就可以下载到AL代码助手插件。

copilot

  • 简介
    最近OpenAI与GitHub联合构建的AI自动编程工具Copilot正式登场!Copilot基于自然语言处理模型GPT-3搭建而成,可在程序员编写代码时提供建议,甚至直接补齐代码。

    Copilot使用的Codex深度学习模型,就是基于GPT-3的编程任务微调版本,它以部分完成的代码及注释作为输入,输出完整的代码建议。Copilot的官方网站(https://t.co/eWPueAXTFt)将其描述为“程序员结对编程实践中的AI对手”,笔者看到不少参加初测的网友都提到,很多时候提供函数签名,Copilot就可以完成整个函数的代码编写了,有时甚至只需要一个简单的注释描述,Copilot就能把整个功能模块全写出来。

    神经网络非常擅长从大型训练数据集中得到有效的发现与建议,从这个角度来看,使用GPT-3的微调版本,帮助程序员在GitHub的源代码库寻找解决方案的做法,有着非常大的意义。

  • 收费问题
    根据GitHub官方说法来看,如果Copilot技术预览成功,Copilot的商业版本也将很快问世。

  • 缺点
    归根结底Copilot等模型根本就不理解源代码的目的和结构,更不了解程序运行的目的,他能做的就是高度模仿之前大量存在过的类似代码,因此他给出的结果很可能是没有意义的,如果这些无效建议的比例过高,会使程序员的编程思路混乱,甚至拖慢开发的节奏。

    引用老旧类库,增加安全风险:笔者注意到GitHub还警告说,Copilot可能会建议旧的或者不推荐使用的类库和代码,这可能会导致安全问题。正如前文所言,Copilot本质上是对历史上全部代码的学习与模仿,但是从实操来讲,你又很难对如此大量的代码进行有效标注,因此即便Copilot的建议即使有效而且能够正常运行,也不能代表这些代码没有安全漏洞,这样的特性就使得开发人员完全审查AI生成的代码变得非常重要。

Tabnine

一位来自加拿大的大四学霸,开发了一款”Deep TabNine“代码补全工具,实现了这一大胆的想法。

它支持23种编程语言、5种编辑器,使用简单,效果惊艳。

不少使用过的网友说:TabNine是他们用过的最好的代码补全工具,这是属于程序员的杀手级应用。

在VS Code的扩展商店里,TabNine已经被下载1.3万次,获得全5星好评。

TabNine 是一个自动补全的编码插件,不同于一般的自动补全插件,它使用了深度学习 来帮助我们补全代码。并且开箱即用,不需要额外配置。

目前 TabNine 支持大部分主流的 IDE,理论上支持几乎所有的语言(没有找到对应的语言列表,尝试几乎主流语言都是支持的)。能找到一些第三方文章列出的语言列表:
Python,JavaScript,Java,C ++,C,PHP,Go,C#,Ruby,Objective-C,Rust,Swift,TypeScript,Haskell,OCaml,Scala,Kotlin,Perl ,SQL,HTML,CSS,Bash。

  • 支持的 IDE 列表

    VS Code
    IntelliJ
    Sublime Text
    Vim
    Atom
    Emacs

具体安装看这里:tabnine.com/install
VSCode 可直接到插件商店搜索 TabNine 下载。

你可能感兴趣的:(随笔,github)