GitHub Copilot Labs 体验「收手吧,外面全是 ChatGPT」

本文正在参加 ✍🏻 技术视角深入 ChatGPT 征文活动

相信大家或多或少都体验过了 ChatGPT,或者更进一步,在 IDE 中也装上了对应的插件 

不过真正在 coding 中用上的频率有多高呢?可能大多数人都只是尝个鲜然后就忘了,至少就我而言,还是 copilot 帮我提升了更多的效率

  • 不想自己写方法时简单写个注释让其生成
  • 类似的变量名帮忙推断
  • 根据上下文比你还先想出下一步代码

感觉像是自己多了一个不拿工资、干活还卖力、如臂指使的小弟

不过小弟确实有自己的局限性,基本只能干一些推测代码的体力活,优化、查漏补缺等等脑力活都被 ChatGPT 抢光了

不过好消息是,Copilot 系列又有新小弟了,专门干的就是脑力活。也就是 GitHub Coilpot Labs 插件,怎么安装文章最后一段再说,我们先看看用起来感觉怎么样,值不值得安装

一、EXPLAIN

第一个功能是解释

简单来说就是针对选中的代码,给出一些特定的回应 

EXPLAIN 有多个预设选项,我们依次介绍: 

1. Custom

自定义,就是指定 Copilot 生成自己想要的的注释,可以充分发挥自己的想象,具体用法看后面几个选项就能清楚了,所以就不在此赘述

2. Explain code

不同选项的唯一区别其实就是中间 Advanced 部分,每一个选项都对应了不同的 Prompt,当然你也可以自己修改(Custom 选项就是 Prompt 为空)

非常明显,逻辑就是针对你选中的代码,用 Prompt 里的问题问让 Copilot 给出回答

比如下面的 Prompt 就是:以下是对上述代码的解释: 

3. Code does following、Code does following(English)

和上一个选项差不多,回答会更详细 

4. Show example code

以下是调用此函数的示例: 

5. 自定义

看了上面几个预设,想必大家都有了自定义的思路了,比如:

a. 直接用中文提问

b. 列举对应的输入、输出

c. 查漏补缺

6. 总结

目前来说有几个比较影响使用的问题:

  • 没法保存自定义 Prompt,这应该是比较基础的功能,应该后续会增加吧
  • 选择代码有限制,最多 2000 个字符,不太够用

二、LANGUAGE TRANSLATION

这个功能很好理解,就是翻译不同的代码语言,例如把 JavaScript 翻译成 Python 

一些有趣的用法

1. JS、TS 转换

2. Vue、JSX、Svelte 转换

3. scss、less 转换

三、BRUSHES

终于来到了我们的重头戏「画笔」。选中代码,再选中对应功能的「笔」,就可以给这部分代码加上其功能 

这些功能依次是:

1. READABLE 加强可读性

a. 优化代码

例如一个写得很烂的方法,READABLE 之后就有了更高的可读性。如果不满意本次结果,你可以撤销重新执行,或者可以对优化过的代码再次优化达到你想要的最终结果 

b. 解混淆代码

把上面的代码混淆之后再 READABLE,可以恢复可读状态 

2. ADD TYPES 添加类型

相当于 JS -> TS

3. FIX BUG 修复 bug

例如此处修复了天数没取整的 bug 

4. DEBUG 方便 debug

自动添加输出,方便 debug 

5. LIST STEPS 注释每一句代码

注释每一句代码 

6. MAKE ROBUST 提高代码健壮性

7. CHUNK 拆分代码

8. CUSTOM 自定义

以一个段请求接口的代码为例

// 请求一些随机数据
// 用于测试
const getMockData = (url, options) => {return new Promise((resolve, reject) => {const xhr = new XMLHttpRequest()xhr.open('GET', url)xhr.onload = () => {if (xhr.status === 200) {resolve(xhr.response)} else {reject(xhr.statusText)}}xhr.onerror = () => {reject(xhr.statusText)}xhr.send(options)})
}
复制代码

选中之后点击 CUSTOM,会出现一个 INPUT,你可以指挥 COPILOT LABS 做任何事(之前那些预设就相当于一些设定好的输入) 

a. 重构代码

输入 用 axios 重新,同时支持 post、get 方法 

b. 按要求修改

输入 用 react hooks 方式封装 

c. any thing

其实上面干的两个事都算「按要求修改」,说白了就和 ChatGPT 一样,你让他干啥都行

四、TEST GENERATION

最后一个功能是生成测试用例,并且可以直点击 Run this test 测试(要求当前工作区或者全局有对应的依赖)

这个功能目前没用成功过

五、安装

这么好的工具怎么用到呢,其实官网已经说得很清楚了

