GitHub Copilot Chat 目前开始陆续开放白名单资格,还没申请的可以先申请,申请入口: https://github.com/features/preview/copilot-x , copilot 的好处是在一个编辑器完成所有的AI辅助功能,简直不要太方便。
安装 VSCode Insiders 版本,下载地址:https://code.visualstudio.com/insiders/,该版本与VSCode的区别在于前者是预览版本,后者为稳定版本,功能几乎一致。
下载 Github Copilot Nightly 插件
安装完成后登录Github后,左侧会多一个Chat的图标
你可以对下面的对话框将ChatGPT一样问任何关于编程的问题,你的提问质量决定了Copilot的答案质量。例如:
提问:用python写一个邮箱校验的正则表达式,并封装成一个函数
因为我不知道这个正则表达式具体的含义,我可以接着继续问
解锁函数中正则表达式的意思
除了像ChatGPT一样提问之外,我们还可以让他解释代码
explain 指令
/explain
指令用于解释代码,鼠标选中代码段后,使用快捷键 Ctrl+i 或者 右键 Copilot,输入指令 /explain 即可
默认会用英文解释
如果你不擅长英文,也可以使用中文来提问
Fix 指令
fix 是用于修复Bug的命令,当你的代码报错时,你可以直接使用 /fix
指令,并将错误信息放置在框里面 Copilot 及时帮你修复代码。
比如,有如下代码:
def convert_int(num:str):
return int(num)
我在调用的时候出现了ValueError的异常,这时候我们直接把异常信息提供给Copilot
修复后的代码:
def convert_int(num:str):
try:
return int(num)
except ValueError:
return None
我这里只是用一个很简单的例子,对付更复杂的代码也不在话下。
test 指令
单元测试很重要,长期来看带来的好处往往被低估,但很多人都不愿意写测试代码,因为费时间。现在Copilot 可以帮你写测试代码了。使用 /test
指令
生成的测试代码:
def test_convert_int(self):
self.assertEqual(convert_int("123"), 123)
self.assertEqual(convert_int("abc"), None)
而且它能把测试代码放置在正确的位置,不需要我们手动去调整。
重构代码
对于没有任何代码注释的代码,特别是文档性质的代码,可以让Copilot 加上文档注释,我们只需要选中代码后告诉他
make this code more readable
推荐加入我的知识星球【ChatGPT研究社】,里面不仅有ChatGPT的保姆级教程还有ChatGPT相关的应用案例、副业案例、创业案例、商业价值分享、以及ChatGPT工具开发教程,现在加入即可获取的一个ChatGPT账号。
关注公众号「Python之禅」,回复「1024」免费获取Python资源