Copilot:AI自动写代码,人工智能究竟还能取代什么?

3 篇文章 3 订阅
订阅专栏

Copilot:AI自动写代码,人工智能究竟还能取代什么?

在这里插入图片描述


前言

AI绘画掀起一阵热潮之后,AI写代码又逐渐进入了我们的视野,似乎这一步我们还没想到就迅速到来了,难道说AI在取代画家之后,还要取代程序员吗?相信我们都曾幻想过这一天,在编写那些重复且无聊的代码时,虽然能够复制粘贴,但是或多或少确实有过“如果有人能帮我写完就好了”的想法,而这一点几乎已经被实现了;但是正如我们所预想的,随着Copilot的出现,就伴随着一系列问题涌现而来,训练数据的版权问题和生成代码的安全问题就是其中的两个关键。本文就将带领大家来领略AI代码的热潮。

文章目录

  • Copilot:AI自动写代码,人工智能究竟还能取代什么?
  • 前言
  • 什么是Copilot
    • 概念与背景
    • 背后的原理
  • 如何使用AI写代码
    • 方法使用
    • 实例分析
  • 随之而来的问题
    • 训练数据的版权
    • 生成代码的安全/正确性
  • 总结

什么是Copilot

概念与背景

  • CopilotGithub和OpenAI合作研发的AI编程工具,基于数十亿行开源代码进行训练,能够按照不同的程度、不同的功能要求,辅助人类完成编程任务

在这里插入图片描述

  • 背景介绍
    \qquad 在2018年6月,微软公司正式以75亿美元收购Github,而这次收购引起很大反响,认为这代表着软件开发者的影响力的日渐增长,将软件开发的下一个发展看成每个人都可以贡献的世界;但是同样有许多网友戏称这是一桩十分滑稽的收购案例,世界上最大的闭源公司收购了世界上最大的开源公司;微软毫无疑问在操作系统、办公套件等领域是绝对的垄断地位,而Github作为一个开源代码管理平台,同样在现在已经成立了近15年,拥有几千万的开源社区人员和过亿的代码库;
    \qquad 但是这样“滑稽的收购案”并没有如许多人想的那样会导致不好的后果,在仅半年之后,Github就开放了可以无限制的免费试用Github私有仓库,并且提出了了统一的企业产品Github Enterprise;而又过了仅几个月后,Github又推出了移动版本,GitHub for mobile,能够让大家无论身在何处都可以继续与开发团队保持协作;而本文的主题Copilot也在去年就已推出。

  • 用处:那么Copilot具体有什么用呢?让我们一一来罗列:

  1. 在一些集成开发环境中编程中,给出完整的方法或者算法建议;
  2. 提供样板代码和辅助单元测试
  3. 在一些较为简单直观的循环节或其他重复性较强的代码中,甚至能够自动写出完整可用的代码块

背后的原理

  • 官方介绍:

OpenAI Codex was trained on publicly available source code and natural language, so it works for both programming and human languages. The GitHub Copilot extension sends your comments and code to the GitHub Copilot service, and it relies on context, as described in Privacy below i.e., file content both in the file you are editing, as well as neighboring or related files within a project. It may also collect the URLs of repositories or file paths to identify relevant context. The comments and code along with context are then used by OpenAI Codex to synthesize and suggest individual lines and whole functions.

OpenAI Codex 是在公开可用的源代码和自然语言上进行训练,所以它对编程和人类语言都适用。GitHub Copilot 扩展将你的评论和代码发送到 GitHub Copilot 服务,它依赖于上下文,如下面的隐私描述,即你正在编辑的文件中的文件内容,以及项目中的邻近或相关文件。它还可能收集存储库的 URL 或文件路径,以确定相关的背景。然后,OpenAI Codex 使用注释、代码以及上下文来合成和建议个别行和整个功能。

