位置: IT常识 - 正文

Copilot 初体验(pilot coat)

发布时间:2024-01-17
Copilot 初体验 Copilot 初体验

推荐整理分享Copilot 初体验(pilot coat),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:corso pilota,copilot中文版,pilot coat,copilot手表怎么样,copilot手表怎么样,co-pilot,pilot coat,co-pilot,内容如对您有帮助,希望把文章链接给更多的朋友!

大家好,我是小陆,亚欧大陆的陆。小陆是一个对一切新奇的事物充满了兴趣的人。

GitHub Copilot (https://copilot.github.com/) 是 GitHub 和 OpenAI 合作开发的一个人工智能工具,用户在使用 Visual Studio Code、Microsoft Visual Studio、Vim 或 JetBrains 集成开发环境时可以通过 GitHub Copilot 自动补全代码。GitHub 于 2021 年 6 月 29 日宣布该软件,目前处于技术预览阶段,主要面向 Python、JavaScript、TypeScript、Ruby 和 Go 等编程语言。

据说,在很多情况下,只需要有注释或者函数名称,Copilot 就可以实例完整的代码。好的,那么今天我们来玩一下这个小工具。这里说支持 VS Code 和 VS,作为体验,我们通过 VS Code 做个小测试。

文章目录Copilot 初体验申请开通VS Code 插件下载初体验泰勒展开力扣测试牛顿法五子棋游戏高斯积分公式申请开通

访问它的官网 https://copilot.github.com,申请开通,傻瓜式操作。

Hmm,看起来有 60 天的免费试用,但是 60 天后如果忘记取消了,它就会给你自动续费。我记性不太好,So,听说他对学生是免费的,我们来申请 GitHub 学生包,可免费使用 Copilot。

进入这个网页:https://education.github.com/benefits?type=student,获得学生福利。傻瓜式操作。

OK,DONE。如果搞到了学生包,那么,当我们访问 GitHub Copilot 订阅页面时,会看到 GitHub Copilot 是免费提供的。如果看到还要收费,那么说明不是学生验证没搞好,或者学生验证的没达到免费使用的标准。

学生包除了免费使用 Copilot,还有很多。查看我们的更多的学生包福利:https://education.github.com/pack。

之后,在 GitHub 账号中进行设置,

如果,你的学生认证是有效的,则进入如下界面,否则,你将进入收费界面。只要是看到要收费了,说明你的学生认证没搞好。

一直往下点就好了,图片比较多,就不黏贴了。

VS Code 插件下载Copilot 初体验(pilot coat)

可以参考链接 VS Code for Copilot。

要使用 GitHub Copilot,必须先安装 Visual Studio Code 扩展。如果之前未在 GitHub 帐户中授权 Visual Studio Code,系统将提示在 Visual Studio Code 中登录 GitHub。在 VS code 中登录 GitHub 账号。

授权之后,就可在 VS code 中使用 Copilot 了。

初体验

好,万事俱备,我们现在来做几个小测试。

泰勒展开

作为学计算数学的,先让它给我写一些泰勒展开的代码。我写了一行注释 Taylor expansion of exp(x) around x=0,然后一路狂敲 Tab 和 回车(如果没提示就敲回车,有提示就敲 Tab 接受或者鼠标停留选择下一个提示),它给我写了这样一份代码。

Run 一下,有图有注释,真的 NB。

按 Ctrl+回车,可以进行批量的接受。

力扣测试

记得在 LeetCode 上做过一些题目,我们来做个测试。我在第一行敲下 ### Leetcode 3sum,然后它就把这道题写完了,黏贴到 LeetCode 上面去,AC。

想我辛苦刷题半天,人家秒破。

牛顿法

我写了个牛顿方法,它生成了这样一个代码。

'''Newton's method'''import mathdef newton(f, df, x0, tol=1e-6, maxiter=100): ''' Newton's method ''' x = x0 for _ in range(maxiter): xnew = x - f(x)/df(x) if abs(xnew - x) < tol: return xnew x = xnew return xdef main(): ''' main ''' f = lambda x: x**2 - 2 df = lambda x: 2*x print(newton(f, df, 1.5))if __name__ == '__main__': main()

开头注释采用 ''' 和 ### 都是一样的效果。

五子棋游戏

尝试一下它的 GUI 功能。让它写个五子棋的程序吧。

### Gobang gameimport pygamefrom pygame.locals import *import sysimport timeimport random# Define the size of the chessboardBOARD_SIZE = 15# Define the size of the chessboard gridGRID_SIZE = 40# Define the size of the chessboardBOARD_WIDTH = GRID_SIZE * BOARD_SIZE# Define the size of the chessboardBOARD_HEIGHT = GRID_SIZE * BOARD_SIZE# Define the size of the chessboardMARGIN = 20# Define the size of the chessboardCHESS_SIZE = 20# Define the size of the chessboardCHESS_RADIUS = int(CHESS_SIZE / 2)# Define the size of the chessboardCHESS_OFFSET = int(GRID_SIZE / 2)# Define the size of the chessboardSCREEN_SIZE = (BOARD_WIDTH + 2 * MARGIN, BOARD_HEIGHT + 2 * MARGIN)# Define the size of the chessboardBLACK_CHESS = 1# Define the size of the chessboardWHITE_CHESS = 2# Define the size of the chessboardEMPTY_CHESS = 0# Define the size of the chessboardCHESS_COLOR = { BLACK_CHESS: (0, 0, 0), WHITE_CHESS: (255, 255, 255), EMPTY_CHESS: (255, 255, 255)}# Define the size of the chessboarddef main(): ''' main ''' pygame.init() screen = pygame.display.set_mode(SCREEN_SIZE) pygame.display.set_caption('Gobang') board = Board(screen) board.init_board(screen) while True: for event in pygame.event.get(): if event.type == QUIT: sys.exit() if event.type == MOUSEBUTTONDOWN: if event.button == 1: board.move_chess(screen, event.pos) pygame.display.update()class Board(): ''' Board ''' def __init__(self,screen): ''' init ''' self.board = [] self.screen = screen self.init_board(screen) def init_board(self, screen): ''' init_board ''' self.board = [[EMPTY_CHESS for i in range(BOARD_SIZE)] for i in range(BOARD_SIZE)] screen.fill((255, 255, 255)) for i in range(BOARD_SIZE): pygame.draw.line(screen, (0, 0, 0), (MARGIN, MARGIN + i * GRID_SIZE), (MARGIN + BOARD_WIDTH, MARGIN + i * GRID_SIZE)) pygame.draw.line(screen, (0, 0, 0), (MARGIN + i * GRID_SIZE, MARGIN), (MARGIN + i * GRID_SIZE, MARGIN + BOARD_HEIGHT)) def move_chess(self, screen, pos): ''' move_chess ''' x, y = pos if x < MARGIN or x > MARGIN + BOARD_WIDTH: return if y < MARGIN or y > MARGIN + BOARD_HEIGHT: return x = int((x - MARGIN) / GRID_SIZE) y = int((y - MARGIN) / GRID_SIZE) if self.board[x][y] != EMPTY_CHESS: return self.board[x][y] = BLACK_CHESS pygame.draw.circle(screen, CHESS_COLOR[BLACK_CHESS], (MARGIN + x * GRID_SIZE + CHESS_OFFSET, MARGIN + y * GRID_SIZE + CHESS_OFFSET), CHESS_RADIUS) self.ai_move_chess(screen) def ai_move_chess(self, screen): ''' ai_move_chess ''' x, y = self.get_best_move() self.board[x][y] = WHITE_CHESS pygame.draw.circle(screen, CHESS_COLOR[WHITE_CHESS], (MARGIN + x * GRID_SIZE + CHESS_OFFSET, MARGIN + y * GRID_SIZE + CHESS_OFFSET), CHESS_RADIUS) def get_best_move(self): ''' get_best_move ''' chess_list = [] for x in range(BOARD_SIZE): for y in range(BOARD_SIZE): if self.board[x][y] == EMPTY_CHESS: chess_list.append((x, y)) return random.choice(chess_list)if __name__ == '__main__': main()

这个有点小 bug,需要我们自己再调一调代码。看来 copilot 也有马失前蹄的时候哇。

高斯积分公式### gausian quadratureimport numpy as npimport matplotlib.pyplot as pltdef f(x): return x**2def gausian_quadrature(f, a, b, n): ''' gausian quadrature ''' x = np.linspace(a, b, n) y = f(x) return np.sum(y)def main(): ''' main ''' a = 0 b = 1 n = 100 print(gausian_quadrature(f, a, b, n))if __name__ == '__main__': main()

这个高斯积分公式写得也太忽悠人了吧。再给它一次机会。

### gausian quadratureimport numpy as npimport matplotlib.pyplot as pltfrom scipy.integrate import quadfrom scipy.integrate import dblquaddef f(x): return np.exp(-x**2)def g(x, y): return np.exp(-x**2-y**2)def main(): x = np.linspace(-5, 5, 100) y = f(x) plt.plot(x, y) plt.show() print(quad(f, -np.inf, np.inf)) print(dblquad(g, -np.inf, np.inf, lambda x: -np.inf, lambda x: np.inf))if __name__ == '__main__': main()

虽然是调包,但是看起来靠谱多了。

本文链接地址:https://www.jiuchutong.com/zhishi/300624.html 转载请保留说明!

上一篇:Python实现朴素贝叶斯分类器(用python编写素数)

下一篇:MySQL自增ID用完了怎么办?4种解决方案!(面试官问:mysql 的自增 id 用完了,怎么办?)

  • 微信超过2分钟的消息怎么撤回(微信超过2分钟还能撤回吗)

    微信超过2分钟的消息怎么撤回(微信超过2分钟还能撤回吗)

  • a1584拆机(a1586)(A1584拆机教程)

    a1584拆机(a1586)(A1584拆机教程)

  • 微信群主怎么设置管理员(微信群主怎么设置群禁言)

    微信群主怎么设置管理员(微信群主怎么设置群禁言)

  • 苹果笔记本怎么录屏(苹果笔记本怎么装双系统)

    苹果笔记本怎么录屏(苹果笔记本怎么装双系统)

  • 朋友圈怎么设置不提醒功能(朋友圈怎么设置一个月可见)

    朋友圈怎么设置不提醒功能(朋友圈怎么设置一个月可见)

  • 微信怎么清理内存(微信怎么清理内存苹果)

    微信怎么清理内存(微信怎么清理内存苹果)

  • 手机自带录屏在哪里找 (手机自带录屏在哪里设置华为)

    手机自带录屏在哪里找 (手机自带录屏在哪里设置华为)

  • 苹果手机隐藏的应用怎么移出来(苹果手机隐藏的相册怎么打开)

    苹果手机隐藏的应用怎么移出来(苹果手机隐藏的相册怎么打开)

  • 为什么自动生成目录会出现正文部分(为什么自动生成的目录会有内容)

    为什么自动生成目录会出现正文部分(为什么自动生成的目录会有内容)

  • 八芯网线是几类网线(八芯网线是什么意思)

    八芯网线是几类网线(八芯网线是什么意思)

  • 华为原装充电器发烫(华为原装充电器66w)

    华为原装充电器发烫(华为原装充电器66w)

  • 荣耀v20可以只换外屏吗(荣耀v20可以只换屏幕吗)

    荣耀v20可以只换外屏吗(荣耀v20可以只换屏幕吗)

  • ivvi p60用的什么处理器(ivvi p60-x12)

    ivvi p60用的什么处理器(ivvi p60-x12)

  • 微信语音无应答是关机了吗(微信语音无应答对方能看到吗)

    微信语音无应答是关机了吗(微信语音无应答对方能看到吗)

  • 离线视频是什么意思 (离线视频会不会丢失)

    离线视频是什么意思 (离线视频会不会丢失)

  • m1metal是什么型号(型号:m1 metal)

    m1metal是什么型号(型号:m1 metal)

  • 右下标数字怎么打(右下角的数字怎么弄)

    右下标数字怎么打(右下角的数字怎么弄)

  • 苹果c字开头的有国行货吗(苹果c字开头是哪里生产的)

    苹果c字开头的有国行货吗(苹果c字开头是哪里生产的)

  • 苹果手机充电接触不稳定怎么弄(苹果手机充电接触不良,断断续续)

    苹果手机充电接触不稳定怎么弄(苹果手机充电接触不良,断断续续)

  • 1kbps是什么意思(1kb/s是什么意思代表什么)

    1kbps是什么意思(1kb/s是什么意思代表什么)

  • 华为mate30出厂有贴膜吗(华为mate30出厂有指纹解锁吗)

    华为mate30出厂有贴膜吗(华为mate30出厂有指纹解锁吗)

  • smartart基本维恩图在哪(pptsmartart基本维恩图怎么找)

    smartart基本维恩图在哪(pptsmartart基本维恩图怎么找)

  • 黑莓手机怎么下载app(黑莓手机怎么下载qq音乐)

    黑莓手机怎么下载app(黑莓手机怎么下载qq音乐)

  • 华为p30pro使用技巧(华为p30pro实用小功能)

    华为p30pro使用技巧(华为p30pro实用小功能)

  • beats x怎么开机      

    beats x怎么开机   

  • LVGL V8应用——通过按键切换页面(lvgl使用)

    LVGL V8应用——通过按键切换页面(lvgl使用)

  • Cursor:GPT-4 驱动的强大代码编辑器(gpib-usb驱动)

    Cursor:GPT-4 驱动的强大代码编辑器(gpib-usb驱动)

  • 白酒消费税最低计税价格
  • 什么叫欠账
  • 发票预付款充值卡是否报销
  • 会计忘记申报税款会有什么影响
  • 个税申报系统累计收入怎么算
  • 慈善捐款抵税的会计分录
  • 银行电子回单是原始凭证吗
  • 公司给的出差津贴
  • 普通发票可以改明细吗
  • 离退休人员再任职的规定
  • 4.86的税率怎么算
  • 总公司中标分公司开票避税
  • 票据贴现手续费发票可以抵扣吗
  • 新开公司季初季末人数和资产可以填0吗
  • 专用发票过期了还能冲红发票吗
  • 协定存款分析及2018金融机构人民币存款基准利率表
  • 卖出别人赠送的东西会计分录?
  • 代缴社保工资怎么做账
  • 电子税务局怎么查看已开发票
  • 财务刻章属于什么行业
  • 预收销货款属于负债吗
  • 利润分配在利润表中如何列示
  • 员工给公司代垫的款项分录
  • 工会经费的计税依据包括单位社保吗
  • Win10升级win11是激活状态吗?
  • qqpcrtp.exe是什么进程 如何删除qqpcrtp进程
  • windows10如何关机
  • 资产评估报告包括
  • 税控盘服务费全额抵扣勾选在什么地方
  • 全资子公司给母公司担保
  • vue jsx报错
  • 股份支付费用是股权激励成本吗?
  • win10通讯
  • 银行承兑汇票贴现怎么算
  • 金银首饰以旧换新消费税怎么算
  • php安装openssl扩展
  • 扣税的账户是基本户还有一般户
  • 利润表增加利润怎么做
  • 外资公司股东
  • 应收账款提坏账准备的方法
  • db2数据库管理最佳实践
  • 金蝶迷你版怎么打印明细账
  • 负债类科目的余额方向为借方 不考虑双向等例外情况
  • 抵扣的税可以退掉么?
  • 固定资产盘点怎么做
  • 可转债中签后怎么看涨跌
  • 软件开发服务费计入什么科目
  • 营业税金及附加包括哪些
  • 工会年末结余会计分录
  • 电商公司不用交税吗
  • 辞退福利什么时候确认
  • 公司基本户的钱怎么用
  • 银行承兑汇票向银行申请贴现会计分录
  • 公司厂房房产税计税依据最新
  • 创建mysql表sql语句
  • mysql绿色版安装配置教程
  • bp程序是什么意思
  • ubuntu server snap
  • red hat7.6
  • 服务器centos版本选择
  • os x10.11el capitan beta3下载地址
  • linux 用处
  • 用diskgenius硬盘格式转换怎么使用
  • win7系统如何连接共享打印机
  • win8个性化外观恢复默认设置
  • opengl英文
  • ext.grid.editorgridpanel
  • android如何导入文件
  • linux c程序开发
  • 未知类型的文件怎么打开
  • 分离与继承的思想是什么
  • jquery easy ui
  • github上有什么
  • js中的eval
  • koa与node.js开发实战
  • 重庆国税电子税务局官网登录入口网址
  • 慧算账财务公司简介
  • 法院执行的房子可以卖吗
  • 出口退税网上申报流程
  • 如何开展班级全部活动
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号