首页 > 生活学习 > 生活学习 > 32%代码由AI生成!工行智能研发辅助系统大揭秘

32%代码由AI生成!工行智能研发辅助系统大揭秘

发布时间:2024-09-13 17:12:14来源: 13041198719
随着人工智能技术的飞速发展,大模型已经成为推动软件行业生产力解放、提升研发质效的重要力量。在大模型技术的加持下,头部厂商如微软 GitHub Copilot 等,已在代码生成、代码解释、单元测试生成等方向陆续涌现出一系列成熟应用。中国工商银行软件开发中心(简称工行软开中心)积极拥抱这一变革,致力于建设以大模型为核心的智能研发体系,覆盖软件研发全流程,提高研发质效,加快产品迭代。

智能研发体系规划
工行软开发中心通过探索性研究的方式构建各阶段的辅助能力,将大模型应用于需求设计、代码编写、代码复核、测试辅助、交付发布的研发全流程,智能研发体系建设规划如下:

图:工行软开发中心智能研发体系建设规划
1、 需求设计,应用大型语言模型的自然语言理解能力,打造研发设计助手,辅助生成需求用例和程序设计文档。需求编写阶段,基于用例中的业务流程业务规则关键词,通过检索相似历史需求,结合当前需求背景,自动拼装提示词,实现需求业务规则的续写;程序设计阶段,通过向大模型传递需求背景和设计模块示例,联动检索相似历史设计,自动拼装提示词,实现详细设计内容的续写功能。
2、代码补全,基于大型语言模型代码推理生成能力,打造智能编码助手,支持包括Java、Python、JavaScript等多种编程语言。该助手能够深入理解代码的语义和结构,并根据不同语言和项目需求提供精确的自动补全建议。通过IDE插件,智能上下文分析能力能够根据当前代码环境提供更精确的补全选项,从而显著提高编码效率和准确性,帮助开发者减少编码错误并提升代码质量。
3、代码检查,基于大型语言模型代码推理能力,打造智能代码检查助手。通过大模型和Sonar规则对代码进行检查,识别问题类别和严重程度,并通过大模型针对代码问题给出代码修复方案。编码阶段,利用IDE插件实现代码问题检测、漏洞检测、安全规范检测等能力,并直接给出修复说明;代码复核阶段,通过将大模型代码检查能力集成到代码复核平台,智能提示代码问题及对应问题修复方案,帮忙复核人员发现难以发现的代码问题,提升代码复核效率;流水线扫描阶段,利用规则对代码进行全量扫描,再用大模型对结果进行检查解读,形成完整的代码检查结果和明确的修复方式。
4、单测生成,基于大型语言模型的代码推理生成能力,打造单元测试助手。通过IDE插件获取目标代码的工程上下文信息,涵盖如模拟(Mock)框架、被测代码类所依赖的类。在此基础上,利用提示词优化大模型交互,发挥大模型代码理解能力。在分析被测方法的代码结构时,涉及代码逻辑、边界条件、异常处理等方面,从而生成单元测试用例数据。依据项目工程的框架依赖信息,生成依赖类的模拟行为用例,最终构建完整的单元测试方法用例。
5、测试辅助,基于大型语言模型的自然语言理解和代码生成能力,打造智能测试助手。在测试案例领域,通过向大型语言模型传递设计文档中涉及的处理逻辑和技术要点等信息,结合历史测试信息库中的实际用例,使得大型语言模型能够生成测试用例数据。此外,依托测试用例数据及测试框架,大型语言模型能够自动生成可执行的测试脚本。在测试资产管理方面,利用大型语言模型的理解、提炼与优化能力,对测试资产内容进行自动评估、治理与优化,从而提高整体测试资产的质量水平。
6、智能问答,应用大模型强大的知识检索和整合能力,打造研发智能问答助手,能够迅速领会开发人员提出的问题,并依据其丰富的知识库和代码库,提供问题解答、代码示例以及最佳实践。在私有化知识的基础上,例如编码规范、技术部件、技术文档等,应用RAG技术与模型微调训练,更好地适应工商银行软件开发中心的研发场景。方案有效解决了银行研发环境与互联网环境之间的隔阂,使得开发人员能够方便地找到标准实现和问题解决方法,从而大大减少了开发者的问题搜索时间,据统计单次问题问答可平均为开发者节省5分钟。

