尚经起名网

您现在的位置是:首页 >

企业资讯

qq免费送赞3000 - qq名片点赞免费_刷qq钻会员永久网址站

时间:2024-05-09 22:13 评论
的出现,自动化编程迎来新的可能。并不是来取代程序员的,而是来助其提高生产力的工具。编程会取代程序员吗?彭鑫:这几个级别基本上反映了智能化编程的发展过程。这意味着将更多的人引入编程群体中,转化为半个程序员的水平,从而极大地提高整个社会的生产。闫辉:在这场技术革命中,一些程序员会受到冲击,那么谁将会成为受益方?没有被淘汰的程序员都将从这些技术进步中受益。那些经验不足但思维灵活的人也将成为受益者。...

自助下单地址(拼多多砍价,ks/qq/dy赞等业务):点我进入

有组织 | 明明如月编辑 | 何淼

出品 | 《开讲》(ID:CSDNnews)

在软件工程中,自动化编程长期以来一直被认为是圣杯。 自从编译器诞生以来qq机器人辅助,程序自动生成的目标就是将接近自然语言的高级语言翻译成低级语言,最终目的是按照自然语言描述的要求自动生成程序。 尽管这个问题在学术界已经探讨了五十六十年,但直到最近几年才取得重大进展。

随着 GPT-4 的出现,自动化编程迎来了新的可能性。 未来,人机协作提高开发效率将成为主流发展趋势。 AI的强大能力让很多程序员担心被取代,但业界认为AI并不是程序员的替代品,而是帮助他们提高生产力的工具。 哪些程序员会受到这场人工智能革命的打击更大? 谁是这场技术革命的受益者? 它将如何改变编程交互的方式?

带着种种疑问,《聊一聊:AI编程会取代程序员吗?》 哪个更好? ”直播中,我们请到了拥有30多年编程经验的CSDN创始人兼董事长、极客帮创投创始合伙人姜涛;复旦大学计算机学院副院长彭鑫大学;华为云智能软件首席研发专家王前祥;超对称创始人兼首席科学家吴恒奎在线齐聚一堂,深入探讨,为AI时代的程序员们带来一些指引 。

其中,精彩预告:

姜涛:受AI影响较大的人可以分为三类:一类是工作会被取代的程序员; 另一种是技能将得到提升的人; 一个是新蓝海市场的从业者;

彭鑫:科技进步正在逐渐拉高简单劳动和复杂劳动的界限,较少的创造性开发活动很容易被替代。 人类在软件开发的最后一英里仍然发挥着重要作用。 需要人去发现并解决最后1%的问题并承担责任;

王千祥:如何描述问题和提示词,可能会成为一个值得研究的领域,甚至可能发展出一门新学科;

吴恒奎:人工智能模型将对人类智能的提升产生巨大的影响,这除了对生产力的提升之外,对人类社会的影响也很大。

如何建立自动化编程标准?

ChatGPT展示了强大的编程能力,但如何衡量AI编程能力的强弱。 CSDN曾提出自动化编程的五个层次:

第一级(C1):根据当前代码行自动完成。

第二级(C2):写代码时,AI可以预测下一行代码。

第三级(C3):基于自然语言生成代码; 完善的基于自然语言的编程语言翻译功能。

第四级(C4):高度自动化编程。 可基于自然语言生成项目和注解,可基于自然语言生成模块和注解,可基于自然语言生成函数和注解,函数、模块、项目粒度自动测试生成; 主流编程语言都能正确翻译; 可以根据当前行代码生成下一行代码; 代码调试(bug定位及正确修正建议); 根据当前代码行自动补全; 代码检查(自然语言提示)。

第五级(C5):全自动编程。 可以基于自然语言生成系统和注释; 基于自然语言生成项目和注释; 基于自然语言生成模块和注解; 基于自然语言生成函数和注解; 在功能、模块、项目和系统的粒度上生成自动化测试; 所有编程语言中最好的互译; 根据当前代码行生成下一行代码; 代码调试(bug定位和自动修正); 根据当前代码行自动补全; 代码检查(以自然语言准确提示问题); 代码的自动最佳纠错。

