雯雯374943 发表于 2023-11-10 11:19:02

5年后,ChatGPT会替代底层程序员吗?

java行业已经被chatgpt冲击不小了

buyidaifu 发表于 2023-11-10 11:19:53

先不说行不行,GPT-4的Vision模式不知道大家用过没,就是可以读图理解的那个。
它可以做到以下的事情
这是我随手画的一个草图,我字写的难看,将就看。

http://pic1.zhimg.com/v2-1dbd5169ff5027191253009451b682f2_r.jpg?source=1def8aca
然后上传到GPT4V上,并且让它根据这个生成Html。
从结果上看,它能读懂,并生成了html代码。

http://pica.zhimg.com/50/v2-59049f4efd57b8701b00084e247f03c8_720w.jpg?source=1def8aca
这串代码运行一下,是右边的东西

http://pica.zhimg.com/v2-b801e91f54ca11ba92fd3f7ba356c0f1_r.jpg?source=1def8aca
再加上一些CSS格式,让它好看一下

http://picx.zhimg.com/v2-0e4efd3dd08e3a25d7c00268925b757c_r.jpg?source=1def8aca
你可以看一些细节,完全没啥问题。

http://picx.zhimg.com/v2-2b2ea94aa784860c6d6afeb599d321cc_r.jpg?source=1def8aca
渲染出来的是这样

http://pica.zhimg.com/v2-87cac241fd0890872ac4a608b9f74b51_r.jpg?source=1def8aca
你就说牛不牛吧。
那能不能代替底层程序员,我觉得很难说。
因为按照线性发展的眼光看,那么GPT再牛,也需要一个人用才行,那这条线的人自然不觉得GPT能替代底层程序员。
但是科技这玩意最大的不确定就是它存在技术爆炸,GPT最新发布的Assistant就看到了AI Agent的端倪。

http://pic1.zhimg.com/v2-7e0ca1e7817df741860bb24588caaa01_r.jpg?source=1def8aca
我就是让它给我做一个购物网站,并且要全部的代码还要教我如何运行,右边就是它的思考以及处理比如,你可以看到前面的get/post字样,其实就是通信里面的东西。
Post抛出指令,Get收到指令。
它的厉害之处可以生成一系列的指令并自动执行,虽然现在很多步骤还是需要人工介入,但是一旦智能程度提高。
那么给它开放足够多的接口,它是可以做成一般程序员能做的增删改查之类的工作的。
并且这是毫无疑问的。
但是能不能替代,真的很难说,因为机器换掉人,这其实是一个伦理问题。

shower 发表于 2023-11-10 11:20:37

先上答案:一定不会。
这个问题有两个关键词:5年,底层。
先说“5年”。如果你平时经常关注那些以大模型为基础的AI应用,那你肯定会觉得,以这样的发展速度,5年?别开玩笑了,5个礼拜我就不认识它了。别说程序员,整个人类估计都得失业。这种感觉很正常。在经济低迷的时候,一个有潜力替代人工的新技术出现,并在短时间内获得了大量关注......人们总会更担心丢掉自己的工作,而不是畅想未来。人们越害怕,反过来就越觉得AI会以当下的速度继续甚至加速发展。

http://pica.zhimg.com/v2-690e47110f5ae333f8634cfbbaf9347a_r.jpg?source=1def8aca
这当然不是事实。实际上,在GPT出现之前,人工智能的发展并不顺利,很多名噪一时的产品最后都草草收场。 IBM的沃森(Watson)就是一个经典的例子。而在GPT出现之后,很多人不知道的是,截至2023年5月,OpenAI的亏损累计高达5.4亿美元。与此同时,ChatGPT的用户数也在下降,许多人还是对聊天机器人能干些什么存在疑虑。SimilarWeb数据称,ChatGPT的用户数从今年6月份的17亿下降到7月份的15亿。
《浪潮之巅》的作者吴军老师就认为,ChatGPT是一个被神化的语言模型的衍生品。今天,ChatGPT使用的语言模型采用了深度学习算法进行训练,但是这几十年发展下来,语言模型还是语言模型,不是什么其他的东西。这就如同今天特斯拉的电动汽车还是汽车,虽然和本茨早期的汽车、福特的内燃机车、丰田的混合动力汽车不同,但它不是飞机。媒体在推波助澜,扮演加速师的角色,在赞扬的同时贩卖恐惧。绝大部分赞誉是炒作,这并不可怕,因为20世纪技术的发展常常伴随着泡沫。但几乎所有的恐惧都是自己在吓唬自己,这才是可怕之处。
真没有那么快。
再来说“底层”。我理解的底层程序员,其实就是这个行业的新人。
你可能听过这个故事:有个技术公司的创始人,给ChatGPT发了一段JavaScript,请它找bug。结果,ChatGPT先是反问,这段代码的意图是什么?然后,根据意图很快就找到了bug在哪,而且还附上了一份相当详尽的文档,包括是哪段代码有问题,可能导致什么样的bug,又该怎么修复,等等。甚至还给出了一段代码示例,把修改的部分,直接批注在里面。这个事一出,好多程序员不服,都上去给ChatGPT出题,结果几乎无一例外,都被解答了。
很多新人听到这个故事都很绝望,ChatGPT能力都这么强了,月薪还比我低,这得卷成什么样才能让老板看上我啊!
其实,作为新人跟ChatGPT较劲,就像刚学习冲浪的人一开始逆着潮头而动,很容易被浪掀翻。要想成为冲浪达人,就得站上浪头,也就是找到自己的机会。
GPT来势汹汹,新人的机会在哪儿呢?
如果想了解更多大模型的演进历史、必备技巧,听圈内顶尖技术从业者透露未来大模型风口的话,你绝对不应该放过知乎知学堂旗下AGI课堂推出的【程序员的AI大模型进阶之旅】公开课,2天,全部免费!

