z

zzhanglii

V1

2023/02/18阅读:104主题:山吹

ChatGPT对编程影响如何?会让码农失业吗

引言:春江水暖[?]先知

问题:

春江水暖[insert]先知


ChatGPT:

春江水暖鸭先知

The spring river is warm and the ducks are the first to know.

春江水暖,鸭子是最早知道的。换句话说,鸭子是最先感受到春江水暖的家伙,因此也被称为春江水暖的先知

这段代码是ChatGPT根据前后文关系,自动生成【鸭】关键字,并对其解释的结果。

ChatGPT是一个由OpenAI公司开发培训的大型语言生成模型。它能够用几种不同的语言回答问题或根据使用者的请求提供信息,可以进行简单对话,并提供人性化的文本。GPT的全称是Generative Pre-trained Transformer,也就是一种预训练模型。

ChatGPT是一种生成式AI(AIGC),它能够利用现有图像、文本或音频等内容来创建和生成新的内容。类似的技术也被应用在前段时间火热的AI绘画领域。

当前ChatGPT已经可以做到流畅问答各个领域的问题。在投资、医疗、教育和咨询领域掀起了巨大波澜!

GPT模型结构
GPT模型结构

编程方式的变革

原始社会人类通过喊叫传递危险,到封建社会通过号角、击鼓鸣钟、点燃烽火的方式传递消息,再到近代社会通过无线电的方式发送讯号和语音,直到现代社会通过互联网和移动互联网发送邮件和即时消息。我们看到从古至今,信息的传递经历了多轮的变革。

现如今,历史的车轮来到我们的眼前,ChatGPT又将引领我们将直面编程方式的变革。

第一代计算机语言——机器语言

机器语言,用二进制代码(0和1)表示计算机能直接识别或执行的一种机器指令集合。最初的起源可以追溯到1888年美国统计专家霍列瑞斯博士发明的穿孔制表机。该制表机第一次把数据转变成二进制信息,是最早使用机器语言的案例。

最早的程序员们就在0和1的海洋里游泳,他们的脚下是深邃的深海,他们的眼前是一望无际的水面,海水拍打着他们的胸口,四望无人,唯有自己。

第二代计算机语言——汇编语言

机器语言由纯粹的0和1组成,十分复杂,不方便阅读和修改。因此汇编语言诞生了。

汇编语言用一些容易理解和记忆的缩写单词来代替一些特定指令,例如“ADD”代表加法。在20世纪40年代出现了汇编语言的雏形。

第三代计算机语言——高级语言

高级语言,能够编写,不依赖于计算机硬件,在不同机器上运行的程序的语言。C、Java、C++、Python都属于高级语言,也是我们所处的世代。

虽然现在的代码可读性和可理解性变高了。但我们依然处于教机器“怎么做”,仍受困于代码的内容。

第四世代?

笔者大胆猜测,依托于AIGC,计算机领域或将诞生全新一代的计算机语言。当然它的名字尚未可知,但我们可以称之为自然语言编程方式。它的功能将完全颠覆现在的编程方式:程序员不再需要编写“怎么做”的代码,只需要告诉该语言“做什么”,就会自动生成符合条件的代码。

这可能导致传统的编程将走向终点,但这并不是一个疯狂的想法:

最早的计算机科学先驱,学习相对原始的电子工程,并且他们坚信未来所有的计算机科学家都需要对半导体、二进制算术和微处理器设计有深刻的理解,才能理解软件。然而时间来到到今天,我敢打赌,90%的软件编写者不知道 CPU 实际的工作方式,更不用说晶体管设计背后的物理原理了。更进一步的说,我相信未来的计算机科学家将远远脱离传统的编程,也许到那时候,他们甚至很难理解如何逆转链表或实现快速排序。

编程语言的发展和展望
编程语言的发展和展望

真正的人工智能

图灵测试

