几个小时前,GitHub 宣布推出 Copilot X 计划,这是其流行的 Copilot 代码自动补全工具的扩展,该工具于 2021 年推出了预览版。借此,这家微软旗下的公司正在为 Copilot 推出以代码为中心的聊天模式,用于帮助开发人员编写和调试他们的代码,以及针对某个问题查找答案。
毫不意外,这些新功能由 OpenAI 的 GPT-4 驱动,不过值得注意的是,出于延迟原因,代码自动补全工具仍然基于 GitHub 的 Codex 模型,它源自 GPT-3。
“随着新模型的上线,我们问自己:下一步是什么?Copilot 的下一步是什么?我们相信,代码补全是一个重要方向。” GitHub CEO Thomas Dohmke 告诉我。
GitHub 水到渠成的下一步 —— 这并不令人意外 —— 是为开发者体验添加聊天功能。Copilot Chat 将从今天开始在 Visual Studio 和 VS Code 中提供预览版本,后续将支持其他 IDE。
正如 Dohmke 指出的那样,这不仅将 ChatGPT 引入了 IDE,还将 IDE 的上下文引入了 ChatGPT。这意味着你可以在编辑器中高亮显示代码,然后向 Copilot 询问这些代码片段,用它来重构这段代码,并在必要时请它帮助你调试它(因为它也知道终端的输出情况)。GitHub 通过一些巧妙的提示工程来实现这一点,将提示填满尽可能多的上下文信息。
当然,你也可以让 Chat 帮你写代码。例如,在演示中,GitHub 展示了如何要求它构建经典的 “贪吃蛇” 游戏。
“我是一名开发人员,我也是 CEO。所以我实际开发代码的时间相当有限。我最近几个晚上一直在玩这个软件,发现它非常有趣。它让编程变得有趣,因为你不必寻找教程,也不必弄清楚哪一个是正确的教程,你只需继续下去,” Dohmke 说。“我敢肯定,当你让学生和孩子们使用时,他们会大吃一惊。它变成了一件令人上瘾的事情,因为你有了可以不断提问的东西。”
不出所料,Copilot Chat 将只专注于编程问题。它会迅速关闭有关其他任何问题的提问。
Dohmke 认为,虽然自动完成功能已经让开发人员大大提高了他们的工作效率,但这个新的 Copilot 将使开发人员的工作效率提高 10 倍。
作为 Copilot X 计划的一部分,GitHub 也将 Copilot 带到了命令行中。与 Warp 在其终端上所做的类似,GitHub 现在也在帮助开发者使用命令行,帮助他们编写命令和循环,并找到那些通常深埋于手册(或至少要搜索 Stack Overflow 一两次)中的晦涩特性标志。
开发人员现在还可以注册一个新的 Copilot 功能的技术预览版,该版本会生成拉取请求的描述并自动打标签。“没有人喜欢模板,” Dohmke 说。“这很无聊,而且是琐碎的工作,无论是在代码层、Copilot 还是在拉取请求层。” 他指出,这仅仅是个开始。因为该工具已经扫描了代码,它还可以自动找到缺失的测试并生成这些测试,Dohmke 承诺,我们将来会看到更多类似的功能。
Copilot for docs 也是一个新功能,它丰富了 ChatGPT 的现有数据库,例如,你已经可以查询有关框架和语言文档的信息。但是 ChatGPT 的数据搜集截止日期是 2021 年,这意味着这些信息并不总是最新的,因此 GitHub 正在用更多的最新数据来充实它(类似于 Microsoft 的 Bing 在搜索中使用的 Prometheus 模型)。GitHub 最初将从 React、Azure Docs 和 Mozilla 的 MDN 等文档开始,开发人员将能够在类似 ChatGPT 的界面中查询这些文档。不过,更有趣的是,GitHub 计划允许组织在其存储库和内部文档之上使用此工具。不过,这还没有准备好供公众使用。
“一旦你在每个应用程序中都有一个 Copilot—— 无论是在 Outlook、Word 还是你的代码编辑器中,你都可以利用你在这些环境中编写的东西,而且你还可以利用来自你组织中其他员工的信息,无论他是开发人员还是营销人员,他们现在可以更轻松地撰写公告博客文章,因为他们已经在他们的 Copilot 中看到了开发人员放入他们的 git repo 中的发布说明。…… 它消除了公司内的信息孤岛,我认为这就是我们可能释放 10 倍以上生产力的地方。”