颜回:你怎么看自动化编程的标准?

姜涛:GPT-4或GPT给编程带来了一种新的能力——能够用精确的语言描述需求,并将其转化为代码、模块或成熟的系统。 这种能力在国内还不是很明显,但在国外已经很流行了。 它被称为提示工程(Prompt Engineering)。 硅谷的一些朋友告诉我,很多程序员可能会面临挑战。 历史变化巨大,需要新的技术要求和能力,新的模块也需要新的技能。 GPT-4是一个助手,但是这个助手会替代一部分现有的工作,所以不需要那么多助手程序员。

彭鑫:这几个层次基本上反映了智能编程的发展过程。 传统的 IDE 具有简单的代码完成功能。 3-5年前,生成完整的功能非常困难,但是从Copilot开始,已经实现了代码生成。 ChatGPT给我带来的震撼是,它不仅可以给出代码,还可以告诉你代码的逻辑,甚至可以更改代码,比如在合适的位置添加缓存,解释为什么选择添加缓存在这个位置。

从程序员长期的工程开发,比如工程维护来看,代码理解还是很重要的。 也正是因为如此,人类在软件开发的最后一公里仍然扮演着重要的角色。 需要人类去发现并解决最后 1% 的问题并承担责任。 未来可以进一步丰富智能编程。 除了生成大量代码外,它还可以提供解释和修复缺陷等功能。

lol机器人出装辅助s7_qq机器人辅助_火力发电厂辅助机器基础隔振设计规程

王前祥:出台这个评价标准是有意义的。 而评估是否合理至关重要,否则就会失去公信力。 为了保证评价的合理性,可以参考别人的做法,比如GPT-4。 NLP领域有很多成熟的测评数据和排行榜,但代码领域缺乏测评标准是需要解决的问题。 GPT-4报告的第五页列出了大量的评估数据,例如SAT考试和法律考试。 你可以借鉴这些评价标准,建立自己的评价体系,其中第一行讲的就是Codeforces的评价。 DeepMind开发的人工智能AlphaCode参加了Codeforces举办的10场编程比赛,取得了前54.3%的成绩,击败了46%的参赛者。 相比之下,GPT-4在Codeforces中的评分仅在倒数5%,可见其编程能力远不如AlphaCode。 早期,Codex 的能力是通过一个名为 HumanEval 的测试集来评估的,该测试集包含 164 个手写项,这种方法对于评估人类编程能力具有重要意义。

如果要评估AI的编程能力,可以先看看人类的编程能力是如何评估的。 这是一个基本点。 当然,这种方法也有一些缺点。 竞赛题不会用到那些很复杂的库,但是在实际应用中,会用到很多公私库。 对此,我们开发了一种新的评估方法CoderEval,现已开源。 它从多个方面制定了评估人工智能能力的标准。 我们欢迎您提出宝贵建议。

吴恒奎:CSDN发布的评价标准有C1到C5五个等级。 这是程序员在寻找编程辅助工具时所依赖的评价标准。 可以更好地评价模型在工作中的帮助作用。 这是一个很好的方向。 王老师提到的学术标准更广泛,适用于各个领域。 华为做的benchmark(标准或者数据集)也是一个很好的例子。 作为学术界的评估基准,它已被广泛应用于文章发表和大规模模型测试。 C1到C5也可以结合学术界的评价方法使用,或许以后可以找到更多的结合点。 在金融领域,我们也提出了中国的金融下游任务评估标准,国内对这类评估标准的关注度比较低。

新技术带来焦虑还是机遇?

闫辉:当一个新技术出现的时候,可能会给整个社会或者工作类型带来变化。 历史上火枪的出现导致了骑士阶级的消失,平民变成了战士,整个社会制度也发生了变化。 当人工智能GPT等新技术出现时,其所展现的强大能力给程序员带来了诸多挑战。 哪种类型的程序员更具挑战性? 哪个类别的挑战性较小?

彭欣:这个问题我和很多同事讨论过。 从学术界的角度来看,机会大于焦虑。 在沉寂了几年之后,看到人工智能在 AI 编程领域取得突破,令人兴奋和耳目一新。