测试者与被测试者(一个人和一台机器)隔开的情况下,通过一些装置(键盘等)向被测试者随意提问。如果机器让平均每个参与者做出超过30%的误判,那么这台机器就通过了测试,并被认为具有人类智能。图灵在他的年代没有实践的条件,所有只是一个很笼统的目标,但图灵的初衷是希望为类人人工智能提供测试的标准。

全新的测试体系

包括但不限于:语境记忆能力、长期记忆能力、情绪改变功能、对常识的了解等。

ChatGPT作为逻辑性AI,语境与记忆上下文功能十分完备,但依然能感觉出特有的“讲废话”过程,能感觉出是一台机器固有的逻辑功能。

这是因为ChatGPT受限于算力的不足(相对于真正的人工智能而言)。我们可以假想:如果将全世界的所有数据,千万亿的参数加入进模型中去,这些文本数据充分的诠释了人类的智慧。此时是否可以说,我们培养出了具有人类全部文本知识的超级大脑;是否可以说,拥有了人类的全部智慧的它可以轻易通过由人设立的各种测试;是否可以说,真正的人工智能就此诞生,而我们即将见证历史。

GPT-4将于2023年发布
GPT-4将于2023年发布

替代人工?

达尔文曾经说过:“它不是幸存下来的物种中最强壮的,也不是最聪明的ーー但它是最能适应变化的物种。”

时间向前走,永不停歇。今天跟十年前的世界相比已经是日新月异、沧海桑田。我们解决问题的方式和方法每天都可能会改变,但总会有一些问题需要人去解决,不需要过于“杞人忧天”,害怕人工智能的代替。

当然ChatGPT的出现描绘了未来的一部分愿景:人们不再需要进行简单的低效工作。例如ChatGPT在客服咨询方面可以取代人类的工作,在推荐、解决Bug方面可以提升人们的效率。

但是,ChatGPT并不可能完全取代人工。比如一个软件工程师,日常的工作大部分时间会花在了讨论、发现正确的需求、设计架构等。而编写实际的代码只占了工作时间的很小一部分。ChatGPT的出现不会让人停止思考,更不会替代所有的人工。

一个人可以喋喋不休,但谁都不能理解他,或者一个人也可以什么也不说,最终让大家理解一切。

SmartNoteBook+ChatGPT

SmartNoteBook+ChatGPT = AIGC(AI-Generated Code,人工智能生成代码)

SQL开窗函数的用法记不住,每次都要百度?

Pandas的透视表总是记不住参数要查API?

想快速生成一段可以运行的机器学习案例代码?

...

在SmartNoteBook中,以上问题都可以轻松解决。

首先采用魔法指令%aigc加上我们的需求,执行生成需要的代码:

%aigc "python 在notebook 里面画个圆,然后把圆的坐标点用红色的点标出来。"

然后我们把生成的代码插入到新的单元格并执行,轻松完成:

%aigc "用python 写一个能够计算出任意斐波那契数列的函数,只需要代码部分"
%aigc "用python 写一个SQL排序开窗函数,只需要代码部分"
%aigc "用python pandas库对数据进行分组求和,只需要代码部分"
%aigc "用Python写一个iris分类模型,只需要展示模型的代码"

怎么样,是不是很神奇,好像有一群老印程序员在远程帮你敲代码?

使用SmartNoteBook,我们的数据分析师只需要把重点放在问题拆解和模型构建上,代码的事情就交给AI喽。

后记

ChatGPT引领了计算基础定义的转变,这给人类社会带来了巨大机遇,但同时也带来了巨大的风险。然而“未来已来”,我们是时候去接受这样一个非常可能的未来,并相应发展我们的思维,而不是只是坐以待毙。SmartNoteBook也在不断顺应时代的发展,适时更新和推出新的功能,降低数据科学/数据分析的门槛,提升用户体验。

分类:

人工智能

标签:

人工智能

作者介绍

z
zzhanglii
V1