0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【比特熊充电栈】开启 GitHub Copilot 开发之旅

微软科技 来源:未知 2023-09-22 00:20 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

智能化时代,人工智能逐渐成为新的生产力引擎,它的每一次创新演进、每一次在不同场景的应用,都可能重新定义开发人员的生产力。GitHub Copilot 的出现,作为 AI 结对程序员,可以直接从中提取上下文,即时对单独行乃至整个函数提出建议,让开发生产力直接拉满。

7f9108b8-589a-11ee-939d-92fbcf53809c.png

如何快速接入 GitHub Copilot 的能力,并在企业场景中进行开发实战?本期【比特熊充电栈】特邀 GitHub 原厂工程师和微软资深专家,共同开设 GitHub Copilot 工作坊,介绍如何在现有 Azure 账户中开启 GitHub Copilot,全方位展示 GitHub Copilot 能力与使用技巧,着重分享在企业级应用开发与实战的经验,以及行业应用实例及成果。

7fdbab3e-589a-11ee-939d-92fbcf53809c.png

黄庆春

GitHub 高级解决方案工程师

人工智能编程,研发效能,生成式人工智能

8040c3d4-589a-11ee-939d-92fbcf53809c.png

庄俊乾

微软资深解决方案专家

Copilot Best Practice, DevOps with AI, Azure OpenAI

80a23ede-589a-11ee-939d-92fbcf53809c.png

卢建晖

微软高级云技术布道师

GitHub, GitHub Copilot, AI, GitHub Codespaces

文末有惊喜!

GitHub Copilot 干货文档在等你!

811b52a6-589a-11ee-939d-92fbcf53809c.png

入门

GitHub Copilot 全解析

如今,DevOps 面临着缺少协作导致生产力缺失,应用漏洞带来的安全风险,以及企业没有赋予开发者充分利用 AI 能力的机会,从而错失商机的挑战。据 McKinsey 研究发现,能为开发人员提供更好工作环境的公司,比竞争对手平均实现 4-5 倍的营业额增长

GitHub 平台的出现能为开发者带来更多 AI 赋能。作为当今软件开发领域著名的开源版本控制平台之一,GitHub 平台已经形成规模化,能为开发者带来安全、生产力、协作共赢、AI 赋能上的提升。

8170475c-589a-11ee-939d-92fbcf53809c.png

在 AI 赋能方面,GitHub Copilot 能为开发者提供基于项目上下文的编码建议,根据注释生成代码,自动填充重复性/胶水代码,提供代码实现的不同选项,从而提高开发人员生产力,加速研发创新,补齐技能短板,赋能开发者领先的优势。

01 版本介绍

GitHub Copilot 分为个人版和企业版:

面向个人

开发环境插件支持

根据自然语言生成代码

提供多行代码建议

提高生成测试代码速度

禁止使用公有代码

面向企业

包含所有面向个人功能,以及:

简化许可管理

组织级策略管理

行业领先的隐私控制

VPN代理支持

02 优势价值

2022年,GitHub 邀请2000多个开发人员进行实验,GitHub Copilot 表现优异:

从效率上来说:96%的开发者能更快完成重复性工作,88%的开发过程会更加高效,74%的开发者能更专注于令人满意的工作。把95名开发人员随机分成两组,用 JavaScript 实现一个网页服务器,使用 GitHub Copilot 的开发者平均完成任务的时间为1小时11分,不使用的则为2小时41分。

从代码接受率看,GitHub Copilot 代码建议接受率在35%,新代码生成率在46%,期待未来能有80%的代码由 GitHub Copilot 来写。

81f66fd0-589a-11ee-939d-92fbcf53809c.png

03 实现方式

GitHub Copilot 的使用方式很简单,可以在 IDE 中直接安装插件,目前已经支持 VS Code、GitHub Codespaces、Visual Studio (Windows)、JetBrains IDEs、Neovim 等。