你必须在Labs旁边安装GitHub Copilot的主要扩展。2 你需要注册并接受GitHub Next预发布许可条款。

  • 一个有效的 GitHub Copilot 订阅 - An active GitHub Copilot subscription. Visit the Copilot Quickstart to learn more.
  • 必须安装有 GitHub Copilot 插件 - You must have the main extension of GitHub Copilot installed alongside Labs.
  • 注册并接受 GitHub Next 预发布许可条款 - You'll need to sign up and accept the GitHub Next Pre-Release License Terms.

点击 Sign up for Copilot Labs >

最后在 vscode 里安装 GitHub Copilot Labs 插件,就可以开始体验了~

总结

整个体验下来,其实功能并没有多新鲜,特别是在 ChatGPT 3.5 已经出现的情况下,上述所有功能都可以通过和 ChatGPT 对话来完成

但是实际 coding 过程中,你得把代码复制到对应的页面(当然,大部分 ChatGPT 插件也有了很多类似的预设提问),生成的结果需要你粘贴回来,或者说预设的提问没其实并没有那么实用...

而 GitHub Copilot Labs 给这些问题提供了一个比较好的解决方案,使用起来更无感,预设更实用

但无论是哪个工具,都已经完全改变了我的编码习惯

以前需要写一个复杂方法,肯定是打开搜索引擎,然后找参考,找到了还得一行行看是不是靠谱,如果找不到或者只有一部分满足需求,几乎都得自己重写。一不小心半天就过去了

现在,只用几行注释、几个说明、定义几个出入参数。就可以自动生成我想要的方法,针对不满意的地方也可以局部再生成。代码、类型、文档、单测一整套下来都花不了 10 分钟

我们对于 AI 工具,已经不能只满足于看几篇文章然后表示一下赞叹又或是上手体验个几分钟了。而是应该像学习使用 IDE、使用 GIT、学习写代码一样来学习 AI 工具的使用

AI 改变工作和生活,已经不是未来而是现在,甚至已经是过去了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/13823.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

最新ChatGPT GPT-4 NLU实战之文档问答类ChatPDF功能(附ipynb与python源码及视频)——开源DataWhale发布入门ChatGPT技术新手从0到1必备使用指南手册(五)

