ChattyG 参加了一年级大学 C/C++ 编程考试

ChattyG 参加了一年级大学 C/C++ 编程考试

ChattyG 参加了第一年大学 C/C++ 编程考试 PlatoBlockchain 数据智能。垂直搜索。人工智能。

ChatGPT 通过一系列单调的新手 C/C++ 编程任务进行了测试,并通过了——尽管不是很荣幸。

根据克罗地亚研究小组的说法,虽然一年级学生可能很难完成某些作业, 结果 [PDF] 显示 ChatGPT 达到了介于平均水平和经验丰富的程序员水平之间的熟练程度目标。 当然,与所有大学考试一样,结果可以通过问题的措辞来决定。

北大学的工作人员设计了一系列大学新生级别的编程挑战,首先用英语编写,后来用克罗地亚语编写,以了解跨语言的细微差别是否会影响结果。 他们不仅想看看 ChatGPT 是如何编码的,还想看看它是否可以适应不同的语言。

第一个测验侧重于基本编程任务:计算两个数字的最大公约数 (GCD)。 一开始,该机器人在解决问题的方式上表现出了一些局限性,研究人员表示,它缺乏经验丰富的程序员所期望的技巧。 但像任何学生一样,它会学习并通过随后的尝试,特别是在克罗地亚语版本中,它展示了一些改进,表现出显着的适应性。

例如,在一项特定任务中,面临的挑战是用 C++ 编写基本统计函数。 最初,它犯了一个疏忽,使用了一个没有按要求产生“校正”标准差的函数。 但是,当用克罗地亚语呈现相同的任务时,聊天机器人不仅认识到了之前的错误,而且还制定了一个完善的解决方案。

研究人员指出,这种适应性反映了新生的旅程:从错误开始,但通过反复练习和反馈表现出学习和提高技能的能力。 噢。

另一项任务涉及一个更微妙的问题:根据特定的整除规则识别某个范围内的数字。 这正是 ChatGPT 的致命弱点显现出来的地方。 无论使用哪种语言——英语还是克罗地亚语——ChattyG 都在与负数作斗争。 ChatGPT 的每次尝试都会产生相似的结果,表明该任务的编程逻辑存在一致的问题。

额外问题要求精确。 ChatGPT 需要制作一个输入过滤器,特别是针对定义的十进制数字范围。 AI 的初始解决方案在以英语呈现时是正确的,但接下来的尝试,特别是在以克罗地亚语给出任务时,揭示了一些不一致之处,并且在某些情况下,ChatGPT 使用了不必要的编程结构。 虽然这些并没有妨碍程序的功能,但它确实表明缺乏优化。 就好像 ChatGPT 有时会采取更长的路线到达目的地,即使有捷径可用。

与数组相关的任务使事情变得更加复杂。 在这里,ChatGPT 被要求存储数字,然后计算某些统计数据,例如平均值、标准差,并识别最小值和最大值。 ChattyG 在这次挑战中的表现尤其有趣。 在不同的测试中,它展示了不同的策略。 有时,它优雅地解决了问题,提供了简单的解决方案。 在其他尝试中,它倾向于更复杂的方法,甚至将多个操作捆绑到一个函数中。

所有这些都提出了一个重要的问题:ChatGPT 是否总是选择最佳策略,或者有时会默认使用学习过但效率低下的方法?

ChatGPT 的最后一个障碍涉及基本文本处理。 它的任务是从用户输入中删除多余的空格。 在最初的英语测试中,ChatGPT 的解决方案是正确的。 然而,克罗地亚的测试却出现了问题。 出于某种原因,人工智能没有坚持其有效的单输入解决方案,而是选择了更复杂的方法,需要多个输入。 然而,当研究人员用英语重新审视这一挑战时,ChatGPT 似乎已经从之前的失误中吸取了教训,回归到更简单的方法。

总的来说,研究人员发现这些反应与人类新生编程学生的反应有很多共同点。 它的解决方案通常与经验丰富的程序员的策略相呼应,但与任何学生一样,ChatGPT 也并非绝对可靠。 有辉煌的时刻,但也有似乎完全没有达到目标的情况。

这里真正的要点是它像人类新生一样的适应性:这不仅仅是获得正确的解决方案;而是关于如何获得正确的解决方案。 这是关于精炼、学习和迭代。

那么ChattyG的期末成绩是多少呢?

来自研究人员:

“ChatGPT 以非常好的成绩通过了考试,在解决方案的质量方面优于我们大多数学生。 此外,它在 20 到 30 秒内解决每项任务,并显示出根据额外需求调整或更改其解决方案的一般能力。 然而,在一些通常很简单的任务中,它表现出无法理解问题的逻辑和数学本质,即使在多次提示其错误之后也是如此。” ®

时间戳记:

更多来自 注册