一种基于大模型的代码评审助手的构建方法及系统与流程
本发明涉及人工代码评审领域,尤其涉及一种基于大模型的代码评审助手的构建方法及系统。
背景技术:
1、程序开发常在内网进行,代码托管在内网git服务上。提交后的人工代码评审存在时效不均、标准不一致、与项目组规范脱节等问题。大语言模型具备对自然语言规则与多语言源码的理解能力,可与自动化流水线结合,在提交后对内网可见的变更进行规则化审查。同时,内网与互联网隔离,模型能力或规则更新需经外网合并系统测试环境(sit)验证后再同步至内网,形成“外网验证—内网落地”的部署约束。
2、现有技术的方案:
3、1、人工评审:依赖评审人经验,与git提交异步,难以与每条提交一一对应、多轮跟踪。
4、2、基于静态分析工具的规则检查:针对语法、部分缺陷模式有效,但难以覆盖“项目组自然语言规范”“跨文件意图”等需语义理解的条目。
5、3、公网saas代码评审或ai评审:依赖外网api与代码出域,数据安全性和真实性不可控。
6、现有技术的缺点:
7、1、内网环境下难以安全、一致地利用大模型能力完成与提交绑定的评审。
8、2、各团队编程语言、规范不同,单一通用规则无法适配,缺乏可装载的“规则+语言”技能机制。
9、3、评审不通过后的反馈渠道未与git作者信息自动关联,人工找人不利于闭环。
10、4、缺乏对“不通过—修改—再评”多轮过程的统一状态管理与可审计统计。
11、5、缺少按自然月、固定时点的汇总分析,不利于研发质量治理。
技术实现思路
1、鉴于上述问题,提出了本发明以便提供克服上述问题或者至少部分地解决上述问题的一种基于大模型的代码评审助手的构建方法及系统。
2、根据本发明的一个方面,提供了一种基于大模型的代码评审助手的构建方法,所述构建方法包括:
3、开发人员向内网git托管服务push提交;
4、内网流水线触发评审任务,获取本次推送涉及文件列表及增删改内容;
5、根据仓库、分支或配置文件映射到所属项目组,加载所述项目组对应的评审规则文本、适用语言列表及skills文件;
6、大模型评审引擎在内网部署的推理服务或经批准的内网模型网关上,并采用不通过通知与作者邮箱解析算法;
7、进行多轮评审直至通过;
8、进行excel统计与月度总结。
9、可选的,所述开发人员向内网git托管服务push提交具体包括:外网对同一产品线的合并结果先进入sit,验证通过后经受控同步进入内网同源或镜像仓库。
10、可选的,所述内网流水线触发评审任务,获取本次推送涉及文件列表及增删改内容具体包括:
11、内网git服务提供api或runner只读凭据;
12、变更提取在内网执行,保证代码不出域;
13、外网sit仅用于验证合并与助手版本/规则包;
14、通过后通过白名单同步通道将镜像提交或制品同步至内网,内网侧仍以push事件或镜像更新事件触发与内网仓库一致的diff提取逻辑。
15、可选的,所述根据仓库、分支或配置文件映射到所属项目组,加载所述项目组对应的评审规则文本、适用语言列表及skills文件具体包括:
16、在仓库根目录或组织级配置中维护映射表:仓库/分支/标签→团队标识→规则版本号;
17、skills以文件形式存放,内容包括:适用语言、命名与风格约束、安全红线、性能注意点、输出json schema;
18、装载步骤:解析配置→校验skills语法与版本→与当次变更语言类型求交→合并为最终prompt附件。
19、多语言仓库可按文件扩展名拆分多个子任务并行调用模型,再合并判定。
20、可选的,所述大模型评审引擎在内网部署的推理服务或经批准的内网模型网关上,并采用不通过通知与作者邮箱解析算法具体包括:
21、大模型评审引擎在内网部署的推理服务或经批准的内网模型网关上,将“变更diff+规则+skills”组装为提示,调用模型生成结构化结果;
22、根据规则定义得到布尔型通过结论;
23、若不通过:作者邮箱解析单元读取提交author信息;邮件发送单元将评审摘要或链接发送至解析得到的地址。
24、可选的,所述进行多轮评审直至通过具体包括:
25、开发者修改后再次push,将任务与前一状态关联,执行二次及后续评审,直至通过或达到策略上限。
26、可选的,所述开发者修改后再次push,将任务与前一状态关联,执行二次及后续评审,直至通过或达到策略上限具体包括:
27、以业务评审单或合并请求标识+目标分支为维度维护状态机:
28、待评→不通过→已修复待复评→…→通过;
29、每次push若落在同一评审单上,评审轮次计数器加一;通过时关闭单据;
30、当结论为不通过或“阻断项变化”时发送邮件。
31、可选的,所述进行excel统计与月度总结具体包括:
32、每次评审结束,向excel追加一行元数据记录,不强制写入完整评审长文本以满足存储与合规需求;
33、使用调度器在每月固定时间读取当月累计表,生成汇总视图:各作者不通过次数最大/最小、修复轮次最大/最小,并输出新表或同表新sheet。
34、可选的,所述每次评审结束,向excel追加一行元数据记录,不强制写入完整评审长文本以满足存储与合规需求具体包括:
35、每次评审写入字段示例:评审时间、仓库、分支、提交sha、作者原始字符串、解析后邮箱、团队、语言、通过/不通过、轮次序号、阻断项数量、通知是否成功;
36、月度任务:定时任务触发后,筛选当月记录;
37、按解析后邮箱或工号主键聚合:不通过次数;通过次数;修复轮次分布;
38、输出排名:不通过最多/最少、修复轮次最多/最少。
39、本发明还提供了一种基于大模型的代码评审助手的构建系统,应用上述所述的一种基于大模型的代码评审助手的构建方法,所述构建系统包括:
40、开发人员向内网git托管服务push提交;
41、内外网与变更获取模块,内网流水线触发评审任务,获取本次推送涉及文件列表及增删改内容;
42、规则与技能装载模块,用于根据仓库、分支或配置文件映射到所属项目组,加载所述项目组对应的评审规则文本、适用语言列表及skills文件;
43、结果判定模块,用于大模型评审引擎在内网部署的推理服务或经批准的内网模型网关上,并采用不通过通知与作者邮箱解析算法;
44、迭代评审调度模块,用于进行多轮评审直至通过;
45、统计持久化模块,用于进行excel统计与月度总结。
46、本发明提供的一种基于大模型的代码评审助手的构建方法及系统,所述构建方法包括:开发人员向内网git托管服务push提交;内网流水线触发评审任务,获取本次推送涉及文件列表及增删改内容;根据仓库、分支或配置文件映射到所属项目组,加载所述项目组对应的评审规则文本、适用语言列表及skills文件;大模型评审引擎在内网部署的推理服务或经批准的内网模型网关上,并采用不通过通知与作者邮箱解析算法;进行多轮评审直至通过;进行excel统计与月度总结。构建一套从git变更获取、按团队规则与大模型技能评审、不通过则按解析规则发邮件、多轮直至通过、全过程元数据统计并周期性汇总的代码评审助手技术方案,提升规范落地率与过程可追溯性。
47、上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com