历史上,人类的技术创新常常改变简单劳动和复杂劳动的界限。 布鲁克斯早在写《人月神话》时就指出,软件开发需要处理本质困难和偶然困难,有简单劳动和复杂劳动之分。 本质问题是把问题搞清楚,比如分解大型软件的问题,给出合适的设计。 把问题翻译成可实现的代码比较简单,这部分比较简单,容易被替换。 这种变化始于十多年前,一些公司开始使用低代码开发来节省时间。 虽然这个变化很微妙,并没有引起太大震动,但也取代了一些初级程序员的职位。

相比之下,ChatGPT 为何影响如此深远? 因为他们的出现,让这种趋势更加明显,对人们的影响也更大。 科技的进步逐渐拉高了简单劳动和复杂劳动的界限,较少的创造性开发活动很容易被取代。

在一次行业会议上,我曾提出一个口号:“人工智能的进步有助于减少重复劳动和思考,软件开发最大的浪费就是知识的浪费和重复思考的浪费。” 其实很多问题和成果,前人都考虑过qq机器人辅助,解决过,只是以前没有汇集到一起。 人工智能技术的出现弥补了这一不足,使我们能够更好地利用和分享已有的知识和知识。 结果,从而减少重复思考和劳动。

总的来说,我觉得AI可以替代一些比较简单的编程任务,尤其是那些不涉及复杂设计,需求已经很明确的。 但是人类仍然需要确认和测试代码的正确性并进行更改。 而且工作量和人数肯定会比以前少。

王千祥:我认为挑战较少的程序员有三类。

第一类是敢于承担责任的人。 如果人工智能编写的程序出现问题,最终责任在人。 如果你是一个愿意承担责任、愿意承担责任的人,那么你可能不会丢掉工作。 AI模型是建立在统计基础上的,总会有错误,只是概率不同而已。

第二类是为非通用系统编写代码的程序员。 现在的软件很少是独立的,都需要调用其他系统或接口。 许多软件需要在现有系统上构建。 如果你的系统不是通用的,或者你有特殊的基础知识,你就不容易被替换。 因为AI生成的模型可能没有看到这些特殊情况,无法生成合适的代码。

第三类是做架构的程序员。 需求总是在变化,旧的需求可以用人工智能生成的代码来满足,但新的需求需要新的架构。 这时候AI可能还没有见过这样的架构,无法生成合适的代码。 所以做架构师的岗位还是比较稳妥的。

吴恒奎:短期内,程序员大规模淘汰的可能性很小。 AI主要是帮助程序员提高生产力。 在实际的工业生产过程中,真正实现端到端的自动编程是非常困难的,比如用一个大模型来完整开发一个产品。 虽然OpenAI已经展示了一些用自然语言编写网站和游戏的案例,GPT-4也展示了图形化生成网站的例子,但实现端到端的自动编程仍然只是一个demo。

它的作用应该是大大提高程序员的生产力和效率。 可以更快速准确的查找相关信息,自动补全代码,帮助程序员提高生产力。 从长远来看,这种AI工具可以帮助很多没有足够时间成为专业程序员的人更快地掌握编程工具来解决问题。 这意味着将更多的人引入编程社区,将其变成半个程序员的水平,从而极大地提高整个社会的生产。

未来,当可以用大模型写出非常大的编程项目时,会不会有大量程序员失业? 我们需要重新考虑这个问题。

姜涛:我们可以把受影响的人群分为三类:一类是工作会被取代的程序员; 另一个是技能将得到提升的人; 另一个是新蓝海市场的从业者。

首批失业将是那些从事单一模型工作的人。 不一定是他们为之奋斗的事业没有了,而是他们的工作目标没有了。 ChatGPT已经可以挂掉很多单体模型,在翻译等方面的表现远胜于Google Translate、DeepL等单体模型。 这是一个巨大的进步,对单模型研究产生了巨大的影响。 因此,许多人需要改变工作任务、学习新知识或使用新工具。