GitHub Copilot 后端使用 OpenAI GPT 模型,IDE 会通过上下文把请求发送给后端,大模型会返回建议和结果。对于有安全认证需求的企业用户来说,IDE Plugin 会发送认证 & 许可检查到 GitHub.com,GitHub.com 会返回 Copilot Token,再发给 Copilot 代理服务。在 Copilot 代理服务层,会用到 Microsoft Azure 的很多服务,比如 Azure AI Service、Responsible AI,来进行代码质量及安全过滤,开发相关性分析和公共代码检测。

04 Copilot 工具推荐

GitHub 还推出了很多未来 AI 赋能的软件开发工具,比如 Copilot Chat、GitHub Copilot X。

Copilot Chat:基于上下文以类似 ChatGPT 的方式与 Copilot 对话,能够进行生成单元测试、解释代码、建议代码修补、回答编程问题、翻译编程语言、增加代码可读性等操作。

GitHub Copilot X:代表了 GitHub 将 AI 助手嵌入软件开发的整个生命周期的长远愿景。它不仅采用了 OpenAI 的新 GPT-4 模型,而且还为 Copilot 引入了聊天和语音功能,让 Copilot 能够处理拉取请求、命令行和文档,以回答有关项目的问题。GitHub Copilot X 有以下核心功能:

Copilot for Pull Requests:能够通过 AI 标记 Pull Requests,自动建议 PR 描述语句和段落,自动在需要的地方提醒并建议测试。

Copilot for Docs:能够回答有关软件文档的问题,使开发人员免于搜索大量文档,初步支持 React、Azure Docs 和 Mozilla Developer Network (MDN) 文档查询。

Copilot for the CLI:将自然语言翻译成终端命令,可以在命令行中通过对话的方式解决问题。

811b52a6-589a-11ee-939d-92fbcf53809c.png

实战

GitHub Copilot 助力开发者提升效率

GitHub Copilot 的价值定位是基于 OpenAI 的、针对开发者的智能助手。作为程序员的 AI 助手,它帮助开发者根据需求描述自动产生代码。在具体应用过程中,GitHub Copilot 可以在哪些场景中与当前的工作融合?在最新的 Copilot Chat 使用中又该如何结合 Copilot 本身?

82de0156-589a-11ee-939d-92fbcf53809c.png

01 GitHub Copilot 企业级服务

国内用户可以使用个人版,也可以使用企业版,企业版默认代码不会保存在 GitHub,支持用户 SSO (连接 Azure AD 等),能提供更好的企业级别服务支持。

GitHub Copilot for Business(即企业版)需要一个底座, GitHub Organization 或者是 GitHub 企业版。

GitHub Organization

每个组织单独设置Copilot的规则

每个账号单独配置Azure 订阅

每个账号单独邀请人员

人员只能使用GitHub 个人账号,不支 持AAD等。

没有企业支持,技术支持依靠论坛,开通简单,不需要单独购买GitHub Enterprise。

GitHub 企业版

GitHub 企业版,下面可以有多个GitHub Organization 集中管理多个组织:

Enterprise级别关联Azure;不需要一个个 Organization设置

SAML (使用已有的Azure AD等账号,实现单点登录)

SCIM( 用户自动同步到 GitHub)

行业级别的安全 (网络白名单等):审计日志等,仅AAD用户可以等。

GitHub 企业版能提供更好的安全性和企业技术支持,可以部署在本地,提供企业Git仓库功能。

02 激活 GitHub Copilot

用户基于免费的 GitHub Organization,可以快速激活 GitHub Copilot:

创建免费的 GitHub Organization:登录GitHub.com 以后,访问 https://GitHub.com/settings/organizations

进入 Organization Setting 页面,关联Azure 订阅:进入刚创建的 GitHub Organization,选择 Setting- >Billing and Plan,右边页面滚动至右下方,点击“Add Azure 订阅”按钮进行关联。

确保成功管理关联上Azure 订阅:检查 billing 页面,右边按钮是否是 Disable,内容是否显示为 All metered services are being billed through Azure。

进入Copilot设置页面,激活Copilot:点击 Setting-Copilot-Acces,选择给组织内所有用户配置Copilot,还是给指定用户配置。

03 企业常见问题 Q&A 精选

Q1:使用 GitHub Copilot,必须把代码迁移到 GitHub 代码仓库吗?

