Copilot 编程助手的介绍及使用

介绍

  Copilot 是2021年由 GitHub 与 OpenAI 合作研发的一款编程助手,同时也是全球首款使用OpenAI Codex模型(GPT-3后代)打造的大规模生成式AI开发工具。

Copilot 底层模型目前经过了数十亿行公开代码的训练,与大多数代码辅助工具相比,它可以理解更多的上下文。无论是文档、注释、函数名,还是代码本身,Copilot 都会基于开发者提供的上下文来合成匹配的代码。开发者可通过 Copilot 在编辑器中获取有关整行代码或完整函数的建议。

注册和使用方法

1、注册一个 GitHub 账号并登入

2、在任意页面的右上角,点击个人资料照片,然后点击“setting”按钮

3、在侧边栏“Code, planning, and automation”区域点击“Copilot

4、点击“Start free trial”按钮,接着完成后续支付信息填写流程 

5、然后在 VS Code 中安装 Copilot 插件, 在VS Code中登录 GitHub 账号

6、Copilot有一个月的免费使用时间,如果只是想试用下,注册完后可以立即取消订阅
 

主要功能介绍

1、根据语义化的方法名推断方法体内容


如上图我们只是输入了一个语义化的方法名,它就能推断出该方法可能要实现的代码逻辑,此时我们按住Tab键就可以应用该代码

2、查看其他推荐代码

