程序员开发正遭ai「革命」

CSDN资讯 CSDN资讯     2022-12-15     320

关键词:

【CSDN 编者按】AI,一个可以让人充满无限想象力的技术。近年来,随着 GPT-3、BERT 等大语言模型的崛起,以及昨日最新 Stable Diffusion 2.0 开源文本图像模型的发布,也让很多「所想即所得」的应用场景逐渐成为现实。反观其背后,技术人在推动 AI 落地的过程中,包括自身的开发习惯、方式等也正被 AI 重置。

作者 | 卞安       责编 | 屠敏

出品 | CSDN(ID:CSDNnews)

AI 作画,作为一个局部领域的产品方向,在基于机器学习算法基础上,为世界打开了一扇大门,随着 AI 作画类软件的大放异彩,基于 AI 进行内容生产话题也越来越受到关注。

作为一名程序员,我们又应该怎么来看待 AI 的这些成果对于开发方式的影响,在此,笔者有幸受邀为各位小伙伴分享一下个人的看法。

在美国科罗拉多州艺术博览会上基于 Midjourney 获奖的 AI 画作《太空歌剧院》

 AI 将改写程序员的开发方式

AI 的底层算法一般是基于神经网络进行建模,通过在神经元上的数学算法不断的训练数据调整建模,使误差向最小靠近的过程。这是一种非常酷的思维方式,它使得计算机可以通过算法寻找到数据变化的趋势。在此基础上发展起来的生成对抗网络,使得计算机学习和模仿数字化内容变的更加可信,这些数字化内容不但包括文本(新闻和小说生成)、图像(AI绘图与视频),3D 模型(AI 生成游戏场景),也包括编程代码和文档。

虽然我们目前还没有能够走到直接通过 AI 来生成完整的项目的地步,但在 AI 大发展的背景下,如何高效、快速、更好的达到编程目标,正在成为解决问题中一个重要的考虑因素。

我们可以对比 AI 的工作原理,反思编程工作中的痛点,预测一些潜在的可能性,也许未来这些可能性会极大的推动我们的编程和工作方式。

从工作形态的进化趋势上来看,预期会分为三个阶段:


第一阶段:编码工作的辅助智能化

这一阶段的主要体现是:通过搜集、归类、梳理编程开发项目中大量的可复用部分(如算法、功能函数或模块)形成数据集,通过对输入意向和数据集进行训练和学习的方式,形成优良的辅助功能,提升程序员的开发效率。

在具体实践上,一些企业已经推出了相关工具类产品:

  1. GitHub Copilot :  通过语音输入指令让 IDE 自动提示并生成代码。