第二类容易失业的人群是那些需求可以明确的人,比如外包公司的员工。 原因有二:第一,如果外包公司采用人工智能工具,工作效率会提高; 第二,客户使用AI工具后,效率也会提高。 因为他们的任务比较明确,所以外包程序员会受到很大的打击。

第三,AI也会带来新的机遇,比如促进工程(prompt word engineering)。 如果把GPT大型模型比作一个操作系统,暴露的API就是输入一串文字提示,然后得到一个输出。 但是这些词不像过去的 API 编程那样固定,这是一个有趣的变化。 正如恒奎所说,如果我们要从头到尾完成一项任务,还缺少中层工具,也就是促进工程化,这是AI带来的新机会之一。 这些新机会源于GPT作为“操作系统”,需要更丰富的生态系统和多种第三方工具和应用。 在这个过程中,可以发现和抓住更多新的发展机遇。 我们可以期待所谓的 GPT 原生应用程序的出现。 就像移动应用早期的开发过程一样,从最初的简单应用,逐渐演变成能够充分发挥大机型优势的应用。

谁将是这场技术革命的受益者?

闫回:在这场技术革命中,一些程序员会受到影响,那么谁会是受益者呢?

彭欣:答案很明显。 当然,老板会先受益,因为技术进步可以降低成本。 二是没有被淘汰的程序员。

随着大模型的出现,会开发出很多应用工具。 大模型可以将互联网上的通用知识和企业内部的特定领域知识整合起来,形成一个统一的智能中心,为开发者提供一个统一的入口。 没有被淘汰的程序员将受益于这些技术进步。

那些经验较少但头脑灵活的人也将是受益者。 以建筑师为例。 一个优秀的架构师通常有多年的开发经验,处理过不同类型的系统,面对过各种各样的挑战。 新手可能需要很多年才能学会这些经验。 如果一个人经验不足,但善于与大模型互动,能准确把握大模型的提示,善于向大模型表达问题,消化吸收大模型的回答,将这些信息与结合当前项目的脉络,快速形成具体的解决方案,这样的人的能力就会快速提升。 这只是一种可能性,不一定完全合理。

吴恒奎:大模型的蓬勃发展可能会给未来的教育领域带来很大的变化,尤其是计算机使用和编程知识的普及。 更多原本认为电脑遥不可及的人,可以更快掌握这个工具。 这种教育变革将影响从教育到工业的所有领域。 尤其是在工业界,大型机型提高生产力的成本效益将是显而易见的。

江涛:受益最大的将是第一批采用这种AI技术的企业,但哪个行业或工种的变化最快还有待观察。 科技日新月异,早加入早受益。 虽然很多人可能因此而焦虑,但更重要的是,它开辟了一片新的蓝海。 在这片新蓝海中,能孕育出什么样的成果,尚不得而知。 短期内,找到切入点可以获益,但这种获益是否会长期存在,还有待商榷。 很多家长可能会对孩子的未来感到焦虑和担忧,但我建议家长们尽早让孩子使用这些技术,早日受益。

编码教育将不再遵循旧范式

闫辉:这次AI技术革命,对编程教育的学习方式有什么影响? 编程领域会有不同的学习模式吗?

彭昕:在编程学习方面,思维水平要逐步提升。 20 年前,人们会从语法开始,解释如何编写程序。 以后普通学生可能不需要像现在这样从数据结构、算法、基础编程语法入手。 这部分可能会被机器或人工智能接管。 程序员更需要清楚地表达他们的意图。 计算思维可能成为一种通用能力并得到加强。 在特定的领域,考虑到资源限制、时间复杂度限制等方面,还是需要优秀的程序员来完成。 所以,我们还是需要用现在的方式去培养一些优秀的程序员。

王千祥:的确,编程教育课程的比例需要调整。 一些老知识,比如装配,可能需要压缩,而新知识则需要强化学习。

以后的编程可能更多依赖提示词,需要表达清楚。 如何描述问题和提示词可能会成为一个值得研究的领域,甚至可能会发展出一门新学科来研究如何用更接近自然语言的语言来描述问题,让大型AI模型更容易理解.

