嗨,我在人工智能/大型语言模型(LLM)论坛上看到很多关于使用LLM进行编码(包括生成和排查代码问题)的讨论。人们通常是将其用于特定语言(例如Python、JAVA)吗?还是说它们适用于“任何”语言(包括脚本语言)?如果我想在“古老的计算机”(比如20世纪70年代末和80年代的8位和16位计算机)上使用它们,我能否调整一个模型使其理解BASIC或者C/C++(特别是考虑到在这些机器上的C语言需要了解当时的定制硬件)。我想了解如今这些模型在编程语言多样性方面的灵活性如何。(我也很好奇,约70B的模型是否是对编程有用的最低要求)
讨论总结
原帖询问AI用于编码时支持哪些语言,是讨论的主题。评论者们根据自身经验分享了不同编程语言在AI编码中的使用情况,包括常见和生僻语言、主流和古老语言。大家积极分享自己的观点,整体氛围较为和谐,充满技术交流的氛围。
主要观点
- 👍 常见语言使用人工智能编码效果更好
- 支持理由:多个评论者提及Python、Java等常见语言在AI编码中效果较好,因为模型可获取大量训练数据等。
- 反对声音:无。
- 🔥 编译语言在人工智能编码中有优势
- 正方观点:编译语言可收集编译器错误用于多轮提示再尝试,如Golang和Java效果较好。
- 反方观点:无。
- 💡 成熟的语言/框架使用人工智能编码效果更好
- 解释:有评论者认为越是成熟的语言或框架,使用人工智能进行编码时效果越好,如Python和JavaScript/Typescript通常能得到很好的结果。
- 🌟 AI在不同编程语言上的表现差异较大
- 解释:如在Python、JavaScript编程效果佳,在Rust语言中表现平平,在Swift使用人工智能编码效果不稳定等。
- 🤔 模型训练数据影响AI编码结果
- 解释:广泛使用的语言因数据量多结果更好,而更新频繁语言因数据量少导致效果差。
金句与有趣评论
- “😂 Avoid java (for many reasons 😂)”
- 亮点:简洁直接表达不适合用Java进行AI编码,但未详细说明原因,引起好奇。
- “🤔 The best language for AI is golang. It’s way way better than everything else, due to how simple and uniform the language is.”
- 亮点:提出Go语言在AI方面是最好的语言,并给出简单和一致性的理由。
- “👀 I have a 300 - 400 line Python script called “code_prompt_writer.py” where I will set a goal (I want to do X) and specify the files I think it needs and this script will generate a very long prompt”
- 亮点:详细介绍自己的Python脚本如何在AI编码中生成长提示。
- “💡 Basically, the more mainstream, popular, and the less its grammar changes over time, the better it should be.”
- 亮点:指出主流、流行且语法变化小的语言在AI编程中效果更好的影响因素。
- “😎 I use Julia and Python, both work very well.”
- 亮点:简单直接表明Julia和Python在AI编码方面效果好。
情感分析
总体情感倾向为积极探讨。主要分歧点较少,可能存在于对某些语言在AI编码适用性上的不同看法,如Java是否适合用于AI编码,但这也只是少数观点。整体大家都是基于自己的经验分享信息,没有激烈的争论,原因是大家主要关注在技术交流和分享上,目的是回答原帖的问题并互相交流编程相关经验。
趋势与预测
- 新兴话题:特定的代码生成数据集策略开发、小型特定应用模型的发展趋势。
- 潜在影响:对编程教育和开发效率可能有影响,例如开发出更好的数据集策略和小模型可能提高编程学习效率、减少开发中的错误。
详细内容:
标题:关于使用 AI 进行编码的热门讨论
在 Reddit 上,一则题为“‘I use AI for coding’ - which langauges are supported or work well?”的帖子引发了热烈的讨论。该帖提出了一系列有关使用大型语言模型(LLM)进行编码的问题,包括特定语言的支持情况、对古老计算机语言的适用性以及模型的灵活性等。此帖获得了众多关注,评论数众多。
讨论的焦点主要集中在不同语言与 AI 编码工具的适配性。有人指出,越常见的语言,如 Python、Java 等,往往能“开箱即用”地获得较好效果。例如,有用户分享:“我使用 Python 和 C#进行编码,效果良好。我认为 JavaScript 也不错。基本上越是主流和流行的语言,并且语法随时间变化越小,效果就应该越好。但可能还有更多因素。”
也有用户分享了自己独特的经历。比如,有用户使用了 300 - 400 行的 Python 脚本“code_prompt_writer.py”来生成提示,并将其用于 Claude 3.5 Sonnet(新)中,取得了不错的效果,并分享了相关链接:https://gist.github.com/thomasrice/4739593e7f43534ddfbf83599fa76b4f 。
对于一些较为小众或古老的语言,情况则有所不同。例如,有用户尝试用 ollama 生成 z80 汇编语言用于 CP/M 时遭遇了失败,指出对于这种非常古老的东西,必须使用经过适当训练或调整的模型。
在观点的碰撞中,存在一些共识。多数人认为流行语言在与 AI 编码工具结合时表现更优,这是因为它们在网络上有更多的训练数据。但也有人认为,即使是一些相对小众的语言,如 Excel VBA、Lua 等,LLM 也能提供很大的帮助。
然而,争议点也不少。例如,对于新的语言特性和框架,LLM 的表现往往不尽如人意。有人指出,在 Python 中,对于较新的框架或预览功能,大多数 LLM 会失败。还有人担心使用 LLM 生成的代码可能存在错误,尤其是在一些不太成熟或更新频繁的语言中。
特别有见地的观点如,有人认为编译型语言在与 AI 结合时,由于能在编译时捕获更多错误,效果可能更好。但也有人认为 Rust 由于语言变更多和方式多样,使得 LLM 难以得出解决方案。
总之,关于使用 AI 进行编码时语言的支持情况,Reddit 上的讨论丰富多样,既有普遍的共识,也存在不少争议和独特的见解,为我们深入理解这一话题提供了多维度的视角。
感谢您的耐心阅读!来选个表情,或者留个评论吧!