对于一个语言新手来说, AI 辅助生成的代码片段是不是能称得上“质量较高”的代码学习指导
大模型的代码能力应该是基于厂商或者研究室精心准备的代码数据集。
那么,其所生成的代码片段是否可以信任为质量相对较高的代码。
当然了,这个是对代码新手,或者是某一个细分领域的编码来说。对于有思考的代码老手来说,AI 终究是个“打小手”的小助理。
所以,我的疑问是,在 AI 代码的辅助下新人去写一些稍微实用点的项目或者玩具,是不是成长起来会加速一些。
以及,会不会有“长歪了”的可能。
你可以用辅助但是如果想提升水平的话就要问为什么,这个 AI 通常也可以回答你。
"大模型的代码能力应该是基于厂商或者研究室精心准备的代码数据集。"
你再猜
我还以为的实习的大学生标注的呢😁
从信息真实性来说和在 AI 时代之前用搜索引擎搜索是一样的,都要对信息保持怀疑才对。
优缺点:不过搜索引擎会返回很多网页,可以进行比较;用 LLM 的话通常少有人去比较不同模型的输出(可能会因为交互设计难以返回多个结果,比如代码补全一般只显示一个结果,而且返回了多个结果你得承受几倍的费用)从而陷入茧房。另外新手在搜索引擎中可能搜不到想要的内容,改变搜索方式容易遇到 XY 问题,LLM 就“通人性”。
代码片段:我个人体验是 AI 对微观的代码生成质量比较高,比如具体到一个函数或者算法;宏观上感觉生成的比较一般,需要人去拆解需求(就算是 agent 分析好需求了也要人去做确认没有偏离)
大模型的代码能力应该是基于厂商或者研究室精心准备的代码数据集
这个结论是怎么得出来的
不能一概而论,看情况。具体到不同领域/不同编程语言,AI 生成的代码质量参差不齐。
什么是质量高?不是绝对值啊,这是个相对值。
既然是相对值,那么你出了 AI 写的代码,你还能看到别的代码吗,AI 写的代码是你唯一能接触到的代码吗?如果是,那不用管它质量高低,反正你也没有别的可以看可以学。
如果还有别的代码可以学,那就对比嘛。现在你只拿出一个东西来问“高低”,一个东西是没有高低的,你至少得提供两个选项,才能问高低。
另外看你的目标是什么,如果只是业余爱好,那没什么歪不歪的,开心最重要。对于多数人来说,编程是工程学,大工程要考虑的事情很多,小工程能用就行。
会。AI 由于上下文的问题,生成的代码很难顾全到全局,会限制你的眼界
会的. 尤其是模型见得少的语言.
比如 ucode, nftable 等, 模型能做的一塌糊涂
AI 给你的代码,既可能来自 Stack Overflow 的高赞回答,也可能来自 CSDN 的垃圾文章。
越冷门的领域质量越差。火热且开源巨多的前端 JavaScript 厉害,但是游戏开发这种更冷门、没什么开源的领域就不行。Unreal C++你让 AI 写,别说最佳实践了,很多时候甚至连编译都编译不了。
新手恐怕不能判断代码质量如何
不能。
AI 生成的代码既不保证质量也不保证正确性。
谁定义质量高的标准
AI 生成的代码是一团糟,你自己要去知道各种项目架构,业界常见的实现方式,可以优化的方向。使用起来比较舒服的方式是代码你都能写,项目你都懂,只是你指挥 AI 去完成编码这个动作,并且你需要去 review 生成出来的代码,及时纠正它的幻觉。假如你什么都不了解,让 AI 自己发挥,大概率生成出来一坨难看又难以维护的屎山,更别提从中学习了。
或许在项目初期使用 AI 生成一系列 crud 的操作很流畅,看着网页也像那么回事,但很大概率代码质量非常糟糕。我的看法是新手当然也可以用,但是得同步学习相关的知识,否则很容易被 AI 忽悠的裤衩子都没了。
起码对于我来说很有用,之前都是面向过程封装,复用的方法几乎没有,一个方法几百行,用了 ai 后开始面向对象了,大多数方法都能封装复用了
训练数据量大的就比较好吧, 至少觉得不好也可以指定修改方向修改, 要是 f#这种使用人很少的估计就不行了
可以看下这个人总结的:为什么我停止使用 AI 代码编辑器 -> lucianonooijen.com/blog/why-i-stopped-using-ai-code-editors/
Google 本周一发布了一个新的工作可以让任何人创建Android手机应用。这个工具叫Google App Inventor。(目前, App Inventor好像只对教育者…
目前办公有一台台式机,一台笔记本电脑,想用一套键鼠完成两个操作系统操作,求各位彦祖解决方案; 目前使用的 master3 鼠标,现状是台式机用 U 联,笔记本用蓝牙,要通过鼠标…
Downloading @next/[email protected]: 41.23 MB/41.23 MB, done dependencies: - next …