ChatGPT 时代,程序员的生存之道

ChatGPT 近期炙手可热,仿佛没有什么问题是它不能解决的。出于对 ChatGPT 的好奇,我们决定探索下它对于前端开发人员来讲,是作为辅助工具多一些,还是主力工具更多一些?

2D 能力测试

我们就挑选一个著名的递归回溯问题——“八皇后”,看看 ChatGPT 的表现如何。

什么是“八皇后”

首先,我们先让它完整介绍下“八皇后“问题。让我们拭目以待 ChatGPT 会给出什么样的答案,沟通如下图所示:

只是要求介绍一下“八皇后”问题,它竟然连解题思路也如此清晰地一并给出。

编程能力

既然如此,那就来考考编程能力。

先要求它使用 JavaScript 求解“八皇后”问题的所有解。为了方便查看最终效果,又要求它使用 Canvas 将结果绘制出来。具体问答如图所示:

目不转睛地注视着屏幕中的 ChatGPT ,它一行一行噼里啪啦地给出答案,且代码编写地如此整洁,不禁由衷赞叹。虽然还不确定这些代码能否真的运行起来,得到我们想要的效果,但是从生成代码的结构和逻辑性来看,已经足够令人震撼。

接下来,我们来验证一下代码是否真的可以顺利运行。复制粘贴 ChatGPT 给出的答案,在未更改一行代码的情况下,页面的确运行了。一起看看运行效果:

看着实现出来的效果,我的内心开始忐忑不安。脑海里疯狂计算着这样一个问题:我需要花费多长时间才能解决以上问题?反正肯定无法像 ChatGPT 这样,不到 30S 就给出结果。

输出所有解

再回过头来看答案,却发现只打印出一个结果,所以它能否将所有的结果都打印出来呢?我们接着提出需求,答案如图所示:

Unbelievable,竟然真的可以,立即复制粘贴操作,检验运行效果:

仔细数了下,发现只输出了 16 个解,但是开头提到总共是有 92 个解。通过仔细查阅代码,发现一个小格子被定义为 40 个像素,而整个 Canvas 的大小是 1280 像素,所以这个 Canvas 最多只能画 16 个棋盘。

在此输出中,棋盘和棋盘之间没有点间隔,很难辨别棋盘边界,观看起来有些费力。问题相对简单,只需调整几个参数即可解决,我们选择手动调整,调整后的 drawChessboards 方法。如下所示:

function drawChessboards(solutions) {
const canvas = document.getElementById('chessboard');
const ctx = canvas.getContext('2d');
const n = solutions[0].length;
const solutionsPerRow = Math.ceil(Math.sqrt(solutions.length));
const sizeWithGap = canvas.width / solutionsPerRow / n;
const size = sizeWithGap * 0.95;
for (let k = 0; k < solutions.length; k++) {
const offsetX = ((k % solutionsPerRow) * n + 0.2) * sizeWithGap;
const offsetY = (Math.floor(k / solutionsPerRow) * n + 0.2) * sizeWithGap;
for (let row = 0; row < n; row++) {
for (let col = 0; col < n; col++) {
if ((row + col) % 2 === 0) {
ctx.fillStyle = '#FFFFFF';
} else {
ctx.fillStyle = '#000000';
}
ctx.fillRect(col * size + offsetX, row * size + offsetY, size, size);
if (solutions[k][row][col] === 'Q') {
ctx.beginPath();
ctx.arc(col * size + size / 2 + offsetX, row * size + size / 2 + offsetY, size / 4, 0, 2 * Math.PI);
ctx.fillStyle = '#FF0000';
ctx.fill();
}
}
}
}
}

接下来再瞧瞧最终的运行效果:

这回看着舒服了很多~

综上所述通过对 ChatGPT 在 2D 能力检验可知,ChatGPT 在生成 Canvas 绘制逻辑代码的能力以及解决问题逻辑处理能力上,已然与一位程序员没什么区别了,甚至可能它所具备的能力或远超普通的程序员。

3D 渲染测试

提升维度,让 ChatGPT 将结果用 3D 的渲染方式输出看看。如图所示:

我们再一次机械性地复制、粘贴、运行它给出的代码,结果就是——跑起来了,真的跑起来了。(ps:可以看出真的很激动~)

但该视角太低,不适合观察棋盘上皇后的分布情况,手动微调下场景视角高度,再来看看效果:

使用开源的 3D 渲染引擎 Three.js,实现了这样的效果,还是非常不错的。

模型风格调整测试

用简单的柱子来表示皇后,看起来太过单调,想看看 ChatGPT 能否真正生成精致的皇后模型,于是就有下图的提问:

运行效果如下:

皇后模型效果确实给出了调整,视角也有所调高,但又过于高了且皇后的位置好像有些偏差,看起来像是悬浮在空中。再让它调整看下,如下图所示:

调整后效果:

大概这样的“皇后”模型已经是极限了,我们就不再强求,生成的视角还是那么高,但都是小问题,微调下即可,其他的都未做调整。

