大家好,我是小陆,亚欧大陆的陆。小陆是一个对一切新奇的事物充满了兴趣的人。
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 做个小测试。
文章目录
访问它的官网 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 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 math
def 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 x
def 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 game
import pygame
from pygame.locals import *
import sys
import time
import random
# Define the size of the chessboard
BOARD_SIZE = 15
# Define the size of the chessboard grid
GRID_SIZE = 40
# Define the size of the chessboard
BOARD_WIDTH = GRID_SIZE * BOARD_SIZE
# Define the size of the chessboard
BOARD_HEIGHT = GRID_SIZE * BOARD_SIZE
# Define the size of the chessboard
MARGIN = 20
# Define the size of the chessboard
CHESS_SIZE = 20
# Define the size of the chessboard
CHESS_RADIUS = int(CHESS_SIZE / 2)
# Define the size of the chessboard
CHESS_OFFSET = int(GRID_SIZE / 2)
# Define the size of the chessboard
SCREEN_SIZE = (BOARD_WIDTH + 2 * MARGIN, BOARD_HEIGHT + 2 * MARGIN)
# Define the size of the chessboard
BLACK_CHESS = 1
# Define the size of the chessboard
WHITE_CHESS = 2
# Define the size of the chessboard
EMPTY_CHESS = 0
# Define the size of the chessboard
CHESS_COLOR = {
BLACK_CHESS: (0, 0, 0),
WHITE_CHESS: (255, 255, 255),
EMPTY_CHESS: (255, 255, 255)
}
# Define the size of the chessboard
def 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 quadrature
import numpy as np
import matplotlib.pyplot as plt
def f(x):
return x**2
def 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 quadrature
import numpy as np
import matplotlib.pyplot as plt
from scipy.integrate import quad
from scipy.integrate import dblquad
def 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()
虽然是调包,但是看起来靠谱多了。
西安华为OD面试体验开始投简历技术面试进展工作进展开始投简历去年一整年一直在考研和工作之间纠结,感觉自己的状态好像当时的疫情一样差劲。之前刚毕业的时候投了个大厂的简历,结果一面写算法的时候太拉跨了,虽然知道时dfs但是代码熟练度不够,放在平时给足时间自己可以调试通过,但是熟练度不够那面试当时就写不出来被刷了。说真的算法学到后期我感觉最重要的是熟练度和背板子(对于我这种普通玩家来说),面试题如果一上来短时间内想不出思路就完蛋了。然后由于当时找的工作不是很理想就又想考研了。但是考研是有风险的,我自我感觉自己可能冲不上那个学校,而找工作一个没成可以继续找嘛。本着抱着试试看的态度在boss上投了简历,
♥️作者:白日参商🤵♂️个人主页:白日参商主页♥️坚持分析平时学习到的项目以及学习到的软件开发知识,和大家一起努力呀!!!🎈🎈加油!加油!加油!加油🎈欢迎评论💬点赞👍🏻收藏📂加关注+!「想体验ChatGPT中文聊天?」那快进来,你用不上算我输项目场景:项目条件一、那就开始吧1、安装ChatGPT-Desktop2、OpenAPI设置二、使用实例恭喜你!!!配置成功了!!!API和URL都是博主免费提供给大家的!!!恭喜你!!!配置成功了!!!API和URL都是博主免费提供给大家的!!!🎈🎈加油!加油!加油!加油🎈欢迎评论💬点赞👍🏻收藏📂加关注+!项目场景:近几个月可以说ChatGPT是火得一
RTS在阿里云视频直播的基础上进行底层技术优化,通过集成阿里云播放器SDK,支持在千万级并发场景下节点间毫秒级延时直播的能力,弥补了传统直播存在3~6秒延时的问题,确保了超低延时、低卡顿、秒开流畅的直播观看体验。本文介绍了基于RTS超低延迟直播优化强互动场景体验的最佳实践方案,并以阿里云播放器Aliplayer为例,详细介绍RTS超低延迟拉流接入、自动降级、排障信息获取等逻辑的实现,助力企业打造互动直播行业的产品竞争力。适用场景该方案适用于对超低延迟直播有诉求的客户,尤其是业务中存在强互动场景直播的场景。强互动场景直播主要是指对主播和观众存在互动,或观众存在更高实时性观看、画面互动需求的情况,
GPT-4是OpenAI发布的最新一代语言模型,于2023年3月14日正式发布,并通过API和ChatGPTPlus平台向用户开放。微软也证实,在GPT-4正式发布之前,就已经在部分版本的Bing中使用GPT-4技术。本文旨在对使用GPT-4技术的NewBing进行中立、专业的使用评测,探讨其使用体验的变化。界面与限额早于2月26日小编获得Newbing试用资格,届时Newbing初体验并不理想,限制多,例如对话只能持续5条自动终止,对话字符受限,生成效果不尽如人意。然而今日对接GPT-4全新bing额度扩充至15条,且对话字数扩容至2000字。Newbing提供了三种模式选项,即创造力、平衡
前阵InfoQ社区看到腾讯云腾讯云区块链服务平台(TBaaS)长安链体验活动,一顿操作猛如虎报了个名,体验完用一个字概括:强。非要再加几个字的话,总体感受下来装配模式灵活高效,配套工具完整辩解。话不多说开始主题本文目录结构分为区块链分类和TBaaS平台介绍、TBaaS平台上链教程三个部分一、区块链分类:大体上来说,区块链可分为公链,联盟链,私有链三种:公有链(PublicBlockchain)公有链是指任何人都能参与的区块链。公有链是去中心化程度最高的区块链,不受机构控制,整个账本对所有人公开透明。任何人都能在公有链上查询交易、发送交易、参与记账。加入公有链不需要任何人授权,可以自由加入或者离
什么是MD5?MD5信息摘要算法(英语:MD5Message-DigestAgorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hashvalue),用于确保信息传输完整一致。MD5由美国密码学家罗纳德·李维斯特(RonaldLinnRivest))设计,于1992年公开,用以取代MD4算法。这套算法的程序在RFC1321标准中被加以规范。1996年后该算法被证实存在弱点,可以被加以破解,对于需要高度安全性的数据,专家一般建议改用其他算法,如SHA-2。2004年,证实MD5算法无法防止碰撞(collision),因此不适用于安全性认证,如SSL公开密钥
“法大大音视频双录产品在保障线上签署安全合规的基础上,充分尊重‘客户的客户’的体验感。相比签约后再点击上传身份认证资料进行证据保全,我们更倾向在签约当下就获取签约主体的同意,将签署意愿认证及签约过程同步上传至司法链,进行数据存证,保证线上签约的合规闭环。整个流程用户只需点选一次,无多余操作。同时,我们的产品不仅可灵活适配法大大旗下产品,也可与客户其他业务系统快速对接,满足电子合同场景之外的取证和存证需求。”——张霖法大大证据中心副总经理2020年,《中国银保监会办公厅关于进一步做好疫情防控金融服务的通知》指出:要加强科技应用,创新金融基础服务方式。各银行保险机构要积极推广线上业务,在有效防控风
我正在尝试使用ES6modules构建一个新项目没有捆绑。我还是想用babel-7将TypeScript和JSX翻译成JS。我发现很难弄清楚如何为它设置开发服务器。我找不到任何类似于webpack-dev-server的“babel-dev-server”(热模块重新加载、浏览器同步、文件观察器)。一种可能是使用browsersync作为静态服务器,例如dist并并行运行类似babelsrc--out-dirdist--watch的东西。但这不包括热重载,对我来说似乎有点笨拙。此外,如果您可以为JS文件提供哈希以更好地控制缓存,那么它对于构建和开发步骤仍然有用。或者我可以配置像webp
目录一、人工智能的快速发展二、机遇1.自动化生产2.新技术的探索3.更高的薪酬三、挑战1.竞争压力2.人类工作替代程序员应该如何应对ChatGPT的机遇和挑战1.学习新技术2.注重团队合作3.加强人际交往4.保持开放心态5.保护个人隐私结论🐖🐖🐖🐖如果喜欢!!🐂🐂🐂🐂🐖🐖🐖🐖欢迎关注!!🐂🐂🐂🐂🐖🐖🐖🐖持续回访! !🐂🐂🐂🐂CSDN主页:所有博客内容,Java大树逐渐成长Gitee地址:想看博客代码??点击这里QQ:1939639916(有问题可以加好友,备注csdn)随着人工智能技术的不断发展,越来越多的人工智能产品和服务正在改变我们的生活方式和工作方式,尤其是对于程序员这一职业群体来说,人
本文的全部内容均有ChatGPT(OpenAI发布的一款AI对话引擎)自动生成,我替大家提了12个大家平时特别关心的问题,看看它在人工智能的深度学习之后,对于这些话题都有什么看法?回答的好不好,各位看官可以看完后自行评价。(本文全部内容都是在👆🏻对话框上完成)问题列表:1.怎么让老板意识到客户体验的重要性?2.客户体验部门都需要开设哪些职位?3.客户体验部门年度规划怎么做?4.客户体验如何理解「体验价值」?又该怎样体现?5.从事客户体验岗位需要哪些能力和技能?6.极致的客户体验可以到达什么程度?7.净推荐值能代表客户体验吗?8.如何把客户体验做的比竞争对手好一点点?9.如何快速找到影响客户体验