总有些程序员不喜欢AI

新人的机会,首先就来自这些不喜欢AI的程序员。他们有的可能对AI技术缺乏信心,尤其是当他们看到AI工具产生错误或不稳定的结果时(大语言模型的“幻觉”几乎是不可避免的),生怕使用AI会影响他们的工作质量和信誉。
还有些人觉得使用GPT类的AI写代码,要先写大量的提示词,费时费力,还不如自己手撸。
当然,也有很多人担心使用AI时输入的这些数据会泄漏,带来隐私和安全问题。这确实是当下业界最关心的部分。
但是咱就是没包袱,光脚的不怕穿鞋的,敢尝试就是新人的机会!
找准姿势

虽说是新人,但也有不同的岗位和角色,你目前的角色该怎样使用AI工具才最有效呢?我为你梳理了一下:
后端开发工程师


[*]从业务实体到数据库的自动创建。输入业务实体描述,AI可以很快生成SQL语句,且省去了自己思考命名的麻烦。
[*]从数据库到CRUD代码的自动创建。输入数据库描述,AI可以自动生成基础的CRUD代码。

http://pic1.zhimg.com/v2-7c229420d4f97c70c6a6f392106d2124_r.jpg?source=1def8aca

[*]从CRUD代码到业务功能的自动创建。输入CRUD代码以及业务描述,AI自动改写代码(这里人自由发挥的空间很大,AI能起到的作用主要是解答具体问题,有时效果还不如搜索引擎)
[*]代码转换。有时候我们需要将一种语言的代码转换为另一种语言,AI在这方面相当强大且精确。
[*]确定性的脚本编写。诸如定时任务、数据库备份等等确定性很强的脚本都可以借助AI完成。
[*]自动化测试。可以让AI根据现有代码自动生成测试代码(这里其实是事后做的,如果采用TDD方式可能会更好)
前端开发工程师


[*]构建基础页面。对于一些基本的页面布局、样式设计和交互元素,AI可以通过代码生成技术自动生成部分代码,从而加快开发速度。使用Cursor这类的IDE工具就可以轻松做到。

http://pic1.zhimg.com/v2-506d59e86bfbb88736557444fdd26777_r.jpg?source=1def8aca

[*]页面排版优化。 有了基础页面,AI就可以自动修改代码,比如调整页面元素的排版和布局以适应不同的显示设备。

http://picx.zhimg.com/v2-86c65020218de9c055b2a468e502e8d5_r.jpg?source=1def8aca

[*]数据可视化。结合现有框架,比如element-ui,AI可以自动生成任何图表所需的代码。
[*]自动化国际化处理。AI的翻译能力非常强,国际化处理不是问题。
测试工程师


[*]自动编写测试用例。输入业务需求描述,AI可以自动生成测试用例。
[*]结合TDD。有了测试用例,就可以考虑从用例生成代码。
[*]自动准备测试数据。AI可以根据需求,自动生成大量测试数据。
运维及支持人员


