当前位置: 首页 > news >正文

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.lryc.cn/news/325968.html

相关文章:

  • 数据库专题(oracle基础和进阶)
  • web蓝桥杯2022省赛真题:水果拼盘
  • Web核心
  • iOS应用审核问题解决方案及优化方法 ✨
  • java post、get请求第三方https接口
  • 【C语言】鸡兔同笼,鸡和兔共 100 只,共 284 只脚,求鸡和兔的个数。
  • 沪漂8年回郑州三年如何走上创业之路
  • MySQL数据库—事务与存储类型
  • 蓝桥杯刷题8
  • Java中的String字符串练习
  • 基于JavaWeb SSM mybatis 学生信息管理系统设计和实现以及文档报告
  • 二进制源码部署mysql8.0.35
  • PHP 读取嵌入式数据 SQLite3
  • 【代驾+顺风车+货运】全开源双端APP代驾+顺风车+货运代驾小程序源码
  • C++语言学习(三)—— 文件操作
  • linux文本三剑客 --- grep、sed、awk
  • leetcode 107.二叉树的层序遍历II
  • Java生成唯一ID的方式有哪些?
  • 代码随想录day44:动态规划over,回文子串及字序列
  • ElasticSearch启动报错:Exception in thread “main“ SettingsException
  • git配置密钥
  • Pandas库常用方法、函数集合
  • Qt实现TFTP Server和 TFTP Client(一)
  • MySQL数据库的日志管理以及备份和恢复
  • Maven发布开源框架到远程仓库
  • Qt创建窗口选择的三个父类介绍 ----- QWidget、QMainWindow、QDialog
  • 论文翻译 - Defending Against Alignment-Breaking Attacks via Robustly Aligned LLM
  • Kafka总结问题
  • 【RPG Maker MV 仿新仙剑 战斗场景UI (八)】
  • 【PyQt】18 -菜单等顶层操作