A:大可不必。GitHub Copilot 是代码辅助生成工具,会协助产生代码,产生的代码可以和以前一样,保存在任何代码版本管理平台中。GitHub Copilot 不改变用户当前的 DevOps 流程。

Q2:用户管理,必须使用 GitHub.com 的个人注册用户吗?

A:支持使用 GitHub.com 的个人用户(邀请制)以及和 Azure AD 等标准的 SAML 集成,以使用主流的第三方用户管理系统,实现单点和统一登录。

更多常见问题,可以前往文章结尾的小程序获取。

811b52a6-589a-11ee-939d-92fbcf53809c.png

申请

开启 GitHub Copilot 开发之旅

申请 GitHub Copilot 试用账号,就能即刻开启智能开发之旅。首先要申请 GitHub 账号,才能为您的个人帐户订阅 GitHub Copilot

在 GitHub 页面的右上角,单击个人资料照片- Settings,进入个人账户设置页面。

在侧边栏的“代码、计划和自动化”部分,单击 Copilot,出现 GitHub Copilot 窗口。

在 GitHub Copilot 设置页面,选择启用 GitHub Copilot。

在弹出的付款计划页面中,需要选择"按月付款"或"按年付款",选择后继续操作 Get access to GitHub Copilot。

填写支付订阅计划的付款信息,需要填写信用卡资料,然后单击提交。

单击“保存”,完成个人帐户注册 GitHub Copilot。

83c36368-589a-11ee-939d-92fbcf53809c.png

即时、高效、智能的开发体验,离不开 GitHub Copilot,也离不开 GitHub Codespaces。GitHub Codespaces 允许用户在任何地方进行编码,提供由⾼性能虚拟机支持的 Visual Studio Code,这些虚拟机可在几秒钟内启动,并且可以⾃定义相关的开发环境和插件,从而无缝对接代码。GitHub 团队就在使用 Codespaces 来开发和维护 GitHub 的功能。新⼯程师可以在⼤约 10 秒内准备好所有的环境设定投入工作,而且还是在 11GB 的 GitHub 代码库上!

在 Codespace 中使用 GitHub Copilot,了解如何使用 Codespaces 和 GitHub Copilot 来提高开发⼈员的⼯作效率?点击文末“阅读原文”,回看本期 GitHub Copilot工作坊,一起开始动手实践。

点击下方图片

获取 GitHub Copilot 干货文档

846ae386-589a-11ee-939d-92fbcf53809c.jpg

添加比特熊个熊微信

加入【比特熊粉丝后援会】

获取更多 GitHub Copilot 干货

与开发者一起嗨聊,期待成为你的好友~

84b3074c-589a-11ee-939d-92fbcf53809c.jpg


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微软
    +关注

    关注

    4

    文章

    6775

    浏览量

    108224

原文标题:【比特熊充电栈】开启 GitHub Copilot 开发之旅