以上就是整个 3D 渲染效果的校验过程,再一次证明了 ChatGPT 的强大之处,生成的代码显然已经达到可应用级别。

WebGL 技术测试

既然会使用 Three.js,那是不是意味着已经掌握了 WebGL 技术呢?接下来问题再升级下,测试看能否用纯 WebGL 来完成 3D 的渲染,如图所示:

望着代码被一行一行急速输出时,再一次被它的强悍震得心头一紧。如果想要完整实现的话内容会太长,所以它罗列了代码的整体框架,部分代码用注释代替。

HT 渲染引擎究极测试

身边的小伙伴提到,试问下能否用图扑软件自家 HT 作为渲染引擎,让 ChatGPT 给出相应的可执行代码?答案如图所示:

乍一看输出的结果,代码似乎写得很不错。但仔细阅读后,会发现代码中有很多地方使用错误,比如没有使用 HT 的 3D 组件 Graph3dView,而是使用了 2D 组件 GraphView;2D 的接口和 3D 的接口混用;使用的接口不存在等多种问题。

也许是 ChatGPT 能够获得的训练数据相当有限,但它生成代码的水平已经是非常高了,只需在原基础上稍加调整,即可顺利运行。

总体来说,ChatGPT 相较于普通程序员,在编写算法和通用渲染方面以及效率上都有着更强的实力。在一些比较垂直的领域,由于缺乏足够的训练数据,可能会导致无法准确完整地表达,甚至会出现张冠李戴的情况。但它的表现在一定程度上缩短了程序员解决问题的时间,只要问题描述足够清晰,就可以获取到答案并直接使用。

在未来,相信 ChatGPT 会变得越来越强大,并且会成为一款非常出色的辅助工具,甚至可能成为主要的生产工具。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/40826.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

为什么中国的程序员总被称为「码农」?

很多同学会问&#xff0c;IT行业在中国并不是特别差的行业&#xff0c;而程序员的工资也并不低&#xff0c;但为什么中国的程序员总被称作码农或者说是苦逼的程序员&#xff1f;中国的程序员生活和欧美的有什么不一样&#xff1f; 先说两个小段子 街边&#xff0c;一对情侣在吵…

Intents ,快速完成任务的最强辅助

当 Siri 之类的人工智能助理成为标配&#xff0c;ChatGPT 之类的聊天机器人越来越平常&#xff0c;各行各业的人们都开始加入了对 AI 的讨论。那人工智能发展的尽头是什么&#xff1f;是不是真的会实现《阿凡达》里的脑机&#xff0c;还是科技真的会预知人们的意图呢&#xff1…

OpenAI官方提示词课(七)制作一个聊天机器人

大型语言模型的一个令人兴奋的方面是&#xff0c;你可以利用它来构建一个定制的聊天机器人&#xff0c;并且只需付出少量的努力。ChatGPT 的网页界面可以让你与一个大型语言模型进行对话。但其中一个很酷的功能是&#xff0c;你也可以利用大型语言模型构建你自己的定制聊天机器…

使用Auto-GPT增强您的ChatGPT提示,成为你的虚拟助手

这个新工具基本上将ChatGPT转化为一个虚拟助手&#xff0c;帮助您管理项目&#xff0c;运营营销活动等。 背景介绍 人工智能工具的能力正在迅速进步&#xff0c;谷歌、微软、OpenAI等公司正在竞相保持领先优势。似乎每周都在推出新的进展和应用程序&#xff0c;AI能为我们带来…

Openai+Deeplearning.AI: ChatGPT Prompt Engineering(六)

想和大家分享一下最近学习的Deeplearning.AI和openai联合打造ChatGPT Prompt Engineering在线课程.以下是我写的关于该课程的前五篇博客&#xff1a; ChatGPT Prompt Engineering(一)ChatGPT Prompt Engineering(二)ChatGPT Prompt Engineering(三)ChatGPT Prompt Engineering…

大二学生--腾讯CSIG测开面经

大二学生一个偶然的机会&#xff0c;腾讯某个岗位比较急&#xff0c;有点像内推吧&#xff0c;就想着试试看&#xff0c;积累积累经验&#xff08;深技大大三下就开始实习&#xff09;就把简历发过去了。 一面&#xff08;30min&#xff09; 首先面试官Kinda人很好&#xff0…

2021 腾讯校招 + 后台开发面经(已 offer)

综合总结&#xff1a; 面试效率极高面试官全程引导性面试&#xff0c;尽显大佬风范。有不会的题目可以和面试官讨论探索&#xff0c;体验极好。 知识总结&#xff1a; 常见网络协议及性质基础数据结构和算法实际问题的解决经验 腾讯一面 时长 70 分钟 自我介绍 常见数据结…

ChatGPT助力校招----面试问题分享(九)

1 ChatGPT每日一题&#xff1a;单片机上电未正常工作&#xff0c;如何检查 问题&#xff1a;单片机上电没有正常工作&#xff0c;如何检查 ChatGPT&#xff1a;如果单片机上电后没有正常工作&#xff0c;以下是一些可能的检查步骤&#xff1a; 检查电源&#xff1a;确保单片…

