2025年夏季:与LLM协同编程的最新实践

本文探讨了如何利用Gemini 2.5 PRO等前沿大语言模型提升编程效率,包括代码审查、原型验证、技术探索等场景,并详细阐述了人机协作的最佳实践与注意事项。

2025年夏季:与LLM协同编程(更新篇)antirez 10小时前。53435次浏览。以Gemini 2.5 PRO为代表的前沿大语言模型凭借其广博的知识储备和秒级理解数千行代码的能力,正在成为程序员的能力倍增器。只要你能清晰描述问题,并适应与LLM的交互节奏,就能实现以下突破:
  1. 在代码触达用户前消灭缺陷:我在Redis向量集合实现中就验证了这点。虽然最终我都能自行修复所有bug,但Gemini/Claude的代码审查能立即消除大部分问题。

  2. 加速创意验证:让LLM快速编写可抛弃的测试代码,立即验证解决方案的性能表现和可行性。

  3. 开展结对设计:将你的直觉、经验和设计品味,与LLM内化的博士级知识相结合。虽然LLM有时会提出愚蠢方案,但也会闪现惊人洞见——你的价值就在于规避局部最优陷阱。

  4. 规范化的代码生成:在明确规范下让LLM完成部分代码编写。

  5. 跨界技术探索:比如用68000汇编编写Amiga演示程序时,可将LLM作为特定知识的外接模块。

一年半前我写过《2024年初的LLM与编程》,当时LLM已显实用价值,但这18个月的进步彻底改变了游戏规则。不过要充分发挥其效能,使用者需要具备特定素质并遵循最佳实践。

拒绝"氛围编程"

当前阶段,LLM是优秀的放大器,却是糟糕的独奏者。虽然它们能在严格监督下加速开发(我的做法是追求同等时间内产出更多/更好的代码),但面对复杂目标时,独立工作的LLM往往会产生冗余、脆弱且充满局部最优解的代码体系。日常实践让我坚信:人机协作才能实现最高质量。这需要两个关键前提:使用者必须具备出色的沟通能力,以及丰富的LLM交互经验。

提供完整上下文

当需要LLM协助实现或修复代码时,必须提供完整信息:

  • 相关论文
  • 目标代码库的完整上下文(尽可能全部)
  • 你对解决方案的全部认知,特别要包括:
    • 看似优秀实则欠佳的方案及其缺陷
    • 尚未完善的优质方案雏形
    • 代码必须遵守的约束条件和风格规范

选对LLM工具

编程任务应优先选用:

  • Gemini 2.5 PRO:语义理解更强,擅长发现复杂缺陷
  • Claude Opus 4:有时在新代码生成方面更优

关键原则:

  • 始终直接使用最先进的基座模型
  • 避免任何会分割上下文的RAG方案
  • 保持人工控制:手动在终端与LLM界面间传递代码

未来展望

尽管自主编程代理备受关注,但目前保持"人在循环中"仍能最大化开发效能。未来当AI足够成熟时,人类将专注于决策"做什么"和"怎么做"。现阶段建议定期测试代理能力边界,但多数时候保持主导地位。另外也要警惕因意识形态拒绝使用LLM而导致的技术落后——与LLM协作所需的技能体系本身就需要时间积累。或许正如古谚所云:“中庸之道才是美德”。

请启用JavaScript查看Disqus评论。

rss订阅 | twitter | 谷歌群组 | 旧版站点:

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计