按下 Alt + ] 可以切换到下一条推荐内容,Alt + [ 切换到上一条推荐内容。按下 Esc 关闭当前推荐代码 

3、在一个新tab窗口中查看所有的推荐代码

按下 Ctrl + Enter则会显示所有的推荐代码,点击Accept Solution则可应用该代码 

4、通过注释生成代码建议

在编辑器中输入“上传图片时压缩图片和修改图片尺寸”完成后,然后按下Ctrl + Enter查看所有推荐代码,选中一条应用 

5、使用框架生成代码建议

键入注释说明“用koa启动一个端口号为3000的本地服务”则会生成如下代码 

6、有一定的预判功能

提前写好了一个验证手机号的方法, 后面Copilot又预判你可能需要一个验证邮箱的代码 

7、感知上下文推荐代码

在编辑器中键入注释“销毁对象”,Copilot给我们推荐生成了一个方法,然后推荐了很多方法逻辑,明显能看出Copilot是基于上下文分析定义的变量和方法生成的方法逻辑 

8、启用或关闭Copilot功能

要启用或禁用 GitHub Copilot,请单击 Visual Studio Code 窗口底部面板中的状态图标。 

如果您要禁用 GitHub Copilot,系统会询问您是要全局禁用建议,还是要针对当前正在编辑的文件的语言禁用建议。

  • 要全局禁用来 Copilot 的建议,请单击"Disable Globally"。
  • 要禁用 Copilot 对指定语言的建议,请单击禁用"Disable for [language]"。 

总结

  copilot和其他提示软件不同的在于,它是AI,可以理解上下文,根据你写的类,去理解你想要实现的功能,然后判断你下一步想要做什么,变量名、方法名、逻辑,都是匹配你上下文的。所以一些简单重复枯燥性的、非业务性的工作可以利用Copilot帮助你提升效率,让专注更复杂的业务性问题。当然该工具也一定的代码泄漏的风险。

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

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

相关文章

中科数安 || 防止公司内部文件资料 \数据外泄,图档透明加密防泄密软件,源代码防泄露系统。

#文件防泄密软件# 中科数安是一家专注于信息安全领域的高科技企业,其提供的防止公司内部文件资料及数据外泄的解决方案主要包括图档透明加密和源代码防泄露系统等核心服务。 中科数安 | 图档、源代码防止外泄系统 PC地址: www.weaem.com 1. 图档透明加…

大学宠物医疗试题及答案,分享几个实用搜题和学习工具 #学习方法#笔记#知识分享

大学开学,就意味着又回到了被线性代数、大学物理等测验题折磨的状态了……网站无法手动输入题干公式,初高中用过的搜题软件又都搜不到,想找个答案解析仿佛在大海捞针!不过不用怕,今天小林就把从大学攒到毕业工作都在使…

pta L1-082 种钻石

L1-082 种钻石 分数 5 全屏浏览 切换布局 作者 陈越 单位 浙江大学 2019年10月29日,中央电视台专题报道,中国科学院在培育钻石领域,取得科技突破。科学家们用金刚石的籽晶片作为种子,利用甲烷气体在能量作用下形成碳的等离子体…

【微服务】Gateway

文章目录 1.基本介绍官方文档:https://springdoc.cn/spring-cloud-gateway/#gateway-starter1.引出网关2.使用网关服务架构图3.Gateway网络拓扑图(背下来)4.Gateway特性5.Gateway核心组件1.基本介绍2.断言3.过滤 6.Gateway工作机制 2.搭建Gat…

Nacos部署(一)Linux部署Nacos2.3.x单机环境

😊 作者: 一恍过去 💖 主页: https://blog.csdn.net/zhuocailing3390 🎊 社区: Java技术栈交流 🎉 主题: Nacos部署(一)Linux部署Nacos2.3.x单机环境 ⏱️…

是德科技KEYSIGHT E4990A阻抗分析仪

181/2461/8938产品概述: E4990A 阻抗分析仪具有 20 Hz 至 120 MHz 的频率范围,可在宽阻抗范围内提供出色的 0.045%(典型值)基本准确度,并内置 40 V 直流偏置源,适用于元器件、半导体和材料测量。 无论研发、生产、质…

第四百二十五回

文章目录 1. 概念介绍2. 实现方法3. 示例代码4. 内容总结 我们在上一章回中介绍了"使用intl插件时遇到的问题"相关的内容,本章回中将介绍实现splash页面的另外一种方法.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 我们在本章回中介绍的…

YOLOv9改进策略:卷积魔改 | SPD-Conv,低分辨率图像和小物体涨点明显

💡💡💡本文改进内容:SPD-Conv由一个空间到深度(SPD)层和一个无卷积步长(Conv)层组成,特别是在处理低分辨率图像和小物体等更困难的任务时。 💡💡💡SPD-Conv在多个数据集验证能够暴力涨点&#x…

网工内推 | 松下电器,解决方案工程师,最高25K,IE认证优先

01 松下电器 招聘岗位:基盘解决方案架构师 职责描述: 1、网络的规划设计,架构实施和故障排渣以及调优 2、负责网络设备的选型、搭建、系统监控、故障解决、性能优化 3、负责对集团内相关业务,进行提案或项目管理相关工作 4、对…

Vue3新手教程

Vue3新手教程 一. Vue3简介1. 性能的提升2.源码的升级3. 拥抱TypeScript4. 新的特性 二. 创建Vue3工程1. 基于 vue-cli 创建2. 基于 vite 创建(推荐)3. 一个简单的效果 三. Vue3核心语法1. OptionsAPI 与 CompositionAPI2. 拉开序幕的 setup2.1 setup 概述2.2 setup 的返回值2.…

自动化脚本-Excel批量生成二维码

演示: Excel二维码批量生成 exe资源文件: 下载exe 代码实现: pip install openpyxl openpyxl 是一个用于读写 Excel 文件的 Python 库 pip install qrcode qrcode 是一个 Python 库,可以用来生成二维码(Quick Resp…

小目标检测篇 | YOLOv8改进之GSConv + Slim Neck提升小目标检测效果

前言:Hello大家好,我是小哥谈。在文章中,作者提出了一种新方法GSConv来减轻模型的复杂度并保持准确性。GSConv可以更好地平衡模型的准确性和速度。并且,提供了一种设计范式Slim Neck,以实现检测器更高的计算成本效益。实验过程中,与原始网络相比,改进方法获得了最优秀的…

【MySQL】锁

一、并发事务访问相同记录的三种情况 读-读情况   并发事务相继读取相同的记录,不会产生什么问题。 写-写情况   这种情况下会发生脏写的问题。 读-写或写-读情况   会发生脏读、不可重复读、幻读的情况 并发问题的解决方案 读操作利用多版本并发控制&am…

java的ArrayList类

ArrayList<E>E是自定义数据类型 ArrayList类&#xff1a; 构造函数&#xff1a; 成员方法&#xff1a; public boolean add(E e)&#xff1a; 将指定元素加到集合末尾 Appends the specified element to the end of this list. public class Array {public static…

动听的洗牌游戏(Java篇ArrayList实操)

本篇会加入个人的所谓‘鱼式疯言’ ❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言 而是理解过并总结出来通俗易懂的大白话, 小编会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的. &#x1f92d;&#x1f92d;&#x1f92d;可能说的不是那么严谨.但小编初心是能让更多人…

LeetCode - 存在重复元素

219. 存在重复元素 II 这道题可以用两个方法解决。 哈希表 从左到右遍历数组&#xff0c;并将数组的下标存到hash中&#xff0c;在遍历数字的过程中&#xff0c;如果hash中不存在nums[i]&#xff0c;将nums[i]加入到hash当中&#xff0c;若存在&#xff0c;则判断下标之间的关…

C#事件实例详解

一、什么是事件&#xff1f; 在C#中,事件(event)是一种特殊的类成员,它允许类或对象通知其他类或对象发生了某些事情。 从语法上看,事件的声明类似于字段,但它们在功能和行为上有一些重要的区别。 从技术角度来说,事件实际上是一个封装了事件订阅和取消订阅功能的委托字段。…

Python中的数据类型有四类八种如何理解?

在Python中&#xff0c;数据类型大致可以分为四大类&#xff0c;包含了八种基本的数据类型&#xff0c;这些分类有助于理解和使用Python进行编程。这四大类分别是&#xff1a; 数字类型 (Numeric Types): 整型 (int): 表示没有小数部分的整数&#xff0c;可以是正数、负数或零。…

海外媒体发稿:9种高效的媒体套餐内容发稿策略分析-华媒舍

海外媒体发稿&#xff1a;9种高效的媒体套餐内容发稿策略分析高效的媒体发布和营销推广策略对公司、本人的成就尤为重要。下面我们就对于媒体套餐内容发稿营销推广策略开展全面解析&#xff0c;帮助读者掌握并应用这9种合理的思路&#xff0c;进而获得更好的媒体营销效果。 1.媒…

Retelling|Facebook2

录音 Facebook 2 Retelling|Facebook2 复述转写 Hi, Im Helen Campbell, from DJ interpretation, European Commission, Im going to talk about Facebook. You Im sure that you are more familiar with Facebook, a lot, a lot more familiar than I than me. But Ive read…