政策动态 软著Pro编辑部

用AI生成的代码申报软著?这份代码清单整理指南帮你少走弯路

不少朋友用AI写代码后申报软著总卡在代码清单环节,结合我几十次申报的踩坑经验,聊聊AI生成代码做清单的合规要求和整理技巧。

195 次阅读 来源:网络整理

上个月我帮团队报三个用AI生成核心代码的小程序软著,前两份提交上去没三天就被打回,理由写的是“代码清单不符合原创性要求”,我翻来覆去查了半天才找到问题出在AI留下的暗戳戳的标记上。之前我一直觉得代码清单就是把所有代码拷进去凑够60页就行,那次踩坑才知道,AI生成的代码和纯人工写的代码整理逻辑完全不一样,稍不注意就会踩雷。

我当时特意翻了好多审查规范,还问了之前在版权中心实习过的学弟,才搞清楚现在对AI生成代码的软著申报要求,首先是代码本身得是你或者团队主导研发的,AI只是辅助工具,所以代码里绝对不能出现任何能证明是AI直接生成的标识,比如“以下代码由大模型生成”“本功能实现逻辑由ChatGPT提供”这类注释,哪怕是AI自动加的小水印、隐含的特殊字符序列,都要清干净。我第一次被打回就是因为有三段代码的注释里留了AI生成的标记,审查员一眼就看出来了。

除了清标识,最麻烦的就是降重。AI生成代码的时候特别喜欢复用通用片段,比如我那三个小程序里都有用户登录的功能,AI写的请求封装逻辑相似度高达90%,要是直接把三份代码都交上去,肯定会被判定为雷同,甚至会被认为是抄袭。我一开始是手动改,把变量名换了,把部分逻辑的顺序调整了,比如本来是先验证手机号再发请求,改成先判断请求环境再验证手机号,改了小半天,还是怕有遗漏,后来查规范的时候看到软著代码清单规范里提到可以用工具先做清洗,我就抱着试试的心态用了软著Pro的AI代码清洗功能,一键就能把冗余注释、重复片段都识别出来,还能给出修改建议,省了我至少两天的功夫,最后三份代码的重复率都降到了20%以下,提交之后再也没因为雷同的问题被打回。

整理代码清单的具体步骤我也摸出了一套固定流程,首先是先把所有和申报软件相关的代码全部汇总,去掉测试文件、临时文件、第三方依赖库的代码,这些都不需要放进清单里,放了反而会增加出问题的概率。然后是逐行排查所有注释,删掉所有和AI相关的内容,删掉没用的调试注释,保留正常的功能性注释就行,比如“// 验证用户输入的手机号格式”这种注释留着反而能证明你对代码逻辑有把控,不用全删。

接下来是调整代码的重复率,要是同一个功能里有大段重复的代码,要么合并成公共函数,要么调整逻辑顺序、变量名、注释内容,尽量把单份代码的重复率降到30%以下,要是拿不准的话,可以先做软著代码相似度检测,没问题了再往下走。然后是排版,要求是每页50行,前后各30页,总共60页,空行不能超过连续两行,也不能为了凑页数故意加大量没用的空行或者注释,要是代码总量不够60页的话,可以合理补充功能性注释,或者把缩进调整到统一的2空格,我上次有个小工具代码才1300多行,就是靠补合理的注释刚好凑够60页,提交之后也没被说注水。

还有几个我身边人踩过的坑得提一下,绝对不要直接让AI生成整份代码清单,我同事之前图省事,让GPT直接生成60页符合要求的代码清单,结果里面混了好多开源项目的代码片段,还有和他们系统完全不相关的功能代码,提交之后直接被驳回,还进了重点审查名单,本来半个月能下证的,拖了两个多月才搞定。还有不要为了降重乱改代码逻辑,我之前有个朋友把AI生成的代码改得运行不起来,审查员要求补运行演示视频,他又花了一周改bug,耽误了项目投标的时间。另外代码清单里的文件名最好和你申报的软件功能对应,比如你申报的是“门店进销存管理系统”,文件名最好是inventory_manage.py、store_query.js这类,不要出现test.html、demo.js这种测试文件的名字,不然很容易被质疑代码的真实性。

上周我那三个软著都顺利下证了,现在团队里所有用AI辅助开发的项目,上线前都会先按这个流程整理一遍代码清单,省得后面申报的时候返工,比之前的效率高了至少三倍。其实AI生成的代码申报软著根本没那么难,只要把该清的标识清掉,把重复率降到合理范围,按要求排版,基本都能顺利过审,不用太担心。

赞助商内容