前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >VS Code一秒生成80%代码?鹅厂人真实感受

VS Code一秒生成80%代码?鹅厂人真实感受

作者头像
腾讯云开发者
修改2023-08-15 16:27:26
7340
修改2023-08-15 16:27:26
举报

# 关注并星标腾讯云开发者

# 每周4 | 鹅厂一线程序员,为你“试毒”新技术

# 第3期 | 腾讯孟健:测评 VSCode Copilot Chat 新特性体验

GitHub Copilot 发布不过两年,已助力逾百万开发者创造超过46%的代码量,更将编码速度提升了高达55%。

而近期,VScode发布1.80版本,这次重磅更新直接引入GitHub Copilot新功能—— Copilot ChatAI聊天助手来袭!

是鸡肋还是生产力?

在答案揭晓之前,如果你想体验最新版本、下载 VSCode 插件,可访问:https://marketplace.visualstudio.com/items?itemName=GitHub.copilot-chat

安装之后,会发现侧边栏多了一个聊天的入口,在关联到 Github 账号就可以使用了(账号需要 waitlist 通过):

Copilot Chat 主要提供了一个可交互式的界面。

在帮助文档中我们可以看到,它支持以下几种能力:

?? 解释一行代码、整个文件或库 API 的作用。

?? 找出问题,甚至修复它们。

?? 重写代码以使其更易读或更快。

?? 编写新的测试和组件。

?? 提问关于 VS Code 的问题。

?? 提问一般编程问题。

?? ……

当然还有以 / 开头的命令:

?? /tests - 为选择的代码生成单元测试

?? /fix - 为选择的代码问题提供修复建议

?? /explain - 解释选择的代码的工作原理

?? /ext - 关于 VS Code 扩展程序开发的问题

?? /vscode - 关于 VS Code 的问题

?? /help - 关于 GitHub Copilot 的一般帮助

?? /createWorkspace - 创建一个项目

如同 GPT 一样,我们可以针对代码中不太理解的地方直接进行提问,选中文本后,输入 /explain 指令加上想问的内容就好。(这里默认返回英文,如果用中文提问也可以得到中文的回答)。

在这里我们选择了一个非常复杂的正则来进行测试,可以看到模型理解还是很不错的,能够解释的非常细致,针对场景我们还可以追问,让 AI 来充当你的老师。

在本次测试中,我故意改错了一个变量(不过保证语法是正常的,只是逻辑错误),Copilot 能够直接发现这个改动的问题,并给出了修复后的代码。请各位看图。

对于这种独立小函数,Copilot 的纠错能力还是不错的。

可以让 Copilot 帮忙为函数生成测试用例,然后跑一下验证用例的准确性。

在这个 case 中,Copilot 总共帮忙生成了6个用例,其中5个通过,1个不通过。仔细看了下,这个用例的期望输出有一些问题,可见模型生成的用例的准确性还是有一些问题的。

不过从完备性来看,Copilot 生成的测试用例还是给了我们不少启发,在编写测试用例这一块有极大的借鉴和提效。

当然,我们还可以借助 Copilot 来进行完成代码重构、写一个新组件等任务。相信大家日常中也有可能用到的探索场景,都可以用 Copilot 来尝试,我们就不再赘述。

1.8版本推出了一个有意思的小功能,支持了 /createWorkspace 命令,这个命令可以帮助我们快速创建一个新的项目:

不过当我真正跑起来的时候,发现还是有不少问题:

可以看到 Copilot 生成的项目所用的 vue-cli-service 已经过时了,并且少了一些 babel 和 webpack 的配置。这一部分应该还是受限于当前 AI 的训练语料时间,一般来说很容易与当前最新的资料脱轨,这个功能也许需要联网能力才可以更好地进行使用。

值得注意的是,这个插件还是有许多地方需改进。比如模型的边界——幻想问题。

可以看到在问到一些比较困难的问题时,Copilot 会幻想出一些不存在的 API 来尝试解答。这样的情况在 GPT 中也会有发生,这也是目前大模型的一个局限,会进行一些不基于事实的捏造与幻想。我们在使用 AI 的过程中,需要仔细辨别它的正确性。

虽有局限性,但是总的来说我个人认为 Copilot Chat 还是一款非常有用的工具,我们已经能够看到 ta 在很多场景为我们提供协助,比如我个人常用的两个场景:

?? 代码理解:经常寻求 AI 帮助理解复杂的代码逻辑,尤其是在读源码时非常有帮助。

?? 代码补全:写代码时提效帮助很大,也可以在编写代码时与 Copilot 进行结对编程,提升自己的代码质量。

相信随着模型的不断更新和完善,Copilot Chat 会越来越好用,期待拥抱未来编程新时代。

如果真的“动动嘴”就完成开发,你最想做一个什么样的项目呢?欢迎各位在腾讯云开发者公众号评论区交流讨论。我们将挑选一则最具创意的回答,为其留言者送出腾讯定制程序员文化衫。8月14日中午12点开奖。

本文参与?腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2023-08-10,如有侵权请联系?cloudcommunity@tencent.com 删除

本文分享自 腾讯云开发者 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯云服务器利旧
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com