回归基础:巧妙利用AI
作者jr conlin分享了他对大型语言模型(LLM)的思考,认为LLM虽是新工具,但应谨慎使用。他通过回顾传统的瀑布式软件开发流程,提出了LLM在系统不同阶段的潜在应用:在架构设计层面作为编辑器检查错误,在高级工程师层面辅助任务分配,而在初级开发层面则建议谨慎使用,以免阻碍新人成长并积累技术债务。
作者jr conlin在博客中详细阐述了他对大型语言模型(LLM)的看法。他坦言自己对LLM持有不少负面意见,认为当前的大规模语言模型在经济和生态上并不可持续,更像是亿万富翁们的短期逐利工具。但无论如何,LLM是一种新工具,如同台锯、车床或玻璃熔炉一样,使用时必须保持警惕,因为我们在完全掌握其能力和潜在危害之前,需要格外小心。
文章回顾了传统的瀑布式开发流程。在作者早年参与的一个生命攸关的关键系统中,系统架构师们花费六个月时间,采用MILSPEC-20格式详细定义了系统的每个输入、动作和输出,甚至具体到按钮按下和界面结果。这些需求文档经过团队共识后,被打包分发给开发团队。高级工程师带领初级开发者逐项实现,初级开发者在指导下逐步成长,最终成为高级工程师或架构师。这种模式下,文档清晰准确,变更影响一目了然。
有趣的是,作者的一位系统工程师朋友正在利用Claude设计系统,他所编写的设计文档实际上就是一份需求文档,与90年代的MILSPEC-20文档如出一辙。这让作者意识到,LLM在系统工程中可以扮演编辑的角色:在架构层面,LLM能够检查遗漏或冲突;在高级工程层面,它可以确保任务分配合理,避免冗余;但在初级开发层面,作者强烈建议不要过度依赖LLM直接生成代码,因为这会剥夺初级开发者的学习机会,并累积大量的技术债务。
作者承认,在现代职场中,注重短期成本优化的管理层可能不会采纳这种理性建议。但无论如何,LLM的正确使用方式应当是辅助人类决策,而非完全替代。最终,作者总结道:如同使用危险工具需要防护措施,使用LLM也不能掉以轻心,否则将付出高昂的代价。