GitHub与OpenAI携手发布GitHub Copilot,用AI当你的Pair Programmer

GitHub与OpenAI合作共同发布了GitHub Copilot的技术预览版,它采用OpenAI开发的新OpenAI Codex人工智能系统,可根据工程师所撰写的程序代码,提出程序的整行或整个函数的撰写建议,等于是让AI充当你的结对工程师(Pair Programmer)。

OpenAI是以公开的大量程序代码及自然语言来训练OpenAI Codex,以让OpenAI Codex能够同时理解程序及人类的语言。OpenAI Codex现为Visual Studio Code的扩展工具,可将工程师的注解与程序代码发送到GitHub Copilot服务时,再利用OpenAI Codex来建议个别的行列与整个函数,

根据GitHub的说明,OpenAI Codex不只是个自动完成工具,当工程师写下描述程序逻辑的注释时,它就能建议完整的程序代码,另也可自动填入重复的程序代码,或替用户选择测试组件,在尝试新语言或框架时,OpenAI Codex也将是个很好的帮手。

GitHub首席执行官Nat Friedman表示,GitHub Copilot会在工程师输入程序代码时,持续调整与适应,让工程师不必费力地在网络上搜索,就能快速找到解决问题的其它途径、撰写测试或探索各种新的APIs。

图片来源_GitHub

值得注意的是,GitHub Copilot并未实际测试它所建议的程序代码,因此并不保证能够编译或执行,也只能容纳有限的脉络,它目前表现最好的地方在于将程序代码切割为各种小函数,替函数参数设计有意义的名称,撰写文件字符使用惯例(DocStrings)与注释,以及协助工程师浏览不熟悉的函数库与框架。

此外,虽然GitHub Copilot可支持众多的框架及程序语言,但现有的预览版在Python、JavaScript、TypeScript、Ruby及Go上表现最佳。

GitHub以一组Python函数来测试GitHub Copilot,清空函数内容并要求GitHub Copilot输入,第一次的正确率为43%,10次后则达到57%