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

讨论一下 Ai 辅助编程的痛点

  •  1
     
  •   IAmSimon · 3 天前 · 2947 次点击

    目前在使用的是:通义灵码、copilot

    最近在使用 ai 辅助编程发现遇到几个问题,各位是怎么解决?还是是我的提问方式不够好:

    1. 提问生成的代码会比起自己写的更容易出问题,调试的时间更长,可能最后我自己写完还更快
    2. 目前提效更多的是一些体力活,比如命名、预测相似的逻辑等
    3. 生成速度的我感觉很慢,深度思考更慢,几十秒到几分钟不等
    4. ai 幻觉,会下意识信任 ai 的代码,就容易回到 1
    32 条回复    2025-02-20 10:41:33 +08:00
    mumbler
        1
    mumbler  
       3 天前   ❤️ 3
    工具不行,换 cursor
    weixind
        2
    weixind  
       3 天前
    先生成单测,再生成代码
    ochatokori
        3
    ochatokori  
       3 天前
    下意识不信任 ai ,然后每次都要把 ai 代码再读一遍,更累了
    pike0002
        4
    pike0002  
       2 天前   ❤️ 1
    谨慎使用,有时很庆幸在 AI 这么强大之前学会的编程。可以参考之前总结的一些经验教训(不光适用 cursor ,所有 AI 辅助编程都适用)。https://www.pixelstech.net/article/1736068526-be-careful-when-using-cursor-to-help-build-application?lang=chinese
    kikoroc
        5
    kikoroc  
       2 天前 via iPhone   ❤️ 2
    1. AI 在处理一些重复性或者基础性工作方面可以做的很好,比如:下一步的意图判断(按 Tab 键就完事了)、类型提取、函数提取等等。
    2. AI 检查代码片段的基础逻辑问题,人经常犯的基础问题,有时代码不好直接调试,一眼看上没问题,AI 却可以一眼看出来并且给你纠正。
    3. 用过纯 Chat 的工具帮我写代码,也用过基于 IDE 的编程助手( Trae 、Copilot ),目前我体验的两者提供的体验都不错,都可以快速有效的帮我解决很多问题
    4. 虽然借助 AI 助手完成代码编写的开发方式高效,但并不总是轻松的,并不像网上很多人说的那样轻松,随随便便就可以写一个东西,比如:《我用半小时写了一个 XXX 》,当然如果你要实现的是一个非常通用的东西,它确实也可以达到这个效果。
    5. AI 帮我写代码不轻松的地方在于,你需要快速理解并且准确判断它写的东西是否准确、思路是否正确,一旦它的思路出现了问题而你又没有发现(尤其是涉及基础知识的的时候),这个时候它能把你累死,它可以一直写一点不累,左一个想法、又一个思路的,你需要一直理解它的思路,然后一直试,可是结果就是不对,你会非常累和焦虑😭😭😭。
    6. 从我的心路历程看出现上面一条问题的根源在于,我不太想理解 AI 的实现细节(还有一种是涉及基础的知识确实不懂),想快速的解决问题,于是期望通过效果验证、情况说明等泛反馈让 AI 帮我快速修正问题,从前面分享的案例也可以看出来,前面几次与 AI 沟通交流都没有解决问题,出现这个问题我觉得我肯定有责任,轻敌了,没有驾驭好这个问题,当然作为我的结对编程 Partner ,AI 助手多少也有些能力上的欠缺 😁😁😁。
    7. 前面说的可能就是 AI 幻觉的问题,掉入 AI 幻觉的陷阱(以往普通开发中可能也有类似的陷阱吧,比如不想深入了解细节,一直试,结果就是不对)这个问题非常严重,AI 并不知道自己错哪了,这在处理复杂问题时非常的常见,你需要对它进行精准的引导。
    8. AI 辅助开发并不是银弹,它现在更像一个有知识没想法的天才少年,你需要告诉它思路和方向,它才可以很好工作,假如完成的东西涉及一些理论知识你自己不了解,它又很难一次预判所有情况和场景,一次性写对,这就难办了,你就需要基于已有线索就理论知识进行深入沟通和学习,然后再给出判断和正确的反馈,这个过程其实也非常费脑子。
    9. 感觉和 AI 编程助手打交道也是要有耐心,也需要抱着学习的心态,复杂情况下它给出的代码也是需要一步一步的验证,给出合理精准的反馈,太着急反而不利于解决问题。
    10. 不过,得益于结合 IDE 的编程助手的出现,前面说的一步一步的验证过程,也可以让 IDE 助手帮实现,整体效率还是有很大提升的。
    xuanbg
        6
    xuanbg  
       2 天前
    我只让 AI 提示我怎么写,而不是让 AI 帮我写
    qingbaihe
        7
    qingbaihe  
       2 天前
    不用 AI 就没这些烦恼了
    crackidz
        8
    crackidz  
       2 天前
    你用的啥工具啊...工具之间差异挺大的。比如 cursor 自带问题自动修复功能,但你用 trae 明显功能差很多了。

    生成速度确实不算很快,从提问到结束是需要几十秒的,你几十秒能写的代码确实没必要用 AI ,但是换种思路,那种需要更长时间的用 AI 不就有意义了么...
    zamasu
        9
    zamasu  
       2 天前
    用 cursor 你就知道这两个有多烂了
    kikoroc
        10
    kikoroc  
       2 天前 via iPhone
    @xuanbg 我刚开始也是这样,但是用了 trae 和 copilot 这类和 ide 集成的 ai 后,发现世界观变了,ai 能做的更多。
    niboy
        11
    niboy  
       2 天前
    换 cursor
    IAmSimon
        12
    IAmSimon  
    OP
       2 天前
    @weixind

    不是一般先有代码,再有单测吗?这是什么高级操作吗?
    IAmSimon
        13
    IAmSimon  
    OP
       2 天前
    @ochatokori

    现在就是这样的困境,ai 现在更像一个““查得更快得搜索引擎””
    IAmSimon
        14
    IAmSimon  
    OP
       2 天前
    @pike0002 同感,所以我很难理解那些靠 ai 就能 0 基础就能编程的理论,除非生成的玩意都是““一次性代码””,看效果就完了,完全没有下一次迭代
    zhangeric
        15
    zhangeric  
       2 天前
    上单元测试
    ggzhyipeng
        16
    ggzhyipeng  
       2 天前
    @IAmSimon 测试驱动开发 TDD 可以了解下
    LowBi
        17
    LowBi  
       2 天前
    目前问题:自己写的代码有印象,出问题了解来龙去脉,AI 提供的代码复制黏贴,能跑,但是出问题或者要加需求就得从头到尾看下代码
    shaozelin030405
        18
    shaozelin030405  
       2 天前
    ai 写出来的东西,先从头到尾看一遍,花不了多少时间
    wryyyyyyyyyyyy
        19
    wryyyyyyyyyyyy  
       2 天前
    ai 写的东西看一遍,看到没用过的还可以当场学习,直接 copy/apply 非常不好。
    radishzz
        20
    radishzz  
       2 天前
    人工智能正在创造一代文盲程序员 https://nmn.gl/blog/ai-illiterate-programmers
    ciki
        21
    ciki  
       2 天前
    最强编程工具请认准 cursor
    IAmSimon
        22
    IAmSimon  
    OP
       2 天前
    @radishzz

    Every time we let AI solve a problem we could’ve solved ourselves, we’re trading long-term understanding for short-term productivity. We’re optimizing for today’s commit at the cost of tomorrow’s ability.

    每当我们让 AI 解决一个我们可以解决的问题时,我们都会为短期生产力提供长期理解。我们正在以明天的能力为代价为当今的承诺进行优化。

    有种被 ai 控制的感觉
    masterArcher
        23
    masterArcher  
       2 天前
    ai 辅助首先得自己会写代码有哪个逻辑

    然后把代码拆分 对小模块进行优化
    z3wood
        24
    z3wood  
       2 天前
    换 cursor+claude
    rogerer
        25
    rogerer  
       2 天前
    建议给 AI 写文档,你要什么功能,具体的定义,期望的表现都给 AI 写好。
    dishangyijiao
        26
    dishangyijiao  
       2 天前
    建议换 Cursor ,使用 Claude 3.5 Sonnet 模型。
    ForkNMB
        27
    ForkNMB  
       2 天前
    AI 读代码肯定是非常可以的 扔给你一个不熟悉的语言的庞大项目 要你分析技术实现 并且部分借鉴里面的实现 抄并且改一改新的出来 没 AI 我肯定够呛 有 AI 帮助快速摸清实现细节还是很方便的 最近在用 trae 里面也有 Claude 3.5 Sonnet 直接免费用 帮大忙了属于是
    msg7086
        28
    msg7086  
       2 天前
    昨天突发奇想要做一个识别视频里文字位置的项目,直接问 AI 怎么做,AI 告诉我 tesseract 能搞,花了一个晚上让他帮我用 Python 写了个脚本,ffmpeg 读视频转图片,喂给 tesserocr ,拿到数据处理完写入 json 。然后再让他帮我用 lua 写了个某软件的插件,读取 json 然后操作文件。

    今天这脚本已经进生产了。我是一点儿也没认真读代码,具体细节实现全是 AI 写的。Python 和 lua 我都不懂,全靠写注释和伪代码然后让 AI 自己转成代码,跑起来炸了就把错误信息扔回去让 AI 自己想。

    这不是说程序员的能力就不需要了。扎实的功底依然是玩转 AI 的前提要求。比如 AI 抓 ffmpeg 的 stdout ,然而 ffmpeg 的 log 都是写 stderr 的,然后就 blocking pipe 了,这种 AI 发现不了,得你自己发现了处理。剩下的那些没有技术含量但又非常花时间手写的地方才是 AI 发挥本事的地方。
    msg7086
        29
    msg7086  
       2 天前
    > 目前提效更多的是一些体力活,比如命名、预测相似的逻辑等
    > 生成速度的我感觉很慢,深度思考更慢,几十秒到几分钟不等
    我用的 cursor 的预测,性能非常好,很多时候只要改掉一个地方马上就会举一反三帮我改其他地方。
    深度思考的话我现在用的 gemini 2.0 flash exp ,主要是贪免费。
    sampeng
        30
    sampeng  
       2 天前 via iPhone
    纯粹是工具问题,正常人用 cursor ,最不济 copilot…用国产这两个…你的感慨就是浪费自己生命
    diroverflow
        31
    diroverflow  
       1 天前
    @z3wood 我不明白,Cursor+Claude 能比 VSCode copilot+Claude 强多少?
    InkStone
        32
    InkStone  
       1 天前
    @diroverflow cursor 的 tab 提示比 copilot 强很多(更快更积极且更准),我个人使用过来感觉体验至少强一个档次。

    如果是在 copilot 还没有 composer 功能之前,那至少能强两个档次。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2756 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 12:58 · PVG 20:58 · LAX 04:58 · JFK 07:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.