文章出处:【微信号:mstech2014,微信公众号:微软科技】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    EZ-USB开发套件:开启USB产品开发之旅

    EZ-USB开发套件:开启USB产品开发之旅 引言 在当今数字化时代,USB技术广泛应用于各种电子设备中。对于电子工程师而言,开发基于USB
    的头像 发表于 05-17 16:55 382次阅读

    EnOcean Developer Kit EDK 350:开启能量收集无线传感器技术开发之旅

    EnOcean Developer Kit EDK 350:开启能量收集无线传感器技术开发之旅 在电子工程师的世界里,不断探索和创新是永恒的主题。今天,我们要深入了解一款强大的开发
    的头像 发表于 05-14 16:30 159次阅读

    探索AOAA Kit:开启Android开放配件应用开发之旅

    探索AOAA Kit:开启Android开放配件应用开发之旅 在当今的电子科技领域,嵌入式开发正以惊人的速度发展,为各种智能设备的创新提供了强大的支持。今天,我们将深入探讨Embedd
    的头像 发表于 05-14 16:30 141次阅读

    EPC9205开发板:开启eGaN FET评估之旅

    EPC9205开发板:开启eGaN FET评估之旅 在电力电子领域,高效、紧凑的功率模块一直是工程师们追求的目标。EPC9205开发板就是这样一款具有代表性的产品,它为评估EPC204
    的头像 发表于 05-14 15:50 137次阅读

    EPC90153开发板快速上手指南:开启高效电源转换设计之旅

    EPC90153开发板快速上手指南:开启高效电源转换设计之旅 在电源转换技术领域,氮化镓(GaN)场效应晶体管(FET)凭借其卓越的性能,正逐渐成为工程师们的首选。EPC90153开发
    的头像 发表于 05-14 13:15 185次阅读

    EPC90145开发板快速上手:开启高效功率转换之旅

    EPC90145开发板快速上手:开启高效功率转换之旅 在电子工程领域,开发板是验证和测试新器件性能的关键工具。今天,我们就来深入了解一下EPC90145
    的头像 发表于 05-14 13:05 155次阅读

    EPC90141开发板快速上手指南:开启高效电源转换设计之旅

    EPC90141开发板快速上手指南:开启高效电源转换设计之旅 在电源转换设计领域,氮化镓(GaN)技术凭借其卓越的性能正逐渐成为主流。EPC90141开发板作为一款专注于GaN FET
    的头像 发表于 05-14 13:05 181次阅读

    EPC9010开发板快速上手:开启eGaN FET评估之旅

    EPC9010开发板快速上手:开启eGaN FET评估之旅 作为电子工程师,在功率转换领域不断探索高效且可靠的解决方案是我们的日常工作。今天要给大家介绍的EPC9010开发板,它能帮助
    的头像 发表于 05-14 12:40 210次阅读

    EPC9005C开发板:开启EPC2014C eGaN FET评估之旅

    EPC9005C开发板:开启EPC2014C eGaN FET评估之旅 在电子工程师的日常工作中,开发板的选择和使用对于评估新型电子元件的性能至关重要。今天,我们就来详细了解一下EPC
    的头像 发表于 05-14 12:40 208次阅读

    CAN Bus 24开发套件:开启CAN网络开发之旅

    CAN Bus 24开发套件:开启CAN网络开发之旅 在电子工程领域,CAN(Controller Area Network)总线技术凭借其高可靠性、实时性和抗干扰能力,在汽车、工业自
    的头像 发表于 05-13 13:50 177次阅读

    Renesas RL78/G14 入门指南:快速开启开发之旅

    Renesas RL78/G14 入门指南:快速开启开发之旅 在电子开发领域,Renesas Starter Kit for RL78/G14 是一款备受关注的开发套件。今天,我将结合
    的头像 发表于 02-28 17:20 1556次阅读

    Renesas FPB - RA2T1快速原型开发板:开启高效设计之旅

    Renesas FPB - RA2T1快速原型开发板:开启高效设计之旅 在电子设计领域,一款优秀的快速原型开发板能极大地提升开发效率,为项目
    的头像 发表于 12-26 16:20 544次阅读

    TDK SmartMotion Platform Ver. G硬件使用指南:开启高效传感器开发之旅

    TDK SmartMotion Platform Ver. G硬件使用指南:开启高效传感器开发之旅 在当今的电子技术领域,传感器的应用越来越广泛,而如何高效地对传感器进行开发和评估成为
    的头像 发表于 12-26 10:30 629次阅读

    快速上手FRDM-KE17Z512开发板:开启高效MCU开发之旅

    快速上手FRDM-KE17Z512开发板:开启高效MCU开发之旅 作为电子工程师,在MCU开发的道路上,拥有一款合适的
    的头像 发表于 12-24 16:50 601次阅读

    微软开源GitHub Copilot Chat,AI编程迎来新突破

    GitHub Copilot + vscode的组合我已经用了很久,我的代码开发效率完全提升了一个level。帮我代码提示,代码不全,注释理解生成代码等等,这些我是我经常用到的功能。 在今天凌晨4点
    的头像 发表于 07-02 09:34 1564次阅读
    微软开源<b class='flag-5'>GitHub</b> <b class='flag-5'>Copilot</b> Chat,AI编程迎来新突破