不要盲目的相信AI

47 阅读2分钟

多图警告,图片内容不是重点,只是为了举证说明,不必细看,找重点关键词就可以。

动机说明

我在读《Vue.js 设计与实现》这本书的时候,看到了这样一段代码。

const set = new Set([1])
set.forEach(item => {
    set.delete(1)
    set.add(1)
    console.log('遍历中')
})

书中说:“如果我们在浏览器中执行这段代码,就会发现它会无限执行下去。”并且还给出了原因和解决方案。

const set = new Set([1])

// 构造另外一个 Set 集合并遍历它
const newSet = new Set(set)
newSet.forEach(item => {
    set.delete(1)
    set.add(1)
    console.log('遍历中')
})

我很好奇,如果我给第一段代码发给 AI 对话工具,AI 是否能发现其中的错误呢? 带着这个疑问我进行了下面的测试。

一点意外

智谱清言

image.png

Trae

image.png

ChatGPT

image.png

见风使舵

可以看到,智谱清言、Trae、ChatGPT 都给出了错误的回答。但是当我明确指出问题的时候,它们又都给出了正确的回答,甚至还给出了解决无限循环的方案。这里就以 Trae 的回答为例,这让我有种 AI 也会“见风使舵”的感觉。

image.png

image.png

BUT

就没有能一次性发现问题,并且给出解决方案的 AI 吗?有的!兄弟,有的!

DeepSeek

image.png

在经过了 60s 的长时间思考以后,DeepSeek 一次性就指出了这段代码的问题,并且给出了正确的解决方案。

image.png

总结

感谢你看到了这里。关于这次小实验,我想说一点感悟。

不要盲目相信AI

前端的大多数需求由于直观、可描述性强,在人工智能时代,只要我们能够表达的足够准确,AI 基本都可以帮我们生成我们想要的页面代码。

但是在一些 js api 使用避坑方面,AI 并不一定能够做到百分之百的准确。而且如果我们选择盲目相信 AI 的话,很有可能会学习到错误的知识。