目录 前言最新ChatGPT GPT-4 自然语言理解NLU实战之文档问答类ChatPDF功能引言ChatGPT 接口Qdrant数据库Embedding存储核心代码测试 其它NLU应用及实战相关文献 参考资料其它资料下载 前言 最近,研究人员开始探索使用ChatGPT来进行文档问答(QA&#xff…

最新ChatGPT GPT-4 自然语言理解NLU与句词分类技术详解(附ipynb与python源码及视频讲解)——开源DataWhale发布入门ChatGPT技术新手从0到1必备使用指南手册(四)

目录 前言最新ChatGPT GPT-4 自然语言理解NLU与句词分类技术详解1. NLU基础1.1 句子级别的分类1.2 Token级别的分类 2. 相关API2.1 LMAS GPT API2.2 ChatGPT Style 相关NLU应用及实战相关文献 参考资料其它资料下载 前言 自然语言理解(NLU)是人工智能&a…

新手小白利用chatgpt解决kali网络配置问题

在启动卡kali的时候发现没有网络 通过ifconfig -a发现没有获取到ip 经过一番查询,尝试用dhclient eth0去手动获取ip,发现成功了 但是每次重启kali都要手动获取一遍ip太麻烦,想着问题还是出在配置文件这里,无奈于小白不懂原理&…

chatgpt赋能python:Python怎么取消tab

Python怎么取消tab 在Python编程中,Tab键是一种重要的缩进方式,但在某些情况下,可能会遇到需要取消Tab缩进的情况。因此,了解如何取消Tab缩进是Python编程中的必经之路。本文将介绍Python的Tab缩进机制以及如何取消Tab缩进的方式…

为什么ClassPathResource可以读取到流?- 第465篇

历史文章(文章累计460) 《国内最全的Spring Boot系列之一》 《国内最全的Spring Boot系列之二》 《国内最全的Spring Boot系列之三》 《国内最全的Spring Boot系列之四》 《国内最全的Spring Boot系列之五》 《国内最全的Spring Boot系列之六》 S…

javascript截取两个符号之间的字符串(2):lastIndexOf匹配和正则表达式匹配

lastIndexOf匹配和正则表达式匹配 项目需求1.规范的字符串2.不规范的字符串3-1.万能封装3-2.ChatGPT的优化写法4.正则表达式的用法5.补充知识:lastIndexOf的用法 项目需求 javascript中截取字符串中最后一个“/”和“?”之间的内容。 1.规范的字符串 https://tes…

chatgpt赋能Python-python_quine

Python Quine: 在Python编程中理解自我复制的魅力 如果您已经开始了编程学习之旅,您就可能听说过Quine。Quine是一种程序,它可以输出自己的源代码,并被称为自我复制程序。这种程序很少出现在编程实践中,但在计算机科学中却发挥着…

chatgpt赋能python:Python分隔符怎么用?

Python分隔符怎么用? 在Python编程中,分隔符是一个非常重要的概念。它可以帮助我们在代码中分隔不同的元素,从而让代码更加易读和易于管理。在本文中,我们将深入探讨Python中分隔符的使用方法。 什么是分隔符? 在Py…

chatgpt赋能Python-python3_8怎么换行

Python是一种高级编程语言,其易用性和简洁语法深受程序员的喜爱。而在Python中,换行是一项必不可少的操作。今天,我们将介绍如何在Python3.8中进行换行,并提供一些有用的技巧。 Python3.8中的换行操作 在Python中,我…

chatgpt赋能python:Python中符号详解

Python中符号详解 Python是一种高级编程语言,使用简洁、优雅的语法非常受欢迎。在Python中,有很多符号,这些符号对于写出优雅、高效的代码至关重要。在本文中,我们将详细介绍Python中的常见符号。 1. 等号(&#xff…

《Java黑皮书基础篇第10版》 第10章【习题】

Java语言程序设计 习题第十章 10.2章节习题 10.1 如果重新定义程序清单102中的Loan类,去掉其中的设置方法,这个类是不可改变的吗? 这个类依然是可以改变的,因为每一笔贷款作为一个对象,都是可以改变的 10.3章节习题 10.2 程序…

【人工智能与机器学习】——线性回归、逻辑回归与分类评价指标(学习笔记)

📖 前言:线性回归(Lincar Regression)模型是最简单的线性模型之一,简而言之就像一元一次函数,是所有机器学习初学者的起点。而逻辑回归(Logistic Regression)则稍显复杂,…

阿里巴巴正在为投资者投下一颗“重磅炸弹”

来源:猛兽财经 作者:猛兽财经 在本文中,猛兽财经将围绕:马云在这个时候回国的意义、阿里巴巴拆分为六大业务集团、为什么张勇将阿里巴巴拆分为六大集团对投资者有利、拆分后阿里巴巴各个集团业务的估值分析、阿里巴巴的财务业绩、…

iOS 摸鱼周报 #82 | 去中心化社交软件 Damus

本期概要 本期话题:设计开发加速器线下活动:女性开发者社区日;本周学习:Python 如何调用 Swift 程序内容推荐:涵盖现代 SwiftUI 编程探讨、可变视图、NSTimer、Swift Charts 等方面的内容摸一下鱼:去中心化…

这才是Excel未来的样子,口喊求和什么的弱爆了

Alex 发自 凹非寺量子位 | 公众号 QbitAI 不知各位是否有过被Excel支配的恐惧? 试想一下表格中密密麻麻的数据、让人云里雾里的工具菜单,还有一堆记不清楚的公式…… 现在,有位大聪明为了简化操作,搞出了一个为Excel而生的AI助手。…

中产,疯狂搞“香港身份”

作者| Mr.K 编辑| Emma 来源| 技术领导力(ID:jishulingdaoli) 风水轮流转,今朝到香港。去年K哥身边有几个朋友去了新加坡,今年才刚到四月份,就又有朋友开始在想办法搞香港身份了。这些人都是妥妥的中产,年龄在四五十…

聚观早报 | 首个国产新冠药停产;阿里巴巴创始人马云已回国内

今日要闻:首个国产新冠药停产;阿里巴巴创始人马云已回国内;家乐福中国内地首店关闭;好丽友漏税22万被罚12万;苹果iOS 16.4正式版来了 首个国产新冠药停产 腾盛博药的首款商业化产品,新冠中和抗体药物“安巴…

万字长文:一文看懂GPT风口,有哪些创业机会?

“故事发生在未来,2040年通用人工智能系统已经接管了城市的管理。其中一个AI系统的管理者因为妻子的背叛,修改AI系统的一个底层参数——让AI对人类的谎言、背叛怀有深深的厌恶。之后AI在每天对社交平台的监控中看到了无数谎言、背叛,报复的动…

硅谷新王登国会山,呼吁加强 AI 监管;马斯克任命推特新 CEO;数字媒体巨头申请破产;欧盟通过全球首个全面监管加密资产框架 | 经济学人第 21 周

1. 硅谷新王登国会山,呼吁加强 AI 监管 Sam Altman, the chief executive of OpenAI, the firm behind the ChatGPT chatbot, called for tighter regulation of rapidly developing generative artificial intelligence, such as by forcing disclosure on images …

chatgpt赋能python:Python找钱方案:让你的货币计算更加精准

Python找钱方案:让你的货币计算更加精准 Python作为一门流行的编程语言,广泛应用于数据分析、自然语言处理、Web开发等领域。在货币计算方面,Python同样具有优秀的表现,并能够帮助你处理找零、税率等问题。本文将介绍Python中常见…