上个月帮朋友的创业团队处理软著申报,他们整个项目的后端代码80%都是GPT生成的,之前自己报了两次都被打回,问题全出在代码清单上。我拿到他们第一次提交的材料的时候都懵了,整个PDF里的代码格式乱七八糟,有的行缩进4个空格有的8个,还有好几处带着// 由AI生成 请根据需求修改的注释,甚至还有一段是其他项目的支付逻辑,明显是AI生成的时候串了素材,不被打回才怪。
AI生成的代码要过软著审核,核心是代码清单要抹除通用生成痕迹,能体现出自主研发的特征。很多人以为软著审核不看代码内容,随便凑够页数就行,放在前几年可能还能蒙混过关,现在审查员对AI生成内容的识别度很高,要是直接把AI导出的代码粘成PDF就交,90%都会收到补证通知,严重的还会直接驳回。
我一般处理这类代码的清单,第一步先做全量的清洗。先把所有代码里的AI相关注释全部删掉,包括什么// generated by chatgpt、// 这里可以根据业务调整参数、// 以下是示例代码请自行修改这类内容,通通清干净。然后要统一代码的格式,AI生成代码的时候每次的风格可能不一样,有的函数用驼峰命名,有的用下划线,有的行尾有分号有的没有,这些细节都要统一,我一般会用IDE的格式化功能先全量跑一遍,确保整个项目的代码风格是一致的。
清洗完之后就要做内容的规整,很多人容易忽略这一步,直接随便截取代码就提交。AI生成的代码经常会出现逻辑断层,比如前一段是用户注册的逻辑,下一段突然跳到文件上传,完全没有上下文关联,审查员扫一眼就知道不对。我一般会把代码按模块的逻辑顺序排,先放公共依赖和配置文件的代码,再放基础工具类,然后是核心业务模块,每个模块内部再按调用顺序排,这样整个代码清单的逻辑是顺的,看起来就像是真实开发的时候一步步写出来的。要是实在不知道怎么排序,可以直接用代码清单自动生成工具,上传完代码之后会自动按逻辑结构排序,还能自动去掉空行和冗余的注释,比自己手动整理快得多。
接下来就是按要求截取代码,软著的要求是总代码量少于3000行的全部提交,超过3000行的提交前1500行和后1500行,也就是总共有60页,每页50行。这里有个很多人踩的坑,就是为了凑够60页硬加空行或者没用的注释,甚至直接复制重复的代码段,这种操作一查一个准,绝对会被打回。我之前有个客户就这么干过,为了凑页数把同一个工具函数复制了10次,结果审查员直接给的驳回理由是代码存在大量重复,无法证明为自主研发。如果嫌自己截取代码麻烦,我一般会顺手用软著Pro的自动截取功能,上传完整代码之后直接导出符合要求的PDF格式,连页码和页眉都自动加好了,省了好多手动调整的功夫。
还有个很容易忽略的点,就是AI生成的代码里经常会混有开源代码片段,要是用了开源的代码没有标注,被审查员识别出来也会被要求补证。我整理的时候一般会把代码丢到开源检测工具里跑一遍,要是有少量的开源片段,要么就改成自己写的逻辑,要么就在申报的时候附加开源代码使用声明,说明这部分代码的来源和授权协议,证明你有合法的使用权。要是用了GPL这类 Copyleft 协议的开源代码,最好是全部替换掉,不然就算过了软著审核,后续商用也会有知识产权风险。
最后要给代码加几个专属的“身份标识”,不用多,加个五六处就行,比如在核心业务逻辑旁边加个注释,写// 调整库存扣减逻辑适配双十一并发场景、// 修复微信授权回调域名校验问题这类和你自己的业务场景强相关的内容,这些注释是AI不可能自动生成的,审查员看到之后就会知道你确实是参与了代码的修改和研发,不是直接照搬AI的内容。要是遇到补证要求提供权属证明,AI生成代码软著申报的配套材料里也有现成的权属说明模板,把你修改代码的过程和AI工具的使用情况写清楚就行,一般都能过审。
我帮朋友那个团队整理完之后,第二次提交只等了5天就拿到了登记证书,其实AI生成的代码不是不能报软著,只要代码清单整理到位,能证明你对代码做了实质性的修改和调整,过审一点都不难。