Copilot是GitHub 和 OpenAI 合作开发的一款人工智能代码助手,它可以根据用户输入的注释和代码片段,自动生成高质量的代码。Copilot使用了OpenAI的GPT模型,可以学习和理解大量的代码库和文档,从而生成符合用户需求的代码。Copilot可以与多种编程语言和开发环境集成,包括Python、JavaScript、TypeScript、Go、PHP 等。
Copilot的优点在于它可以帮助开发者快速生成高质量的代码,减少开发时间和工作量。Copilot还可以提供实时的代码建议和错误检查,帮助开发者避免常见的编程错误和陷阱。Copilot还可以学习和适应用户的编程风格和习惯,从而提供更加个性化的代码建议和支持。
Copilot是一款非常优秀的人工智能代码助手,它可以帮助开发者快速生成高质量的代码和提供实时的代码建议和错误检查。与其他类似产品相比,Copilot的优点在于它可以学习和适应用户的编程风格和习惯,从而提供更加个性化的代码建议和支持。
GitHub Copilot Labs是 GitHub 推出的一项人工智能代码提示工具,它使用机器学习模型来生成自然语言描述的代码片段,可以帮助开发者更快速地编写代码和提高开发效率。
GitHub Copilot Labs 利用了大量的开源代码库,通过训练深度学习模型来自动生成代码。开发者只需要在代码编辑器中输入少量的自然语言描述,Copilot 就可以推荐出一些可能的代码实现。这些代码实现可以是完整的函数、类、表达式等,也可以是一些常见的代码片段。
开发者可以对生成的代码进行修改和优化,以适应自己的需求。
可以通过在首选的环境中安装扩展来开始使用 GitHub Copilot。
image
https://docs.github.com/zh/copilot/getting-started-with-github-copilot?tool=jetbrains
GitHub Copilot Labs 插件目前只支持 Visual Studio Code 编辑器
image
官网地址:https://githubnext.com/projects/copilot-labs。
注:
点击注册完成即可使用
image
授权同意后
image
Github copilot labs目前还是测试版,还在不断完善中。
目前使用Github Copilot labs主要可以帮助我们翻译代码,比如你不懂python,看见一段python代码,你可以让它帮你解释一下这段代码的具体含义。
自定义,就是指定 Copilot 生成自己想要的注释,可以充分发挥自己的想象,具体用法看后面几个选项就能清楚了。
不同选项的唯一区别其实就是中间 Advanced 部分,每一个选项都对应了不同的 Prompt,当然你也可以自己修改(Custom 选项就是 Prompt 为空)。期望使用中文解释 explain in Chinese
非常明显,逻辑就是针对你选中的代码,用 Prompt 里的问题让 Copilot 给出回答。
和上一个选项差不多,回答会更详细
调用此函数的示例
看了上面几个预设,想必大家都有了自定义的思路了,比如
直接用中文提问
优化代码,如多以上代码使用强类型限制
以下是对以上代码的解释,使用强类型限制:
i结束
j]和
j+1]的值,如果
j]的值大于
j+1]的值,执行if语句内的代码
arr[$j+1]的值
j+1]的值赋值给
j]
arr[$j+1]
这个功能很好理解,就是翻译不同的代码语言,例如把 PHP 翻译成 Lua.
终于来到了我们的重头戏「画笔」。选中代码,再选中对应功能的「笔」,就可以给这部分代码加上其功能。
READABLE 加强可读性
例如一个写得很烂的方法,READABLE 之后就有了更高的可读性。如果不满意本次结果,你可以撤销重新执行,或者可以对优化过的代码再次优化达到你想要的最终结果。:::
image
自动添加输出,方便 debug
注释每一句代码
提高代码健壮性
拆分代码
最后一个功能是生成测试用例,并且可以只点击 Run this test 测试(要求当前工作区或者全局有对应的依赖)
只可惜,该功能目前只支持 JS
在Copilot X还未到来之际,我们可以使用 Copilot + Cursor先过渡一下,当然Copilot labs 里面很多功能未来会正式运用到 Copilot X中。
整个体验下来,其实功能并没有多新鲜,特别是在 ChatGPT 3.5 已经出现的情况下,上述所有功能都可以通过和 ChatGPT 对话来完成。但是实际 coding 过程中,你得把代码复制到对应的页面(当然,大部分 ChatGPT 插件也有了很多类似的预设提问),生成的结果需要你粘贴回来,或者说预设的提问其实并没有那么实用...
而 GitHub Copilot Labs 给这些问题提供了一个比较好的解决方案,使用起来更无感,预设更实用。但无论是哪个工具,都已经完全改变了我的编码习惯。
以前需要写一个复杂方法,肯定是打开搜索引擎,然后找参考,找到了还得一行行看是不是靠谱,如果找不到或者只有一部分满足需求,几乎都得自己重写。一不小心半天就过去了
现在,只用几行注释、几个说明、定义几个出入参数。就可以自动生成我想要的方法,针对不满意的地方也可以局部再生成。代码、类型、文档、单测一整套下来都花不了 10 分钟
我们对于 AI 工具,已经不能只满足于看几篇文章然后表示一下赞叹又或是上手体验个几分钟了。而是应该像学习使用 IDE、使用 GIT、学习写代码一样来学习 AI 工具的使用
AI 改变的工作和生活,已经不是未来而是现在,甚至已经是过去了。
Copyright © 2002-2022 恩博-恩博娱乐沙盘模型研发站 版权所有 非商用版本 备案号:额ICP备5412147号">额ICP备5412147号