人工智能 | 结对编程助手GithubCopilot
简介GitHub Copilot 是一款 AI 结对程序员,可帮助您更快、更少地编写代码。它从解释和代码中提取上下文,以立即建议单独的行和整个函数。GitHub Copilot 由 GitHub、OpenAI 和 Microsoft 开辟的生成式 AI 模型提供支持。它可作为 Visual Studio Code、Visual Studio、Neovim 和 JetBrains 集成开辟情况 (IDE) 套件的扩展。
官网地址:https://github.com/features/copilot
如何使用
情况准备
[*] 科学上网:具备流通访问 github 官网的网络情况。
[*] IDE:支持 JetBrains IDEs、Visual Studio 等集成开辟情况。
情况安装
[*] 进入官网github-copilot注册信息。
[*] github-copilot 收费 10 美元一个月,需要先填写信用卡信息,但是可以免费试用 30 天,以是可以在 30 天到期前取消续费。
[*]
https://i-blog.csdnimg.cn/blog_migrate/cf594a99872fe3766da6e296062ae47e.png
[*] 准确填写信用卡信息后点击 submit 就完成了。
[*]
https://i-blog.csdnimg.cn/blog_migrate/0076088610725e0078fc2f005288e444.png
[*] 打开 ide,以下以 pycharm 为例,打开 settings -> plugins -> marketplace ,搜索 github copilot 点击 install 后等待安装完成点击 restart ide。
[*]
https://i-blog.csdnimg.cn/blog_migrate/7467c1bb6dec84d91ddb292caf25e1ba.png
[*] 安装完插件后,在 pycharm 进行登录,点击 tools -> github copilot -> login to github。
[*]
https://i-blog.csdnimg.cn/blog_migrate/93a86b8f23ecdd9d3790c8adc72bbe85.png
[*] 点击 copy and open,点击验证码粘贴到弹出的浏览器中,点击 continue 后,点击授权 Authorize GitHub Copilot Plugin。
[*]
https://i-blog.csdnimg.cn/blog_migrate/1a2c073b1bd5a2c1a77e8c4325daf44e.png
[*] 等待 pycharm 加载后就可以使用 github copilot 了。
https://i-blog.csdnimg.cn/blog_migrate/8c65c55a5fdfc19b98b73d8067149fe5.png
实践演练
使用分析
[*] PyCharm 右下方状态栏中,红圈表现 GitHub Copilot 的logo,表现开启 GitHub Copilot 插件。
[*] 不论是编写代码中的解释,照旧一句实行代码,或是一个代码块、一个函数,GitHub Copilot 都会随着你的输入过程,不停提供代码补全建议。
注意事项:
[*] GitHub Copilot 也大概猜错你打算写的代码,但只要你继续输入,它就会给出新的建议。
[*] 对于任何给定的输入,GitHub Copilot 大概会提供多种建议。可以根据需求选择要使用的建议,也可以拒绝全部建议。
[*] 用户可以启用或禁用 GitHub Copilot:单击 PyCharm 右下方状态栏中的状态图标选择启用或禁用 GitHub Copilot 的建议 。
相关快捷键
https://i-blog.csdnimg.cn/blog_migrate/bd1e865b9cf49845a5465a16248943f1.png
使用 Copilot 编写一个快速排序
[*] 输入相关解释以及开头。
[*]
https://i-blog.csdnimg.cn/blog_migrate/307ccfa7cb771f6a2ca3b9624f636dbe.png
[*] 它会自动开始补全代码。灰色部分是它提示的代码,点击 tab后就可以接收它的建议了。
合并两个列表,而且排序
[*] 输入解释与要求: 合并两个列表,而且排序
根据提示的需求,一直按tab键,中心会自动产生解释以及实现的代码,以下全部的代码都是自动生成:
def merge_list(list1, list2):
# 合并两个列表,并且排序
# 1. 定义两个指针,分别指向两个列表的第一个元素
p1 = 0
p2 = 0
# 2. 定义一个新的列表,用于存储合并后的结果
result = []
# 3. 循环比较两个指针所指向的元素,将较小的元素添加到新的列表中
while p1 < len(list1) and p2 < len(list2):
if list1 < list2:
result.append(list1)
p1 += 1
else:
result.append(list2)
p2 += 1
# 4. 将未比较完的列表中的元素添加到新的列表中
result += list1
result += list2
# 5. 返回新的列表
return result
[*] 编写一个单位测试用例,测试是否实现,编写一个函数名为def test_merge_list():,其他使用自动补全,最终单位测试用例生成的效果为:
def test_merge_list(): assert merge_list(, ) ==
取消 github coilpot 订阅
这里表现 10 美元是下个月的扣费本月是没有费用产生的。点击右上角头像 -> settings -> billing and plans -> plans and usage 划到下处取消 github coilpot 的订阅。
https://i-blog.csdnimg.cn/blog_migrate/d37f836b81df24eb51ba8d5dbcfb24d9.png
总结
[*] Copilot 的情况安装与使用都非常简单,可以把它当作一个在 IDE 中使用的ChatGPT。
[*] 一些明白的代码逻辑,可以交给它完成。
[*] Copilot并非全部的输出都是精确的,在使用的过程中,需要适当进行纠错。
注意:Copilot是一个收费软件,如果试用期过后不想继续使用,肯定要记得取消订阅
推荐学习
人工智能测试开辟练习营,为各人提供全方位的人工智能测试知识和技能培训。行业专家授课,实战驱动,并提供人工智能答疑福利。内容包罗ChatGPT与私有大语言模型的多种应用,人工智能应用开辟框架 LangChain,视觉与图像识别自动化测试,人工智能产物质量保障与测试,知识图谱与模型驱动测试,深度学习应用,带你一站式掌握人工智能测试开辟必备核心技能,快速提升核心竞争力!
https://i-blog.csdnimg.cn/blog_migrate/5ca9d97c45e4cd596f4e75d1e702e7b5.png
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]