智能研发体系实践经验
业界基座大模型大多基于Github、GitLab等平台的开源项目代码进行微调训练,在通用编码领域能够取得较好的效果,但是面向私有化研发场景特别是面向金融行业的编码场景并不能很好地适配,在计算金额场景未能有效处理精度,在面向业务逻辑编码场景未能理解业务知识上下文,比如生成单元测试行覆盖率不足。为支撑智能研发体系在工行软件开发中心落地运营,增强大模型在私有场景下的适配能力,分别组建了智能研发运营团队负责运营数据分析及模型测评,高级研发专家团队负责模型微调训练语料标注,大模型微调训练团队负责模型微调训练,围绕标注、微调、测评的这个模型迭代机制,三个团队协作不断推进模型优化增强。
1、积累私有化研发数字资产
积累私有化研发数字资产用于模型微调训练和RAG知识库增强,包括业务领域优质代码、技术领域代码、单元测试代码、编码规范、技术文档等。数字资产由高级研发专家严格审查把关,保证模型语料质量,保障模型微调训练质量。以大模型代码补全能力为例,面向各研发部门收集优质业务领域代码、技术构件示例代码,由高级研发专家进行严格的人工审核标注,包括剔除或者改写低质量及错误的代码,保留代码中的有用注释,并剔除无关或噪音注释。为了解决人工标注工作量大、耗时长的痛点,打造基于语法树的静态分析和专用大模型,针对代码语料进行打分标注,自动提取代码片段的上下文信息,包括前后文、函数调用关系,降低人工标注工作量。
2、建立大模型微调训练机制
对标代码编写、代码检查、单侧生成等智能研发能力,利用高质量私有化研发数字资产,提升编码辅助能力。组建大模型微调训练团队,基于大模型运行效果、开发一线反馈的问题需求,结合研发数字资产迭代情况,制定大模型微调训练目标和训练计划。根据具体模型优化能力选择合适的微调策略和微调算法,设定合适的微调参数,选择合适的训练语料,并定义具体的评估指标。模型微调训练后,大模型微调训练工程师评估验证模型性能,并进一步优化模型,通过模型蒸馏,保持模型性能的同时具有更低的计算复杂度和存储空间需求,通过模型剪枝,有效地减少模型的大小和计算复杂度,从而提高模型推理速度。
3、构建模型微调测评体系
为保障研发模型微调训练效果,建设大模型基础能力测评、研发能力测评、用户效果测评三层测评体系,实现逐级测评准入。
  • 基础能力测评针对智能研发场景,聚焦代码编写、语义理解、数学运算、逻辑思维四大基础能力,以业界标准测评集及框架实现测评,比对基座模型及业界模型指标。
  • 研发力能测评针对工行软开发中心研发场景,聚焦智能研发能力,建立私有化测评集,覆盖业务及技术领域案例,通过自动+人工的方式完成测评量化评估。
  • 用户试点测评针对真实研发场景,灰度发布模型版本进行用户试点评估,通过埋点数据形成试点运营指标,通过用户试点测评后正式进行模型版本发布。

生活学习更多>>

重庆市秀山自治县事业单位面向2024年服务期满且考核合格“三支一扶”人员 招聘工作人员公告(4人) 2024年岳阳市市直事业单位选调工作人员公告(42人) 2025年湖南省选调生选拔公告(1200人) 2024年湖北铁道运输职业学院(武汉铁路技师学院)专项招聘工作人员公告(4人) 2024年马鞍山当涂县人民医院周转池编制招聘工作人员公告 2024年金华市兰溪市第三批人才直通车(卫健系统)人才引进公告 2024年丽江市人民医院招聘编外工作人员公告 2025年台州市玉环市卫健系统面向普通高校招聘卫技人才公告 售价拉低至10万级,特斯拉新车真的很可怕吗? 旗下日产4S店被员工扯条幅,广汇汽车的“雷”还在发酵中 9月国内车市:燃油车同比降22%,新能源车涨幅达50.9% 新能源车该不该进地下车库,广东深圳这次做出了表率 荣威D7 DMH世界冠军版上市,一口价9.98万起,续航是看点 比亚迪秦L EV谍照来了,与混动版差异较大,依旧爆款预定 CCRT选车指南权威认证!零跑C01真有这么香? 比亚迪夏内饰手稿曝光,配副驾娱乐屏,年内上市 荣耀宣布清仓,100W闪充+OIS光学防抖,16GB+512GB跌至1988元 一加手表2宝可梦大集结联名礼盒上线,1479元 Q3全球最畅销手机TOP10丨小米15销量新高 TCL电视第三季度全球销量大涨20%,TCL电子到底是怎么做到的? 东风汽车商城黄陂店将于年内开业 五菱又出神车,续航510km带快充,空间大颜值高,顶配才卖9万多! 长安suv哪款车比较好 捷豹路虎进博会七年“全勤”,更是产品业绩企业责任“双优生” 本田:pcx与125La将迎来更新,传说中的佛沙150却没有消息。 丰田全新亚洲龙:配2.0L+ CVT 无级变速,内置8155P芯片,值得买吗 全新宝马 M5:插电混动驱动的豪华之选,能否改写高性能轿车格局? 奥迪新品牌AUDI发布首款概念车,没有四环LOGO的AUDI,还是奥迪吗 苹果小钢炮首测,揭秘Mac mini的新奇玩法与性价比 崛起吧,河北荣耀!自制笔记本开启全新科技时代!