[*]使用Claude 2.0之类的工具,将运维相关文档上传,然后与AI对话,可以提高解决问题的效率。
[*]目前开源方面已经有一些很强的模型,如果能在开源模型基础上,用公司内部的知识来训练模型,则可以创建一个供运维和支持人员使用的AI助手。比如很多大企业最近都在使用Meta开源的llama2来构建自己的应用。
[*]使用AIGC工具,哪怕运维或支持人员不懂编程,也可以写出适合自己需要的简单应用。比如excel宏命令,运维脚本等。
总的来说,目前AI有能力也应该做的是那些“人做起来费时费力,但是又很确定”的工作。而我们在使用AI时候的通用方法是“合理分解任务,小步迭代”。使用“增量式”提问的方法。
鉴于当前AI的特点,可以这么说,它就是为“底层”的程序员准备的!而AI在架构设计、性能调优等方面普遍表现一般,高级工程师在这方面的能力更加突出,所以也不用担心。
话说回来,如果你不满足于在“底层”踏步,那么,
学好AI大模型,你就可以迅速学习任何领域的编程知识!!
学好AI大模型,你就可以成为真正的全栈工程师!一个人就是一只队伍!
学好AI大模型,你的工作效率将极大提升!可以跟无效加班说再见了!
由于AI技术发展迅速,个人的经验又太有限,一个人奋斗肯定比不上和一群人一起学习。
知乎就是这样一个让志同道合的人一起学习的平台,之前在上面刷过知学堂的软考免费课,收获很多。那时想着如果有业内经验丰富的老师带领,那就更好了!
这样的机会现在就有!知乎平台为程序员们量身打造的两天的课程 --
《程序员的AI 大模型进阶之旅》
<a data-draft-node="block" data-draft-type="edu-card" data-edu-card-id="1705591596547002370">老师们会带领你学习“GPT程序员的独门利器” -- 提示词工程 prompt engineering,里面提到了AI大模型的最大问题 -- “幻觉”,以及优化的方法。还会深入讲解LangChain和Fine-tuning这样的实战技术,可以让我们更具针对性地调整大模型,从个人受益变成公司的顶梁柱!

qidi 发表于 2023-11-10 11:21:06

不用等5年后吧,作为一名前端技术专家,我已经有了深深的危机感,因为现在 ChatGPT 已经能做很多编码工作了。
我拿刚刚做的一个项目来举例子,这个项目是一个极简版的无代码平台,通过后端页面配置,生成无数个彼此之间相互独立的前端页面,主要的应用场景就是营销活动。
具体需求如下:

http://pic1.zhimg.com/v2-f4e1f061c3fdd2106942a38ba93c2124_r.jpg?source=1def8aca

http://picx.zhimg.com/v2-05d0e6aad0e7178754bf47736787373d_r.jpg?source=1def8aca

http://pica.zhimg.com/v2-ae41b7448926b595902ae251eee8088b_r.jpg?source=1def8aca
这个项目的需求不复杂,有一个配置页面,可以配置标题、图片或者视频、返回链接等三个配置项。还有一个展示页面,配置的是图片展示图片,配置的是视频展示视频,下面还有一个返回按钮,根据配置的返回链接跳转到不同的页面。
作为一名转型AI的前端专家,我首先想到的是借助ChatGPT节省一些开发的时间。我先使用GPT-3.5进行了对话:

http://pic1.zhimg.com/v2-ba770f5d7bdcfeabab4f5e5140ff5f28_r.jpg?source=1def8aca
回复太长没有截全,完整的对话可以看这里:
https://chat.openai.com/share/3aac4ca7-492b-49da-8629-263868cf805c
这个回复太简单,既没有写出css样式,也没有发送ajax请求的逻辑,基本上不可用。
我换new bing把同样的指令发送过去:

http://picx.zhimg.com/v2-baf1810f4ceda5f7031a26d4145ced9f_r.jpg?source=1def8aca
这次回复了具体的实现步骤,每一步该干什么,思路非常清晰。我接着让它直接把代码发给我:

http://picx.zhimg.com/v2-12f57e0faaac265eaf5a86b8db8dd83d_r.jpg?source=1def8aca
这个代码的质量就非常高了,知道是h5的页面,写了适合移动端的样式,还有ajax发送请求和接收返回的完整业务逻辑,就是代码太长,一次没有回复完,我让它多回复了几次。
我把代码直接复制粘贴到了本地进行调试,只有一个小小的错误,就是它把button标签当成了a标签,给href属性赋的值没起作用。我给它指出了这个问题,重新回复就纠正过来了。这是完整的对话过程:
https://sl.bing.net/kujXp6ylw72
还有一点就是上传文件的时候返回了405,是因为签名错误。我让它写了一个生成签名的函数,重新调试发现还是不行。这个不能怪它,我按照新浪云的开发文档,重写了签名函数再次调试,也是不行。实在没有办法,我提交了工单,结果那边只给了我PHP的代码:

http://picx.zhimg.com/v2-11bddccb7e07137ec3c3481c21567d94_r.jpg?source=1def8aca
我让ChatGPT把这个签名算法使用JavaScript重新实现了一遍,总算通过了签名。