腾讯CSIG事业群后台开发 3+1hr面经【已offer】

时间线 这是腾讯面试的第二个事业群&#xff0c;总体难度比第一个大&#xff0c;尤其是喜欢深挖底层。可能是我最近太欧了&#xff0c;流程走的贼快&#xff0c;面试也很顺利&#xff0c;尽管总监喜欢dfs到候选人自闭&#xff0c;还是挺过来了&#xff0c;目前offer正在报批in…

内推学弟进了腾讯,看看他的标杆简历!

直系学弟的简历分享&#xff0c;凡人也可以成仙&#xff1f;&#xff01; 大家好&#xff0c;我是鱼皮&#xff0c;求职季快到了&#xff0c;很多小伙伴问我&#xff1a;简历应该怎么写才能吸引面试官呢&#xff1f; 其实之前给大家分享过鱼皮自己的求职简历和简历模板&#x…

工具推荐_mathcha、Mathpix 快速编写数学公式

目录 LaTeX 简介&#xff1a;一、Mathcha 在线编辑器Mathcha 使用教程&#xff1a; &#xff08;一&#xff09;通过输入名字、分类、画板快速查找和输入数学符号&#xff08;二&#xff09;可支持LaTeX导入、导出 LaTeX 格式&#xff08;三&#xff09;使用操作视频二、Mathpi…

【计算方法】python求解数值积分|梯形公式|辛普森公式|高斯求积公式

梯形公式 import numpy as npdef ff(x):return np.sqrt(x)*np.log(x)def tixing_quad(ff,a,b,n):x_p np.linspace(a,b,n1) #linspace去得到右端点&#xff0c;arrange去不到h (b-a)/nf np.zeros(n1)f[1:n1] ff(x_p[1:n1])value 0for i in range(n):value (f[i]f[i1])*h/…

超强大的数学计算器——WolframAlpha(含安卓下载连接)

文章目录 一 软件界面二 常用的功能展示(输入样例)2.1 计算不定积分2.2 定积分2.3 级数求和2.4 无穷乘积2.5 求导2.6 求高阶导2.7 偏导数2.8 解微分方程2.9 绘制函数图像2.10 泰勒展开2.11 联立方程组2.12 极限2.13 矩阵2.14 波特图2.15 根轨迹 大概介绍这些&#xff0c;画图用…

全网最详细中英文ChatGPT-GPT-4示例文档-最强JS助手聊天机器人应用从0到1快速入门——官网推荐的48种最佳应用场景(附python/node.js/curl命令源代码,小白也能学)

从0到1快速入门最强JS助手聊天机器人应用场景 Introduce 简介setting 设置Prompt 提示Sample response 回复样本API request 接口请求python接口请求示例node.js接口请求示例curl命令示例json格式示例 其它资料下载 ChatGPT是目前最先进的AI聊天机器人&#xff0c;它能够理解图…

【杂谈】有三AI课程兼职讲师,打造自己的影响力,我从这里开始!

各位有三AI的读者朋友们大家好&#xff0c;我是Leo&#xff0c;是一名“有三AI”团队的讲师&#xff0c;同时也是一名大学老师&#xff0c;目前在有三AI兼职讲师两年了&#xff0c;给大家简单分享下自己的经历&#xff0c;也供更多有兴趣来平台做兼职讲师的朋友了解。 与有三AI…

黑群晖数据同步备份

1、很多新人朋友,有NAS以后,都采用手动复制文件到NAS这种低效率的备份方式。 有时候忘记备份,导致数据丢失! 有时候某些数据做错了一些操作,但是找不到旧版本的文件了,而有了NAS以后,这些问题都可以完美的解决! 现在大部分NAS,拷贝文件都有100MB/s以上的速度,这个速…

群晖网页服务器,群晖web服务器

群晖web服务器 内容精选 换一换 简要介绍Keepalived的作用是检测服务器的状态。假设有一台服务器出现故障,Keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作。当服务器工作正常后,Keepalived自动将服务器加入到服务器群中。这些工…

群晖通过WebDAV挂载阿里云盘

什么是群晖&#xff1f; 群晖是Nas品牌。纵观NAS市场&#xff0c;系统层面几乎是被群晖和威联通所垄断的&#xff0c;只要你使用NAS基本都逃不过这两个系统。所以只要能够玩转这两个系统就基本上通吃市面所有的NAS了。 它能做到的事情有很多&#xff0c;许多刚接触到 NAS 的玩家…

群晖DDNS解析

网上关于DDNS解析的介绍已经很多了&#xff0c;我这里主要列举通过阿里云和Cloudflare进行解析。使用两个解析的原因是阿里云的域名必须要备案&#xff0c;不然会被阿里云封掉&#xff08;阿里云解析的域名如果解析的IP不是阿里云服务器的&#xff0c;还会提示要求使用阿里云服…