原贴链接

每天我都会看到另一个关于Claude或o3在’编码方面更出色’的帖子,我真是受够了。你们完全没抓住重点。事实是:这些人工智能在编码方面并不更擅长,它们只是记住了更多东西,仅此而已。证据如下:1. 给Claude一个它没见过的问题:花2个小时猜测解决方案;2. 加上一个打印语句来显示输出:‘哦,现在我确切知道问题出在哪了!’。它当然能看到问题所在了,因为现在它能实际看到发生了什么,而不是瞎猜错误。说真的,试着在没有打印语句或调试器(没有人工智能,就你自己)的情况下编码,你也会毫无头绪。我们期望人工智能神奇地找出代码的问题,却不给它们每个开发者都使用的最基本工具。‘但是Claude比o1编码更好!‘不,它只是记住了更多已知问题。试着给它一个没有调试输出的新问题,就会看到它像其他模型一样挣扎。我不是在说你的代码抛出的错误,我是在说日志记录,就是在人工智能出现之前每个开发者都会用的东西。所有这些测试人工智能编码的基准测试都是垃圾,因为它们没有测试真正的开发,它们是在测试针对已知问题的模式匹配。想要真正改进人工智能编码吗?别再痴迷于基准测试了,开始专注于将它们与合适的调试工具集成起来,让它们像每个人类开发者需要的那样看到代码中到底发生了什么。首先,你必须特别告诉大型语言模型(LLM)‘添加调试’这一事实本身就是个错误,它们应该知道何时这样做。注意:因为你们有些人可能需要说明一下 - 是的,我用人工智能编码。是的,它们很有用。是的,自从GPT 3.5发布那天起我每天都在用。但这不是重点。重点是我们对它们的衡量和比较是错误的,并因此错过了巨大的改进机会。

讨论总结

该讨论围绕AI编码展开,原帖指出人们对AI编码能力的认识存在误区,认为AI并非更“聪明”,只是记忆更多,当前的AI编码测试基准有问题,应让AI与调试工具结合。评论者们各抒己见,有表示认同并补充相关看法的,也有从不同角度提出反驳的,讨论涉及AI的能力、训练方式、在编码中的实际表现以及与人类程序员的比较等多方面内容,整体氛围较为活跃,充满了不同观点的碰撞。

主要观点

  1. 👍 AI在编码方面不是更“聪明”,只是记忆更多,当前的AI编码测试基准不测试真实开发过程,应将AI与调试工具整合以提高其编码能力。
    • 支持理由:很多评论者以自己使用AI编码的经历为例,如给AI未见过的问题会花长时间猜测,添加打印语句就能快速发现问题,证明AI只是记忆多而非真正擅长编码,且当前测试方式存在缺陷。
    • 反对声音:部分评论者认为AI是经过更多更好数据训练、结构和训练方式不同使其在编码时更有效,并且推理在AI编码中也起着很大作用,并非只是记忆。
  2. 🔥 人类程序员与AI在编码上有相似之处,如人类程序员也存在靠记忆经验解决问题的情况,AI可类比初级程序员做些枯燥工作。
    • 正方观点:以开发者之间能力差异源于记忆更多已知问题及解决方案为例,类比AI所谓“更擅长编码”可能只是记忆更多已知问题,认为AI可做如自动编写大量XML代码等枯燥工作。
    • 反方观点:未明确提及反方观点,但从整体讨论来看,部分强调AI强大能力的人可能不认同将AI贬低为只能做枯燥工作。
  3. 💡 不同模型在编码场景下表现不同,受多种因素影响,如上下文窗口大小、提示遵循度、代码完成分数等。
    • 解释:部分评论者指出模型之间存在多种明显差异,这些差异会使得某些模型在特定的编码场景下比其他模型表现得更好,而原帖忽略了这些差异。

金句与有趣评论

  1. “😂 Seriously, try coding without print statements or debuggers (without AI, just you). You’d be fucking useless too. We’re out here expecting AI to magically divine what’s wrong with code while denying them the most basic tool every developer uses.”
    • 亮点:生动形象地指出人们在要求AI编码时却不给它基本的调试工具,就像自己编程没有打印语句或调试器一样无用,强调了调试工具对AI编码的重要性。
  2. “🤔 AI is not sentient yet, it doesn’t maintain a mental model of your projects needs, but if you know exactly what you want from it and can provide clear instructions, it’s a great tool.”
    • 亮点:明确指出AI目前并非有感知能力,不能构建项目需求的心理模型,但在使用者能明确需求并给予清晰指示时是很好的工具,准确概括了AI在编码中的工具属性及局限性。
  3. “👀 I have found AI models extremely useful for reducing tedium in coding AS LONG AS I give them very constrained problems + context + instructions.”
    • 亮点:阐述了在特定条件下(给予非常受限的问题、上下文和指令),AI模型对减少编码的单调工作非常有用,为有效利用AI进行编码提供了一种思路。

情感分析

总体情感倾向较为复杂,既有对原帖观点的强烈赞同,也有不少反对声音。主要分歧点在于AI是否只是记忆更多而非真正擅长编码,以及当前AI编码测试基准是否合理。赞同者多从自身使用AI编码时遇到的问题出发,如AI在没有调试工具时表现不佳等;反对者则更多从AI的训练、结构和推理能力等方面阐述AI的编码能力并非只是记忆的结果。

趋势与预测

  • 新兴话题:将原帖关于AI编码的观点拓展到其他领域,探讨在其他领域是否也存在类似的对AI评估错误的情况;还有如何更好地让AI与调试工具结合的具体方式,如向模型输入更多相关信息等。
  • 潜在影响:如果能正确认识AI编码能力并改进测试基准、让AI与调试工具更好结合,可能会提高AI在编码领域的实际应用效果,推动AI编码技术的发展;同时也可能影响人们对AI在其他领域能力评估的思考方式。

详细内容:

标题:关于 AI 编码的激烈讨论在 Reddit 上引发热议

在 Reddit 上,一篇题为“You’re all wrong about AI coding - it’s not about being ‘smarter’, you’re just not giving them basic fucking tools”的帖子吸引了众多目光。此帖指出,人们对 AI 编码的看法存在偏差,AI 并非更聪明,只是记住了更多内容。帖子获得了大量的点赞和评论,引发了关于 AI 编码能力、其与人类编程的比较、调试工具的重要性等多方面的热烈讨论。

讨论焦点与观点分析:

  • 有人认为 AI 模型在特定条件下对编码很有用,前提是给予其严格限定的问题、上下文和指令,且使用者要对问题领域有足够理解。
  • 有观点指出,像 Claude 3.5 Sonnet 等模型在某些方面表现出色,但不同模型在处理特定任务时存在差异。
  • 也有人强调,AI 目前并非通用智能,不能替代人类思考,使用时仍需明确的引导和约束。
  • 关于调试工具,多数人认为让 AI 能够获取调试信息对于提高其编码效果至关重要。

例如,有用户分享道:“作为一名在硅谷工作了 10 年的软件工程师,我亲身经历了技术行业的快速变革。在 2015 年,我所在的初创公司还在为基础设施烦恼,但到了 2020 年,我们已经完全依赖云服务。这种转变不仅提高了效率,还彻底改变了我们的工作方式和团队结构。”

讨论中的共识在于,AI 是编码过程中的有力辅助工具,但绝非全能,人类的指导和适当的调试手段不可或缺。

总之,这场关于 AI 编码的讨论充分展现了其复杂性和多样性,让人们对 AI 在编码领域的应用有了更深入的思考。