目录
一、GitHub Copilot
1、简介
2、工作原理
3、功能
二、GitHub Copilot X
1、什么是 GitHub Copilot X
2、GitHub Copilot X 的功能
三、支持、使用
1、支持
2、使用
四、实际研究、验证(代码方向)
1、代码生成
2、代码提示
3、生成测试用例
4、代码解释
5、代码注释
6、代码优化
7、bug查找
五、个人结论
六、最后说明
Copilot 提供的代码是否都是高质量的?
Copilot 可以替代开发人员吗?
PS: 年纪大了,不想努力了,这段时间在关注一些AI工具,看能不能让其帮忙干点活,自己能偷个懒,关键是那几根头发不能掉了,如果在掉点,去当和尚都不用梯度,换身衣服就行了。
不巧,老大又找我了,表示今年公司压力大,活那么多,人又没钱招,看现在AI这么火,看能不能找点工具来用,提高下研发效率,再这么搞下去,公司马上就要关张大吉了。公私兼顾,就花点时间搞这个事。
查资料,看牛人测评,动手验证,总体感觉Copilot还是可以的,给大家分享下吧。
一、GitHub Copilot
1、简介
GitHub Copilot 是一款基于 AI 的代码完成工具,可与流行的集成开发环境 (IDE) 无缝集成。Copilot 基于 OpenAI 的 GPT-3 语言模型构建,从大量公开可用的代码存储库中学习,实时提供上下文相关的代码建议,凭借其先进的 AI 功能,已超越了传统的代码自动完成功能。
2、工作原理
Copilot 依靠机器学习技术,特别是深度学习来分析和理解代码的模式和结构。对数十亿行代码的培训可以加深对不同编程语言、库和编码风格的理解。这种广泛的培训使 Copilot 能够在开发人员编写代码时向他们提供准确且上下文相关的建议。
3、功能
多语言支持: 支持多种编程语言,允许开发人员在不同的项目和编码环境中利用其功能。无论您使用 Python、JavaScript、C++ 还是任何其他受支持的语言进行编码,Copilot 都可以为您提供针对特定语言的语法和约定量身定制的相关建议。
集成开发环境 (IDE) 集成: 与流行的 IDE(例如 Visual Studio Code)无缝集成,使其可以在您首选的编码环境中轻松访问。这种集成可确保工作流程顺利进行,并允许您在不破坏现有编码设置的情况下利用 Copilot 的功能。
智能代码建议: 利用机器学习算法及其对公开可用代码的丰富知识,在您编写时提供智能且上下文感知的代码建议。它可以理解您正在处理的代码,并建议合适的补全、函数和整个代码片段,从而使编码过程更快、更高效。
高级自动完成: Copilot 的自动完成功能超出了基本的关键字建议范围。它根据周围的代码、函数名称和变量类型提供高度准确且上下文相关的补全。这种高级自动完成功能可以减少手动输入并帮助您更快地编写代码,从而节省时间。
代码生成: 可以根据提供的上下文生成整个函数、类和代码块。此功能对于重复或样板代码特别有用,使开发人员能够快速生成通用代码模式并专注于更高级别的问题解决任务。
二、GitHub Copilot X
1、什么是 GitHub Copilot X
GitHub Copilot X(GitHub Copilot 的未来)由 OpenAI 的 GPT-4 模型提供支持,是一种通过文本和视频进行通信的高度先进的 AI 工具。
它集成到 Visual Studio 和 VS Code 中,提供代码、功能和错误修复的建议。
2、GitHub Copilot X 的功能
语音编码:借助 Copilot X,您只需与助手交谈即可免提编码。它能够理解您的语音命令并将其翻译成代码。
拉取请求: Copilot X 简化了创建拉取请求的过程,生成描述性摘要,并提供代码演练以帮助您跟踪更新。
文档协助:如果您有冗长的文档需要阅读,Copilot X 可以帮助加快阅读过程。您可以简单地要求聊天机器人生成摘要并找到您的具体问题的答案。
Copilot for CLI: Copilot X 将其帮助扩展到命令行界面 (CLI),直接在终端中提供对 shell 命令和标志的支持。
Copilot 聊天:利用 Copilot X 作为聊天机器人来提出问题并寻求各种任务的帮助,例如生成代码、修复错误和创建测试。
Github Copilot是基于的AI代码完成工具,可以与主流IDE集成,提供跨多种编程语言的智能和上下文感知代码建议、高级自动完成和代码生成功能,简化了编码人员的工作量。
GitHub Copilot X 是一款先进的人工智能助手,针对软件开发人员提供了额外的功能,例如语音转代码、拉取请求帮助、文档支持和 CLI 帮助。
三、支持、使用
1、支持
语言支持性:Python,Javascript,Typescript,Ruby,Go,Php,C#,Java..
库和框架支持性:Node.js,React,Vue.js,Angular,Express...
IDE支持:VS Code, VS2022, IntelliJ IDEA等,注意版本。
个人认为:使用VS Code的前端,最好;其次是后端,好;再其次是客户端页面,最差。
2、使用
前提:有梯子
路径1:淘X购买
路径2:自己注册Github、注册Paypal(绑定银行卡 10$/月)(先免费体验一个月)
说明:注册后在IDE插件中,登录账号即可。
详细注册以及使用技巧参考(猫哥的,感觉还算详细)
Github copilot: 01 如何注册激活插件 | 博客 | 猫哥在线课堂
GitHub Copilot: 02 必须知道的7个技巧帮助你代码自动补全 | 博客 | 猫哥在线课堂
四、实际研究、验证(代码方向)
验证环境:VS2022 + C# (WinForm )
1、代码生成
可以输入要求让其生成代码段,生成效果与提问方式、详细程度有很大关系。
Excel 简易分两类: Excel97-03版本不行; Excel07以上版本可以
2、代码提示
在编辑器中输入一些代码时,会根据上下文自动提示一些代码片段,比IDE更强大(IDE是关键字补全,Copilot是推断补全),但是推断的代码不一定适用。
3、生成测试用例
大大提高了代码的测试效率。
4、代码解释
函数、语法、异常等解释。
5、代码注释
可以给代码增加注释,增强易读性。
注意:有时虽然会明确指出禁止修改原代码,但是还会修改源代码,需要尤其注意。
6、代码优化
针对简单代码段,其可以提供优化建议和方案;复杂代码段,优化效果一般。
7、bug查找
可以查找bug,但查找的bug,一般IDE自己都会提示,效果一般。
五、个人结论
1、如果需要开发新功能、或需要用到新技术,其能生成代码,给开发人员提供一个思路,减少查找资料、验证的时间,这点帮助巨大。
2、某些语法忘记怎么写了,写个注释让Copilot帮你写,不用去找度娘了,很好。
3、代码提示功能、生成测试用例功能很好,能提高不少编码效率。
六、最后说明
Copilot 提供的代码是否都是高质量的?
不一定,GitHub Copilot 提供的代码只是建议,需要开发人员进行审核和测试。
Copilot 可以替代开发人员吗?
不可以,GitHub Copilot 只是一种代码编写工具,能提升编码效率,但是依旧需要由开发人员编写、审核、测试代码。
注意:实质上目前的功能已经再抢初级开发的饭碗了,随着AI的不断完善,唉...
突然理解了那句话:那帮搞IT在干嘛? 天天砸别人饭碗,早晚把自己的也砸了...