Copilot 是 GitHub 今年早些时候推出的人工智能编程辅助工具,2022 年 6  月 22 日已正式上线(https://github.com/features/copilot),定价每月 10 美元(约 66.9 元人民币)或每年 100 美元(约 669 元人民币),对学生用户和流行开源项目的维护者免费提供。

经过数十亿行代码的训练,它可以将自然语言提示转化为数十种语言的编码建议,支持 Python、JavaScript、TypeScript、Java、Ruby 和 Go 等编程语言。根据今年 GitHub Universe 开发者大会报告给出的数据,Copilot 已经通过基于 AI 的编码建议,帮助全球开发者的工作效率提高了 55%。

2. GodeGeeX:通过输入文字描述让 IDE 自动提示并生成代码。

与此相近的一款国产工具叫做 GodeGeeX(https://models.aminer.cn/codegeex/),来自清华大学知识工程实验证(KEG),CodeGeeX 是一款具有 130 亿参数的多语言代码生成模型,采用华为 MindSpore 框架实现,在鹏城实验室“鹏城云脑II”中的 192 个节点(共 1536 个国产昇腾 910 AI 处理器)上训练而成。

截至 2022 年 6 月 22 日,CodeGeeX 历时两个月在 20 多种编程语言的代码语料库(>8500 亿 Token)上预训练得到。它可以跟据你的描述,或者上下文自动生成一段代码,和以往的代码补全功能是完成不同的。目前支持 Python、C++、Java、JavaScript、Go 五种主流编程语言,而且在准确度上表现较好。

除此之外,还有 Kite、Codota、DeepCode 等一些基于机器学习的 AI 代码生成工具,本质上都是通过大量的代码训练,来智能预测出需要生成的代码,加快编程的效率。

总体来说,这一阶段的产品推动者不需要面向业务,只需要考虑面向程序员,可以达到辅助程序员提升业务开发速度的目标,也可以较好的通过工具化产品形成规范,解决企业的代码风格化统一问题。未来可能会广泛的成为程序员工作中的标配,程序员将不会再花大量的精力在高复用度的具体代码函数设计,而更多的把精力放在业务模块的设计实现。

第二阶段:业务模块的智能生成

这一阶段的主要体现是:通过搜集、归类、梳理相关领域业务开发项目中大量的通用业务(如游戏研发中的登录模块、热更新模块、聊天模块、战斗模块等业务逻辑)形成数据集,通过对业务设计意向和数据集进行训练和学习的方式,自动的进行业务模块前后端框架生成,优化工作流程,提升业务模块的产品设计迭代和研发速度。

我们可以通过一个实例工具软件来理解这个过程,Adobe 推出过的网页三剑客之一的 Dreamweave,其中提供了大量的模块生成功能,比如通过设定数据集和表单的控件对应关系,就可以生成前后端的代码,实际提供一个可以运行的业务模块。

当然,这是由没有结合人工智能辅助的情况,如果基于新的智能化生成,那我们在开发时,智能化生成模块会自动跟据上下文来提示是否需要生成相应的业务前后端模块,我们只需要再跟据生成的模块进行微调或扩展即可达到我们的要求。

下图是笔者使用 DreamWeaver 来生成一个简单的登录模块,只需要设定一下数据表字段,即可生成表单,完成登录判断和跳转功能。

又或者在游戏开发领域。作者曾在企业负责技术中台设计时,推动过面向各游戏项目组通用业务模块的抽象与开发,比如热更新、原生接口调用,甚至包括游戏战斗机制等大量的通用业务,对于每一个项目几乎都是需要的,只是因为技术栈或者界面的不同而需要重复的开发,这些工作往往耗时耗力。

站在一个更高的维度,这些业务完全可以基于机器学习训练结合需求变化被快速地进行调整而满足各个项目的使用。所以,基于企业的技术中台,把这些通用业务的统一框架和智能化定制与人工智能结合,基于主流开发软件、引擎工具或平台工具推出可实际操作的软件或插件。从而形成更好的开发工作流是非常有意义的。

这个阶段目前是各领域企业争相降本增效的方向之一,程序员的工作正在进一步从通用业务开发中解放,而把更多的把精力放在具体产品的需求上。

第三阶段:产品原型的智能生成

这一阶段主要体现是:通过对产品研发工作流中可智能化生成的部分进行整合和优化,达到能够根据用户需求自动的生成具备完整功能逻辑和效果表现的产品项目原型的目标,帮助产品经理快速看到期望的结果。

这里以几个案例加以说明:

一、市场上大量自助建网站,电商小程序类的平台。

这些平台直接面向用户方,提供给用户可以自助订制化的业务模块并生成最终产品的服务。如腾讯云的自助式建站:

这些平台虽然具备直接生成最终产品的能力,但其底层逻辑主要是基于一定数量的前后端模板和风格模板进行组合,通过固化的需求条目选项得到产品各模板模块的组合结果,产品的领域有限、形态有限、规模有限,目前大部分不具备通过对用户需求分析和产品形态数据集进行机器学习来生成目标产品的能力。

在数字人研发企业里,目前已经在通过对人脸照片,动作视频采用人物脸部识别,动作识别技术来建立模型数据集,通过机器学习对三维模型重建和自动动作绑定,快速化生产高精度数字人,这种方式与以往通过美术建模,手动绑定骨骼及人物动作的工作流有较大差别,它可以大大的加快数字人的生成效率、规模和精度。

在 GTC 大会上,黄仁勋宣布推出一个全方位的虚拟化身平台 —— Omniverse Avatar(来源:https://developer.nvidia.com/nvidia-omniverse-platform/ace)

二、在一些游戏方向,如剧情文字类游戏(AVG)领域,开发者也在通过剧本生成,二次元立绘生成类软件,通过脚本进行完整的游戏产品生产尝试,可以将原本需要几个月才能完成的剧情文字游戏,在短短几个小时内生成出来。 

当然,这些方面的业务相对简单,但随着人工智能的发展,相信不久的未来,一个软件产品设计师可以通过提供一些简单的需求描述得到一个完整可运行的产品DEMO。它所要做的,是通过不断的修改需求描述来不断提交,得到期望的产品原型。

总结

最后,我想说的是,内容生成的算法目前在一些方面有了较大突破,但在软件开发领域,特别是开发者工具领域,我们也需要相关企业和创业者不断的结合这些突破,落地到具体的工具软件产品中来提升开发者的工作流程和体验,推出更好的产品形态,谁能够在未来提供更好的智能化内容生成体验,也就会在未来更受欢迎。

作者介绍:卞安,游戏引擎技术专家,CSDN 博客专家,独立软件创业者。从事游戏研发行业近二十年,孜孜不倦地学习和思考引擎研发技术和工具链设计,曾任端游企业引擎技术总监,Cocos 游戏引擎产品总监。目前在学习游戏引擎与 AI 的结合,致力于开发基于 Python 语言的全栈式开发工具软件产品《PyMe》。

☞天涯论坛关闭发帖!中国互联网的青春没了;iPhone 15 将全系支持灵动岛;美团成立机器人研究院 |极客头条
☞区块链创新之路,该何去何从?
☞Linus Torvalds 再次“警告”内核开发者:不要在圣诞节前夕提交代码

职场日常:今年测试工程师正遭革命,“点工”如何破局?

随着转行人员、毕业生的大量涌入,大家争相进入测试行业喝酒吃肉,目前软件测试行业对于基础的功能测试也就是“点工”的需求已经无限趋近与饱和状态。随着测试在软件公司的发展中成为不可或缺的部分,软件测试行业的... 查看详情

测试工程师正遭革命,“点工”如何破局?(代码片段)

近几年来的特殊情况,综合过去的大形势变化,所有行业都会自下而上的进行一轮技术“大清洗”,技术停滞不前的“点工”或将被逐步取代。软件测试现状测试行业在十几年间发生了翻天覆地的变化,从早期站... 查看详情

测试工程师正遭革命,“点工”如何破局?(代码片段)

近几年来的特殊情况,综合过去的大形势变化,所有行业都会自下而上的进行一轮技术“大清洗”,技术停滞不前的“点工”或将被逐步取代。软件测试现状测试行业在十几年间发生了翻天覆地的变化,从早期站... 查看详情

别以为ai只会下棋,ai手机正在带来一场颠覆性革命

日前,谷歌DeepMind发布了最终版围棋程序AlphaGoZero,并以100:0的战绩击败了原来的AlphaGo。这场令人注目的对弈结果,见证了人工智能发展的里程碑式变革。一时间,AI的狂风被再次掀起。但我们都知道,AI远不止会下棋这么简单。... 查看详情

组件革命

 我们,程序员的世界,正在进行这一场编程方式的革命。这不是一件软件专业的稀奇事因为我们已经身处许多“革命”之中。例如:C语言代替了FORTRAN,C++促进了编程方式向面向对象转移,Java让网络充满活力。但是当下的革... 查看详情

新物理ai将可能成为量子计算革命的关键

  新物理AI将可能成为量子计算革命的关键  据外媒报道,量子计算无疑是现在最令人兴奋的技术之一,但它的量子物理基础却让它成为了一个令人讨厌的概念理解甚至很难再展开其他事情。然而,最近物理学研究的一项突... 查看详情

ai——第四次工业革命

历史上发生了三次工业革命:第一次是以蒸汽机的发明为代表,改变了长久以来的棉纺织业,人类进入“蒸汽时代”;第二次是以汽车的发明和电学的发展为代表,人类的活动范围和时长都极大地扩展,人类进入“电气时代”;... 查看详情

ai新技术革命将如何重塑就业和全球化格局?深度解读un报告(下篇)

...,获取更多腾讯海量技术实践干货哦~相关推荐:AI新技术革命将如何重塑就业和全球化格局?深度解读UN报告(上篇)AI新技术革命将如何重塑就业和全球化格局?深度解读UN报告(中篇)(四)国际合作国际合作为世界更接近可... 查看详情

tersa超算网络,解决ai开发困境

人工智能的发展大势所趋,但对于中小企业来说,在AI开发上面还面临着困境。FrostData资本创始人、总裁兼首席运营官StuartFrost表示:“我们现在处在大变革的前夜,人类所做的一切工作,其实都可以由AI负责。”人工智能的到来... 查看详情

近50年推动ai革命的统计学思想

...习和人工智能已经成为家喻户晓的名词,但推动这场革命的统计学突破却鲜为人知。在最近的一篇论文中,哥伦比亚大学的统计学教授AndrewGelman和芬兰阿尔托大学的计 查看详情

ai又进化了,突破性革命来了!

大家好,我是程序员小灰。2023年,AI真的杀疯了。短短不到一年的时间,当我们还在感慨AI一键生成的二次元画作精美万分的时候,它已经进化到了写实美照也能手到擒来的地步。更多的效果,可以看刚刚发布... 查看详情

人工智能带来的,是我们这个时代最大的革命。

人工智能带来的,是我们这个时代最大的革命。  其实人工智能(ArtificialIntelligence,以下简称AI)是突然之间火起来的。2013年,AI还只是科幻小说里的东西,只有硅谷的科学家才关心,5年之后,人人都在谈论AI。  AI最有意思... 查看详情

chatgpt软件技术栈解密

ChatGPT点燃了通用AI浪潮,继农业革命、工业革命、计算机技术革命后,也将可能掀起AI技术革命。业界对ChatGPT的AI算法关注得比较多,但是OpenAI已经演变为服务数亿用户的平台服务。近3个月ChatGPT的SLA大约99%,也就是说平均每天... 查看详情

西湖大学教授怎么看ai制药革命?|量子位智库圆桌实录

量子位智库发自凹非寺量子位|公众号QbitAI一边是产学研屡屡传出新进展的计算生物。“地球上几乎所有已知蛋白质,均能被AlphaFold预测。”另一边是投融资瞩目,但质疑声不断的AI制药赛道。“国外一笔331亿元订单顶传... 查看详情

ai界的革命终于可以自动标注了

20万拿下了一个AI开发项目,结果光前期标注费用就花了4万块钱。本来项目利润就比较低,结果标注就花了项目总额的20%。要是能够有自动标注工具,那该多好啊!别着急,这里有一款完全开源免费的自动标注... 查看详情

ai时代的游戏革命:华为云的进击方案

玩游戏这件事,今天已经成为了我们生活中的日常。但假如我们回想一下十几年时间里游戏经历的变化,相信大家都会认同“翻天覆地”这个词绝不为过。十几年前,笔者玩的还是小霸王和超级玛丽,到了今天PC和主机游戏的画... 查看详情

《ai革命:聊天机器人的崛起与劳动力市场的未来》

...t都能通过谷歌的L3面试了,这意味着什么?意味着初级程序员将面临失业的风险.....拿人类历史上经历的几大时期来说吧人类学会利用身边的资源,如石头+棍子+草绳=斧头,这个时期也被称为石器时代,这个时候人类能节... 查看详情

全球首个ai英语老师在中国诞生—人工智能对教育行业新一轮革命

人工智能改变了你的生活吗?随着人工智能技术进入大规模商用阶段,人工智能产品全面进入消费市场,未来几年,人工智能技术必将改变世界。在教育领域,人工智能又能带来哪些改变。近日,全球首个人工智能英语老师在中... 查看详情