请帮助一位老程序员理清当前基于大语言模型(LLM)的软件栈这个迷宫。我确定:1. 我不会使用Claude或任何在线大语言模型。仅使用足够小以便能为上下文留出足够空间的本地模型(例如Qwen2.5 Coder 14B)。2. 我需要一个能将整个项目作为上下文提供给大语言模型的工具。3. 我知道如何编程,但想要使用大语言模型来做样板性的工作,而不是完全控制一个项目。4. 最好是开源软件(FOSS)。5. 最好集成到一个可靠的集成开发环境(IDE)中,而不是独立的。
讨论总结
原帖是一位老程序员寻求在软件开发中使用本地大型语言模型(LLM)的相关建议,列出了自己的一些要求如不使用在线LLM、希望将整个项目作为模型的上下文等。评论者们从各自的经验出发,分享了关于本地LLM在软件开发中的使用情况。有的推荐了特定的模型如qwq32b、Phi 4等,有的讲述了自己使用本地LLM或在线LLM的体验,还有的针对原帖中的一些要求提出质疑或给出改进建议,总体氛围较为理性,大家都在分享自己的经验和见解。
主要观点
- 👍 在旧有代码库中,较小模型理解现有语义较困难,较大模型跨项目时会出问题。
- 支持理由:评论者根据自己的使用经验得出此结论。
- 反对声音:无。
- 🔥 整个项目作为LLM的上下文可能使模型不堪重负。
- 正方观点:模型处理能力有限,全部项目内容可能过多。
- 反方观点:无。
- 💡 Qwen - 2.5 - coder 7b适合处理简单和重复性工作。
- 支持理由:评论者亲自使用发现该模型在无网络时处理简单工作效果不错。
- 反对声音:无。
- 🤔 本地模型才刚起步,代码质量差。
- 支持理由:目前技术发展现状表明本地模型存在较多问题。
- 反对声音:无。
- 😎 小于32B模型对基本编码和语法外的事用处不大。
- 支持理由:评论者在实际使用中的体会。
- 反对声音:无。
金句与有趣评论
- “😂 小模型能生成新建代码没问题,但理解现有语义在上下文和模型能力方面要求很高。”
- 亮点:指出小模型在处理既有代码语义理解上的难点。
- “🤔 工作流程基本上就像配对,我作为导演,模型作为键盘手,模型键盘手非常初级,有时出奇地聪明,但大多数时候无知且需要指导,但最终仍然节省工作。”
- 亮点:形象地描述了人与模型合作的工作模式。
- “👀 Entire projects can be overwhelming even for the bot.”
- 亮点:强调项目整体作为模型上下文的不合理性。
- “😏 对于小型重构或小调整有几个小模型,如果你能试试qwq32b。”
- 亮点:推荐了适合小型工作的模型。
- “😎 为何要忍受本地模型糟糕的代码质量呢?”
- 亮点:直接指出本地模型的代码质量问题。
情感分析
总体情感倾向比较中立。主要分歧点在于本地LLM是否适合软件开发。支持使用本地LLM的人会分享自己使用特定本地模型的较好体验,推荐一些自己认为好用的本地模型;反对使用本地LLM的人则指出本地模型目前存在的各种问题,如代码质量差、需要强大服务器等,更倾向于推荐在线模型。
趋势与预测
- 新兴话题:在特定设备(如GTX 5080等)上训练本地LLM以达到与在线模型相当或更好的编码能力。
- 潜在影响:如果能够解决本地LLM在软件开发中的诸多问题,如代码质量、模型理解能力等,可能会改变软件开发的流程和效率,使更多程序员愿意采用本地LLM进行开发,减少对在线模型的依赖。
详细内容:
《探讨本地 LLM 在软件开发中的应用现状》
在 Reddit 上,一篇题为“ What’s the status of using a local LLM for software development? ”的帖子引发了热烈讨论。该帖获得了众多关注,评论众多。原帖中,一位老程序员表示自己不会使用 Claude 或任何在线 LLM,只想用小型的本地模型,如 Qwen2.5 Coder 14B,且需要能将整个项目作为上下文输入给 LLM 的工具,希望它能处理样板工作,同时最好是开源且能集成到可靠的 IDE 中。
讨论的焦点主要集中在本地 LLM 模型的实用性和性能方面。有人认为 FWIW:对于非平凡的棕地代码库,能发挥作用的最小模型是 qwen coder 32b,有 32k 上下文和 64gb vram 配置。但也有人表示较小的模型会带来更多问题,超过了节省样板工作所节省的时间。
有用户分享道:“Cline 集成到 vscodium 还不错。我在一个 3 列视图中工作,两列用于代码,一列用于与 cline 的对话。我花了一点时间通过终端使用 aider,这个周末将启动 goose。” 还有用户提到:“我正在权衡购买更大配置的选择,因为我已经尝到了能做到的事情的甜头。”
有趣的观点如有人认为 aider.chat 是目前的黄金标准。也有人表示整个项目对于 LLM 来说可能会不堪重负,Aider 的 repomap 功能试图给 LLM 提供项目的概述,结果会因情况而异。
关于本地模型的选择,有人认为 Qwen-2.5-coder 7b 适用于简单或重复的工作。也有人提到 Phi 4 虽小但能力出众,且有 MIT 许可。
然而,也有不少人认为目前本地模型还不够成熟。比如有人指出,对于处理 200k 上下文和 Claude 的脚本问题,本地模型还无法胜任,运行 72b 模型都存在困难。还有人认为 Claude (带光标)比本地模型好 10 到 100 倍。
总之,关于本地 LLM 在软件开发中的应用,大家看法不一,仍存在诸多争议和讨论空间。是继续等待本地模型的发展,还是选择现有的在线服务,这是开发者们需要思考的问题。
感谢您的耐心阅读!来选个表情,或者留个评论吧!