http://picx.zhimg.com/v2-aaccdc06b2b64572247c63319a4e56ae_r.jpg?source=1def8aca
做完之后,我把链接发给客户看,一个页面的功能是实现了。但是,这时候才发现,客户想要的是多个页面,也就是链接是需要生成的,每一个配置页面对应一个展示页面,相互之间不受影响。
这个需求如果按照低代码平台出码的方式做,一个配置页面和一个展示页面部署一次,那可就有得做了。我赶紧转换一下思路,按照低代码平台不出码的方式来做,一个配置页面和一个展示页面对应一个配置文件,配置的时候,更新配置文件,展示的时候读取配置文件,通过URL传参config-path的方式,查找配置文件的存放路径。
配置页面提交后的效果就是这样:

http://picx.zhimg.com/v2-5eca3023c5457a19cd8e5872963af9cf_r.jpg?source=1def8aca
这个时候会生成新的配置页面和展示页面,规律是config-path这个参数,是根据提交的时间生成的,保证生成的链接是唯一的。如果忘记了链接,也方便在新浪云的云存储后台根据时间查找,替换config-path的值就可以了。

http://picx.zhimg.com/v2-58531ec744ed20dda429b26a0d024f4b_r.jpg?source=1def8aca
点击生成好的配置页面,效果是这样的:

http://pic1.zhimg.com/v2-2cc5334be119fdd0907aa684b37267f6_r.jpg?source=1def8aca
这个时候点击展示页面的链接可以看到效果,如果替换标题、图片或者视频、返回链接等,填好表单提交就会更新配置文件,不会生成新的配置文件。
展示页面的效果是这样的:

http://picx.zhimg.com/v2-59ab6b9dc4af9e8846e41726f50f17fe_r.jpg?source=1def8aca
目前项目已经上线,增加了百度统计,数据反馈不错:

http://picx.zhimg.com/v2-b0086bb8308db6d2efe808dafeb48667_r.jpg?source=1def8aca

http://picx.zhimg.com/v2-ee575a9c55f3c360c17041ca940e40e4_r.jpg?source=1def8aca
总结一下,在项目的开发阶段,使用ChatGPT可以大幅度提高效率,生成的代码只需要做少量的更改,就可以直接使用,真的是非常惊艳。在遇到卡点的时候,使用ChatGPT也可以快速解决问题,保证项目的顺利交付。
作者简介
您好,我是奇大,毕业于北邮,前端技术专家,AI 布道师。
10 多年互联网研发和管理经验,我将分享高质量的职场认知和技术干货,欢迎围观。
公众号:AI 奇大,欢迎关注。

mahao 发表于 2023-11-10 11:21:47

用 5 年吗?题主你也太乐观了吧。
现在有两个成果,AutoGen 和 MemGPT,已经揭开了大幕的一角了。
AutoGen 是用多个 GPT 对话流来完成代码编写,MemGPT 是用多个 GPT 对话流和矢量数据库来解决 GPT 的长期记忆问题。
我现在设想,具备摘要和长期存储能力的多个 GPT 机器人,配合亚马逊云的 Lamda,数据库,微服务架构,目前的技术能力就完全可以根据需求从0做系统了,甚至再进一步,可以拉着 GPT 参加电话会议,一块讨论怕需求,生成方案,然后生成系统。
当然,这以上是对国外,国内文心那个水平,我试了,大家暂时不用担心。

轻雨风飘 发表于 2023-11-10 11:22:06

不知道。
这个问题下面的回答质量比较堪忧,以现在chatgpt的表现确实谈不上对程序员的替代。
首先,chatgpt不是解决代码问题的好工具。在对话中,使用者是没办法准确的把提示词(prompt)送到模型里的,大部份时候我倾向于直接使用api避免上下文对提示词的污染。
其次,从个人使用感受上说,codex和github copilot目前还是对程序员效率提升最好的产品,但是这个产品其实并没多少热度,github copilot x已经beta了我个人还是挺期待更好的提示词工程和更好的模型可以做出什么样的工具。
现在在代码补全方向上,大部份产品只能说作为一个效率工具还是合格的,替代还很远。
那么替代程序员一种可能的方向是multi-agent,我个人的理解不论是提示词工程、ReAct、还是multi-agent本质上还是基于一个假设:大模型的知识是足够解决问题的,只是我们还没找到合适的方式让合适的神经元被激活在合适的任务上。
当然如果这是条合适的路径,那么被一锅端的就不是只程序员了。
页: [1]
查看完整版本: 5年后,ChatGPT会替代底层程序员吗?