V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
SGL
V2EX  ›  程序员

对于一个语言新手来说, AI 辅助生成的代码片段是不是能称得上“质量较高”的代码学习指导

  •  
  •   SGL · 18 天前 · 2478 次点击
    大模型的代码能力应该是基于厂商或者研究室精心准备的代码数据集。

    那么,其所生成的代码片段是否可以信任为质量相对较高的代码。

    当然了,这个是对代码新手,或者是某一个细分领域的编码来说。对于有思考的代码老手来说,AI 终究是个“打小手”的小助理。

    所以,我的疑问是,在 AI 代码的辅助下新人去写一些稍微实用点的项目或者玩具,是不是成长起来会加速一些。
    以及,会不会有“长歪了”的可能。
    21 条回复    2025-04-07 15:59:26 +08:00
    terence4444
        1
    terence4444  
       18 天前 via iPhone
    你可以用辅助但是如果想提升水平的话就要问为什么,这个 AI 通常也可以回答你。
    liprais
        2
    liprais  
       18 天前
    "大模型的代码能力应该是基于厂商或者研究室精心准备的代码数据集。"
    你再猜
    duzhuo
        3
    duzhuo  
       18 天前
    @liprais 我还以为的实习的大学生标注的呢😁
    flax5a98aa2
        4
    flax5a98aa2  
       18 天前
    从信息真实性来说和在 AI 时代之前用搜索引擎搜索是一样的,都要对信息保持怀疑才对。

    优缺点:不过搜索引擎会返回很多网页,可以进行比较;用 LLM 的话通常少有人去比较不同模型的输出(可能会因为交互设计难以返回多个结果,比如代码补全一般只显示一个结果,而且返回了多个结果你得承受几倍的费用)从而陷入茧房。另外新手在搜索引擎中可能搜不到想要的内容,改变搜索方式容易遇到 XY 问题,LLM 就“通人性”。

    代码片段:我个人体验是 AI 对微观的代码生成质量比较高,比如具体到一个函数或者算法;宏观上感觉生成的比较一般,需要人去拆解需求(就算是 agent 分析好需求了也要人去做确认没有偏离)
    shintendo
        5
    shintendo  
       17 天前
    大模型的代码能力应该是基于厂商或者研究室精心准备的代码数据集
    这个结论是怎么得出来的
    Vegetable
        6
    Vegetable  
       17 天前
    不能一概而论,看情况。具体到不同领域/不同编程语言,AI 生成的代码质量参差不齐。
    cmdOptionKana
        7
    cmdOptionKana  
       17 天前
    什么是质量高?不是绝对值啊,这是个相对值。

    既然是相对值,那么你出了 AI 写的代码,你还能看到别的代码吗,AI 写的代码是你唯一能接触到的代码吗?如果是,那不用管它质量高低,反正你也没有别的可以看可以学。

    如果还有别的代码可以学,那就对比嘛。现在你只拿出一个东西来问“高低”,一个东西是没有高低的,你至少得提供两个选项,才能问高低。
    cmdOptionKana
        8
    cmdOptionKana  
       17 天前
    另外看你的目标是什么,如果只是业余爱好,那没什么歪不歪的,开心最重要。对于多数人来说,编程是工程学,大工程要考虑的事情很多,小工程能用就行。
    NotLongNil
        9
    NotLongNil  
       17 天前
    会。AI 由于上下文的问题,生成的代码很难顾全到全局,会限制你的眼界
    lurenjiaMAX
        10
    lurenjiaMAX  
       17 天前
    会的. 尤其是模型见得少的语言.
    比如 ucode, nftable 等, 模型能做的一塌糊涂
    DOLLOR
        11
    DOLLOR  
       17 天前
    AI 给你的代码,既可能来自 Stack Overflow 的高赞回答,也可能来自 CSDN 的垃圾文章。
    LaTero
        12
    LaTero  
       17 天前
    越冷门的领域质量越差。火热且开源巨多的前端 JavaScript 厉害,但是游戏开发这种更冷门、没什么开源的领域就不行。Unreal C++你让 AI 写,别说最佳实践了,很多时候甚至连编译都编译不了。
    leo72638
        13
    leo72638  
       17 天前 via iPhone
    新手恐怕不能判断代码质量如何
    mingl0280
        14
    mingl0280  
       17 天前 via Android
    不能。
    AI 生成的代码既不保证质量也不保证正确性。
    shawnsh
        15
    shawnsh  
       17 天前 via Android
    谁定义质量高的标准
    zaunist
        16
    zaunist  
       17 天前
    AI 生成的代码是一团糟,你自己要去知道各种项目架构,业界常见的实现方式,可以优化的方向。使用起来比较舒服的方式是代码你都能写,项目你都懂,只是你指挥 AI 去完成编码这个动作,并且你需要去 review 生成出来的代码,及时纠正它的幻觉。假如你什么都不了解,让 AI 自己发挥,大概率生成出来一坨难看又难以维护的屎山,更别提从中学习了。
    zaunist
        17
    zaunist  
       17 天前
    @zaunist 或许在项目初期使用 AI 生成一系列 crud 的操作很流畅,看着网页也像那么回事,但很大概率代码质量非常糟糕。我的看法是新手当然也可以用,但是得同步学习相关的知识,否则很容易被 AI 忽悠的裤衩子都没了。
    FlorentinoAriza
        18
    FlorentinoAriza  
       17 天前
    起码对于我来说很有用,之前都是面向过程封装,复用的方法几乎没有,一个方法几百行,用了 ai 后开始面向对象了,大多数方法都能封装复用了
    yb2313
        19
    yb2313  
       17 天前
    训练数据量大的就比较好吧, 至少觉得不好也可以指定修改方向修改, 要是 f#这种使用人很少的估计就不行了
    eightdoor
        20
    eightdoor  
       17 天前   ❤️ 1
    可以看下这个人总结的:为什么我停止使用 AI 代码编辑器 ->https://lucianonooijen.com/blog/why-i-stopped-using-ai-code-editors/
    ccii
        21
    ccii  
       17 天前
    写一些独立的模块之类的还是很不错的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4282 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 10:08 · PVG 18:08 · LAX 03:08 · JFK 06:08
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.