lol机器人出装辅助s7_qq机器人辅助_火力发电厂辅助机器基础隔振设计规程

吴恒奎:我的观点和你不一样。 这一观点来自 OpenAI CEO Sam Altman 和首席科学家 Ilya Sutskever 之间的推特讨论。 我们认为prompt(提示词)只是一个过渡阶段,因为大规模AI模型还没有完全理解自然语言的局限性,未来的发展方向肯定是朝着更强大的自然语言理解能力方向发展。

关于教育的问题,我们认为AI模型会对人类智能的提升产生巨大的影响,这除了生产力的提升之外,还会对人类社会产生重大的影响。 智力水平的提高可能引发未来教育的巨大变革,下一代的孩子将把计算机作为最基本的通识教育技能和知识。 借助大规模人工智能模型,可以极大地补充现有的教育资源和人力智能资源,从而引发教育领域的重大变革。

交互方式随之改变,拓展编程边界

闫辉:虽然计算机技术发生了很大的变化,但写程序的目的仍然是解决人的基本需求。 未来编程方案的需求和应用场景可能会有哪些变化?

彭昕:软件开发最终是为现实世界的需求和场景服务的。 人工智能编程不会改变这一点。 代码生成只是软件开发任务分解中的一个子节点。

AI 更擅长生成一些相对简单的代码,而在处理更复杂的软件开发任务时,AI 的帮助可能有限。 从学术研究的角度,我们希望未来的工具能够基于大规模的AI模型,通过对独立问题的智能化,将各个部分串联起来,实现更无缝、更自动化、更系统的智能编程。

计算与人、机、物的融合在一定程度上平行于大模型中智能的发展。 未来,软件编程的对象将不再局限于计算机内部的数据结构和存储,而是涵盖各种连接到万物互联的设备,如咖啡机、建筑物的门窗、传感器、语音扬声器、和机器人。 这些设备可以通过 API 进行封装,以实现应用创新。 我们关注最终申请表的变化,尤其是设备上的变化。

Meta有一篇有影响力的文章提出让大模型“长手”,即让大模型的智慧转化为实际行动。 大型模型可以结合到现实世界的问题解决中,例如与机器人技术结合使用。 已经有研究探索如何使用大型模型更好地对机器人行为进行编程。

物理世界的日益数字化和软件定义一切的想法已经成为现实。 物理世界中的事物可以通过软件封装和网络接入进行编程,极大地扩展了编程空间。 未来,这种融合会发生一些化学反应,带来巨大的变化。

蒋涛:过去,微软一直提倡自然的人机界面。 现在这个概念演变成了LUI(Language User Interface),基于语言的应用会逐渐兴起。 未来可能会出现更适合LUI接口的新型计算设备和场景。 前端界面需要更好地将LUI与用户的意图和目标结合起来,创造出更多的垂直场景和新的应用。

就像滴滴打车利用手机的定位能力产生庞大的应用一样,GPT等大模型的能力未来可能会催生出杀手级应用。 微软将GPT集成到Office中,对于提高信息生产力和数字生产力具有重要意义。 它的潜力还有待挖掘。

吴恒奎:当前信息社会最大的成就是搜索引擎、抖音等应用。 大型模型的开发不仅着眼于信息处理,更着眼于模拟人的智能。 大型模型的最大或杀手级应用程序到底在哪里? 一个重要的方向是大模型对人类智能的不断逼近或超越。 因为所有的工业生产和应用都是以科学为基础的,如果大模型在理解和发现科学上超越了人类,它就会深入到各个行业的工业生产中。

大型模型和机器人的结合将对物理世界产生实质性的影响,可能远远超过推荐引擎和信息检索。 由于目前大部分生产还是在物理世界中进行,如果大模型能够更深层次地掌握工业生产所需的知识,将进入工业生产领域,直接影响到各个行业,比如制造业和金属加工。 借助这种高强度的智能系统,人类社会应该建立以知识为中心的社会,摆脱以信息为中心的社会。 未来,每个人都可以掌握所有学科的知识。 我觉得AGI的发展可以给人类社会带来革命性的机会。