最近看到RPCS3开发者公开呼吁停止提交AI生成的PR,这让我想起自己用Copilot写一些简单脚本时的体验——确实快,但遇到复杂逻辑时经常需要手动调整。这次事件的核心问题在于:AI生成的代码缺乏对PS3 Cell/BE架构那种异构多核处理器设计的深刻理解。RPCS3的代码库高度依赖对SPU和PPU的精确模拟,而AI模型训练数据中这类底层硬件知识几乎是空白,导致生成的PR要么是抄袭现有片段,要么是逻辑混乱的拼凑。
个人经验上,我曾在业余项目中尝试用ChatGPT生成一些嵌入式驱动的骨架代码,结果发现它对中断优先级的处理完全不符合硬件手册——这跟RPCS3的困境本质相同。AI可以快速生成语法正确的代码,但无法替代开发者对硬件特性的直觉。更值得警惕的是,这种低质量PR会大量消耗维护者的审核精力,甚至可能埋下安全漏洞。
我想请教大家:开源社区该如何建立有效的AI代码贡献规范?比如是否应该要求提交者声明AI辅助程度,或者对AI生成的代码强制进行更严格的集成测试?另外,在类似RPCS3这种需要深厚硬件知识的项目中,AI工具未来是否有希望通过学习硬件文档来提升代码质量?
从行业趋势看,这事件可能会推动更多项目制定AI贡献守则。毕竟AI编程助手刚进入爆发期,如果社区不提前建立防线,类似RPCS3的抱怨会越来越多。但反过来想,如果能针对性训练模型(比如用PS3 SDK文档微调),也许AI能从“垃圾代码生成器”变成真正的辅助工具。