\qquad 并且它尤其擅长书写 Python、Go、Ruby、JavaScript、TypeScript等语言,在书写代码时通过IDE中的插件和模型通信,然后根据内容辅助完成代码,交互流程如下:
在这里插入图片描述

  1. GitHub Copilot 编程器向 GitHub Copilot 服务发送上下文信息,包括注释、代码等信息;
  2. GitHub Copilot 服务使用OpenAI Codex模型,它基于数亿公开源代码及自然语言进行训练,然后向 GitHub Copilot 编程器提供建议,最后返回匹配的单个代码行或者整个方法
  3. GitHub Copilot 编程器不断向 GitHub Copilot 服务提供改善建议

如何使用AI写代码

方法使用

  • 步骤:以VSCode作为示例,首先搜索插件GitHub Copilot,下载并安装

在这里插入图片描述

  • 试用:在登录GitHub授权之后,需要访问Copilot的官网地址申请进行试用,而实际的订阅费用是每月10美元或每年100美元

在这里插入图片描述

实例分析

  • 根据注释和对方法的声明(参数、返回值),补充完成代码:

在这里插入图片描述

  1. 第一步:创建一个sentiment.ts文件,然后引入一个名为fetch-h2的Node.js包;
  2. 第二步:书写相关注释,尽可能详细的说明方法的目标和限制要求,以上图为例,功能为判断一句话包含的情感究竟是正面评价还是反面评价,限制为使用Web服务完成
  3. 第三步:书写相关声明(包含方法的参数和返回值类型
  • 根据注释直接完成整个方法代码:Python实例

在这里插入图片描述

同样,在给出函数参数及返回值后,通过书写注释就可以自动完成目标代码:解析实例消费数据,返回日期、数值和单位,同时忽略开头是#的代码行,将时间通过datetime库解析;其中可怕的是,它能够自行智能分析给定数据格式,运用空格分开,并将数值自动转为float格式,最终数据组合成元组返回;

  • 自动填充相似代码:

在这里插入图片描述

这一部分有些惊人,这意味着AI需要不仅理解我们的目标,还要能够准确的分析出其中的特征

  • 自动生成匹配单元测试代码:

在这里插入图片描述

这里似乎是更加智能的完全生成,但是可能也是安全性、正确性最难保证的一部分;

  • 甚至可以进行不同模式的切换:

在这里插入图片描述


在如此强大的功能下,确实不禁让我们感到兴奋和一种恐惧,但是同样,我们也要清楚的认识到,AI代码,现在更多的还是去代替那些重复性、较为低级的部分,如果真的有一天,AI能够自行书写高级、充满创新目标的代码,那么我们可能就需要考虑一些其他的生存问题了。


随之而来的问题

训练数据的版权

  • 训练数据:Github Copilot是通过OpenAI 创建并授权微软AI 系统Codex完成,而Codex是基于数亿的开放源代码进行训练,其中自然包含GitHub上的代码
  • 问题:
  1. Github Copilot事实上在未经许可的情况下使用了开源代码,一定程度导致了对于开源社区的抹杀;
  2. GitHub上的部分代码是根据一些开源许可进行发布的,例如MIT、GPL、Apache 等开源许可证,但是在Copilot训练使用代码时,并没有给出相应的版权信息
  • 要求:实际上这些均属于法律问题,应该有相关规定予以限制,例如美国的一位律师Matthew Butterick就提出对于使用Copilot工具的人需要满足以下要求:
  1. 遵守开源许可证规定的义务
  2. 使用受「许可证例外」约束的代码,在版权法约束下合理使用

生成代码的安全/正确性

  • 安全性:从原理流程图中我们能够清楚得知,获取代码的提示或补充,必然需要发送一定的注释、代码信息,这就会导致一定的代码外泄风险

  • 正确性:在使用Copilot工具进行代码编程辅助时,由于生成代码不能保证正确性,且背后的安全问题和知识产权问题也无法保证,故使用者需要自行为代码的质量和安全性负责

  • 案例:实际上,在Copilot开放的这几年来,已经产生了许多侵权案例,以及对于GitHub的上诉,软件自由保护协会SFC宣布将会结束自己对 GitHub 的所有使用,并将协助其他自由软件项目从 GitHub 迁移;德国的一位教授Tim Davis也宣称自己的大量代码遭到侵用;

在这里插入图片描述

\qquad 我们上面提到的Matthew Butterick甚至已经委托律师事务所发起诉讼,要求Copilot赔偿过90亿美元的法定赔偿金,认为它们违反了以下内容:

  1. 违反许可证版权要求
  2. 违反GitHub 的服务条款和隐私政策
  3. 违反DMCA 1202,禁止删除版权管理信息
  4. 违反加州消费者隐私法,以及引起相关法律索赔的其他法律。

总结

新的工具出现,我们自然是要首先探索它的无限可能性,尽可能地为人类工作做出更加有益的效果,但是从Copilot的诞生及使用来看,AI辅助编程仍然有着很长的路要走,不仅是在于代码生成的准确性和更少的注释,更多的问题也是关于知识产权、隐私安全的领域。

在这里插入图片描述

AI人工智能】用于代码生成的大型语言模型 Large Language Models for Code Generation
AI天才研究院
06-09 1万+
大型语言模型通常采用Transformer等注意力机制架构,能够有效捕获输入序列中长程依赖关系。具体而言,编码器将输入序列映射为上下文表示,解码器则根据上下文和已生成的部分序列预测下一个token。代码生成任务中的输入序列可以是自然语言的问题描述、函数签名、测试用例等形式。模型通过学习大量的代码-自然语言语料对,建立两者之间的映射关系。在生成阶段,给定输入序列,解码器基于学习到的知识逐步推理和生成目标代码
沙棘黄酮
kytuihjursg的专栏
10-21 793
注意:本站开通货到付款业务!<br /><br />详情请登陆发财致富网查询:www.fczfw.com www.zl100.com www.zf112.com <br />地址:山东济南科技市场628-10号 电话:13793112776 13012983820 咨询QQ:598589935 <br /><br /><br />1.200410017392.9 沙棘籽渣中同时分级提取沙棘黄酮和沙棘多糖的方法<br />2.200410024998.5 用沙棘黄酮制备降血糖和
GitHub Copilot在Vs Code里快速代码,最详细使用教程
热门推荐
Daylighte的博客
08-07 2万+
前端开发体验Ai代码助手,GitHub Copilot是一个人工智能配对程序员,可以帮助你更快、更少地编代码。它从注释和代码中提取上下文,以立即建议单个行和整个函数。GitHub CopilotGitHub、OpenAI和微软开发的生成式AI模型提供支持。它可以作为Visual Studio Code、Visual Studio、Neovim和JetBrains集成开发环境(ide)套件的扩展。
CoPilot 项目使用教程
最新发布
gitblog_00114的博客
09-13 317
CoPilot 项目使用教程 CoPilot SOCFortress CoPilot 项目地址: https://gitcode.com/gh_mirrors/copilot/CoPilot ...
AI 自动代码插件 Copilot(副驾驶员)
探索技术与实践的旅程,分享编程经验与工具使用心得,助力开发者提升技能。
07-30 1万+
# AI 自动代码插件 Copilot `提示:Copilot单词直译过来就是副驾驶员的意思。` **介绍:本质上就是基于GitHub开源的亿级别的代码,训练AI模型,自动生成代码。** 就是数据量(GitHub的数据量就很大!)能够决定你AI模型精度的上线。......
AI系统首次实现真正自主编程】利用遗传算法,完爆初级程序员
weixin_33890499的博客
09-21 513
本文讲的是利用遗传算法,完爆初级程序员,让AI自动编程一直是计算机科学家的梦想。目前这个方面的成果还非常有限,比如让AI自动补完编程语言,或者执行简单的加法程序。今天我们要介绍的这项工作,号称是第一个能够全自动生成完整软件程序的机器学习系统“AI Programmer”。 研究人员表示,他们用这个系统证明了长久以来的假设,那就是功能完备的程序确实能...
完整的项目源码!在线考试完整系统源码(可接私活)
m0_68103666的博客
04-11 1015
最近有一些读者问我有没有完整的,今天给大家整理了一下,并且录制了搭建的教程,分享给大家。
自动代码AI还能帮你
qq_35254085的博客
08-16 2048
经常会看到这样的问题,AI以后真的会取代程序员吗?这是人工智能对编程的威胁吗?近日,OpenAI带着他们能够自动代码的Codex引发了热议。 AI编程其实也并非是新鲜事了,之前的AI自动辅助编程工具Copilot也是一个。实际上,Codex更像是Copilot的一个全面升级。二者同样都是再GPT-3的基础上构建而成,不过Codex能够直接将英文需求描述直接转换为代码。 GPT-3是一个训练集45TB、参数规模1750亿、预训练结果700G的AI模型,其一经问世就成为了万众瞩目的焦点。在其出现之后,使用GP
从GPT-4到Copilot:问题都让AI解决了,还要人类干什么?
04-05
标题中的“从GPT-4到Copilot:问题都让AI解决了,还要人类干什么?”引发了对人工智能技术在当今社会角色的深度思考。GPT-4是OpenAI公司继GPT-3之后的预训练语言模型,它在自然语言处理领域的表现越来越接近人类智能...
GitHub Copilot,这一新的人工智能工具可能会取代程序员.docx
04-17
- **文档生成**:GitHub Copilot还能自动生成代码注释和文档,帮助开发者更好地理解和维护代码。 - **自定义和学习能力**:随着时间的推移,GitHub Copilot会不断学习用户的编码习惯,并逐渐适应用户的特定需求。 #...
人工智能大模型生成式AI开始流行,程序员未来会被取代吗?
u011938827的博客
07-02 385
程序员与其担心被取代,还不用直接拥抱大模型,增强大模型不能取代人工的能力。如增强产品需求调研能力、产品规划设计能力、沟通协调能力、深度提问能力及分析解决问题的能力。而普通无技术背景的,好好用好各种AI工具就可以了。如目前免费好用的AI工具:豆包、Stable Diffusion、可灵、秘塔搜索等。大模型可以将程序员从繁杂基础的编码和Debug调试工作中解放出来,使程序员有更多的精力放在产品架构设计、产品商业价值实现的思考方面。
计算机行业周报:GPT-4加持CopilotAI+编程前景初现.pdf
05-28
GPT-4的出现不仅推动了大模型的通用化,而且对劳动力市场产生了重大影响,预估有相当一部分工作任务将被自动取代。英伟达发布的DGX Cloud和新款推理GPU,以及微软引入的ImageCreator和CopilotX计划,都在进一步...
自动代码?Copilot尝鲜及其奇技淫巧
不定期更新系统使用、编程小技巧,哔哩哔哩账号:https://space.bilibili.com/399455629,欢迎关注
12-01 2733
Copilot是一款帮助程序员代码的利器(Co pilot,协同飞行员),本文主要进行Copilot的简要介绍及讲解其使用方法
AIGC for code(text-to-codeAIGC/AI生成代码/生成式AI代码生成/AI编程工具/自动编程/自动生成代码/智能编程工具/智能编程系统)
机器学习与软件工程
07-06 3838
AIGC for code(text-to-codeAIGC/AI生成代码/生成式AI代码生成/AI编程工具/自动编程/自动生成代码/智能编程工具/智能编程系统)
总结一些AI编程工具,自动代码,即使不会编程也能轻松玩转!
qq_16027093的博客
06-29 1911
然而,ChatGPT虽然具有编程能力,但并非专为编程设计,而OpenAI Codex则更像是AI编程的基础平台,比如GitHub Copilot就是基于其构建的。在功能上,Tabnine和GitHub Copilot都提供强大的代码补全功能,都能根据上下文提供智能的代码建议,并支持多种编程语言。今天,我们要重点介绍的是Tabnine,这是一款基于AI代码补全工具,它利用了GPT-3模型来为用户提供精准而高质量的代码补全建议。无论何时编代码,Tabnine都能自动补全代码,并为您提供多个可能的代码选项。
AI自动编程,程序自动化生成
weixin_34075551的博客
05-16 979
2019独角兽企业重金招聘Python工程师标准>>> ...
15种AI工具帮助您无错误地编代码AI自动代码非常实用!
m0_71049010的博客
05-08 1万+
以下是目前可用的 15 种 AI 工具。IBM Security AppScan Standard 是一个交互式分析工具,它使用机器学习来查找代码中的安全漏洞。IBM Security AppScan Standard 是一个交互式分析工具,它使用机器学习来查找代码中的安全漏洞。IBM Security AppScan Source 是一个静态分析工具,它使用机器学习来查找代码中的安全漏洞。IBM Security AppScan Source 是一个静态分析工具,它使用机器学习来查找代码中的安全漏洞。
自动代码AI工具,已经支持 VsCode 插件安装使用
代码讲故事
01-27 1万+
自动代码AI工具,已经支持 VsCode 插件安装使用,它的功能并不是「代码补全」,而是「代码生成」。
抢程序员饭碗?自动代码的Deep TabNine真如此神奇?
AI科技大本营
07-25 1万+
作者 | James Vincent等编译 | 夕颜出品 | AI科技大本营(ID:rgznai100)导读:在过去的一年中,AI 生成书面文字的能力大大提高。通过扫...
写文章

热门文章

  • 【Gazebo入门教程】第一讲 Gazebo的安装、UI界面、SDF文件介绍 28487
  • 基于Matlab的Robotics Toolbox工具箱的机器人仿真函数介绍(运动学) 24025
  • 【Gazebo入门教程】第二讲 模型库导入与可视化机器人建模(模型编辑器) 10105
  • 基于Matlab的Robotics Toolbox工具箱的机器人仿真函数介绍(空间位姿表示与动力学) 9947
  • OpenStreetMap:对抗谷歌帝国的共享开源地图 9070

分类专栏

  • FL studio 20简易入门教程 9篇
  • 前沿知识分享 3篇
  • OpenStreetMap学习 1篇
  • C++编程知识回顾与拓展 1篇
  • Gazebo入门教程 8篇
  • ROS进阶教程 13篇
  • 机器人设计与开发 6篇
  • ROS入门教程 11篇
  • ubuntu 2篇
  • 水果软件中的效果器 4篇
  • 前端学习 32篇

最新评论

  • 基于Matlab的Robotics Toolbox工具箱的机器人仿真函数介绍(空间位姿表示与动力学)

    欢快的旅行者: 为什么运行出来不一样啊

  • 【Gazebo入门教程】第三讲 SDF文件的静/动态编程建模

    qq_37043099: 把sensor放在top那个link里面,然后在gazebo里面点运行

  • 【Gazebo入门教程】第一讲 Gazebo的安装、UI界面、SDF文件介绍

    Miaronsa: 直接在独显模式下启动系统就行

  • 【Gazebo入门教程】第五讲 控制器插件的编写与配置(上)

    yitiaoagou: 谢谢你 表情包

  • 【Gazebo入门教程】第三讲 SDF文件的静/动态编程建模

    yitiaoagou: 请问ubuntu20.04在5处不能出现传感器是什么原因呢?谢谢

最新文章

  • OpenStreetMap:对抗谷歌帝国的共享开源地图
  • 类与对象:C++编程知识回顾与拓展 第一篇
  • 一键式AI绘画,让你也能体验当画师的魅力(附原理分析)
2022年91篇
2021年6篇
2020年2篇

目录

目录

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

生如昭诩

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或 充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

深圳坪山网站建设公司网站描述优化的方法来宾网站优化推广当当网站优化东莞东坑网站怎么优化标题今日头条官网网站诊断和优化秦皇岛网站排名优化桐乡做网站优化湖州网站seo优化服务搜索网站优化的公司网站优化的原则与依据外贸网站为什么优化随州网站优化公司宁波网站优化公司哪家好湖北品牌网站优化公司排名安徽网站优化服务公司昆明网站优化排名推广seo外包服务网站优化网站优化和运营网站的搜索引擎优化方案宝安区企业网站优化封丘网站优化推广网站建设优化推广哪家性价比高浙江省网站优化费用湖北新站网站优化排名网站推广优化方案费用西苑网站搜索引擎优化都匀网站优化公司哪家专业新网站优化的思路福建企业网站优化青岛网站优化的价格香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

深圳坪山网站建设公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化