• 请不要在回答技术问题时复制粘贴 AI 生成的内容
IAmSimon
V2EX  ›  程序员

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

  •  1
     
  •   IAmSimon · Feb 18, 2025 · 6631 views
    This topic created in 625 days ago, the information mentioned may be changed or developed.

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

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

    1. 提问生成的代码会比起自己写的更容易出问题,调试的时间更长,可能最后我自己写完还更快
    2. 目前提效更多的是一些体力活,比如命名、预测相似的逻辑等
    3. 生成速度的我感觉很慢,深度思考更慢,几十秒到几分钟不等
    4. ai 幻觉,会下意识信任 ai 的代码,就容易回到 1
    32 replies  •  2025-02-20 10:41:33 +08:00
    mumbler
    mumbler
    Feb 18, 2025❤️3
    1
    工具不行,换 cursor
    weixind
    weixind
    Feb 18, 2025
    2
    先生成单测,再生成代码
    ochatokori
    ochatokori
    Feb 18, 2025
    3
    下意识不信任 ai ,然后每次都要把 ai 代码再读一遍,更累了
    pike0002
    pike0002
    Feb 18, 2025❤️1
    4
    谨慎使用,有时很庆幸在 AI 这么强大之前学会的编程。可以参考之前总结的一些经验教训(不光适用 cursor ,所有 AI 辅助编程都适用)。https://www.pixelstech.net/article/1736068526-be-careful-when-using-cursor-to-help-build-application?lang=chinese
    kikoroc
    kikoroc
    Feb 19, 2025 via iPhone❤️2
    5
    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
    xuanbg
    Feb 19, 2025
    6
    我只让 AI 提示我怎么写,而不是让 AI 帮我写
    qingbaihe
    qingbaihe
    Feb 19, 2025
    7
    不用 AI 就没这些烦恼了
    crackidz
    crackidz
    Feb 19, 2025
    8
    你用的啥工具啊...工具之间差异挺大的。比如 cursor 自带问题自动修复功能,但你用 trae 明显功能差很多了。

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

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

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

    然后把代码拆分 对小模块进行优化
    z3wood
    z3wood
    Feb 19, 2025
    24
    换 cursor+claude
    rogerer
    rogerer
    Feb 19, 2025
    25
    建议给 AI 写文档,你要什么功能,具体的定义,期望的表现都给 AI 写好。
    dishangyijiao
    dishangyijiao
    Feb 19, 2025
    26
    建议换 Cursor ,使用 Claude 3.5 Sonnet 模型。
    ForkNMB
    ForkNMB
    Feb 19, 2025
    27
    AI 读代码肯定是非常可以的 扔给你一个不熟悉的语言的庞大项目 要你分析技术实现 并且部分借鉴里面的实现 抄并且改一改新的出来 没 AI 我肯定够呛 有 AI 帮助快速摸清实现细节还是很方便的 最近在用 trae 里面也有 Claude 3.5 Sonnet 直接免费用 帮大忙了属于是
    msg7086
    msg7086
    Feb 19, 2025
    28
    昨天突发奇想要做一个识别视频里文字位置的项目,直接问 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
    msg7086
    Feb 19, 2025
    29
    > 目前提效更多的是一些体力活,比如命名、预测相似的逻辑等
    > 生成速度的我感觉很慢,深度思考更慢,几十秒到几分钟不等
    我用的 cursor 的预测,性能非常好,很多时候只要改掉一个地方马上就会举一反三帮我改其他地方。
    深度思考的话我现在用的 gemini 2.0 flash exp ,主要是贪免费。
    sampeng
    sampeng
    Feb 19, 2025 via iPhone
    30
    纯粹是工具问题,正常人用 cursor ,最不济 copilot…用国产这两个…你的感慨就是浪费自己生命
    diroverflow
    diroverflow
    Feb 20, 2025
    31
    @z3wood 我不明白,Cursor+Claude 能比 VSCode copilot+Claude 强多少?
    InkStone
    InkStone
    Feb 20, 2025
    32
    @diroverflow cursor 的 tab 提示比 copilot 强很多(更快更积极且更准),我个人使用过来感觉体验至少强一个档次。

    如果是在 copilot 还没有 composer 功能之前,那至少能强两个档次。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1525 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 61ms · UTC 23:03 · PVG 07:03 · LAX 15:03 · JFK 18:03
    ♥ Do have faith in what you're doing.