首页 > 原创文化 > 原创文化 > 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、构建模型微调测评体系
为保障研发模型微调训练效果,建设大模型基础能力测评、研发能力测评、用户效果测评三层测评体系,实现逐级测评准入。
  • 基础能力测评针对智能研发场景,聚焦代码编写、语义理解、数学运算、逻辑思维四大基础能力,以业界标准测评集及框架实现测评,比对基座模型及业界模型指标。
  • 研发力能测评针对工行软开发中心研发场景,聚焦智能研发能力,建立私有化测评集,覆盖业务及技术领域案例,通过自动+人工的方式完成测评量化评估。
  • 用户试点测评针对真实研发场景,灰度发布模型版本进行用户试点评估,通过埋点数据形成试点运营指标,通过用户试点测评后正式进行模型版本发布。

原创文化更多>>

德国发布电动车创新指数!吉利第一,比亚迪第三! 闪充·大空间·新乐趣:方程豹钛7EV闪充版上海上市 豹5/豹8闪充版上市,但皮卡能不能顶住压力? 试驾奔驰EQS:古典豪华纯电遗珠,销量不能代表产品力 主打低成本城市物流,零跑T03推出货运版本秒变“拉货神器” 4月轻卡表现稳健:远程增势猛!福田3.7万断层领先!长安同比领涨 4月MPV销量榜出炉 岚图梦想家夺冠 魏牌高山冲进前三甲 大众纯电高尔夫推迟至2030年前后上市,SSP平台延期成主因 埃安N60以“128项全系标配”重新定义10万级纯电SUV价值标准的有力宣言 法式大7座SUV真香!标致 5008 智能混动深度试驾! 华为出技术,江淮生产?玛莎拉蒂电车将国产,归属尊界 当别人还在卷充电峰值、卷增程油箱、卷电池容量时,蔚来已经把“补能确定性”变成了销量 吉利银河星耀7 5月22日上市!配雷神AI电混2.0,预售11.28万元起 吉普发布全新牧马人美国250周年特别版,自带美国队长盾牌,这才是他的新座驾 越野圈地震!方程豹豹 8 / 豹 5 闪充版上市,3 轮能开、3 分钟换胎! 吉利银河TT定位中大型轿车,采用纯电动力,车长为4999mm,轴距为2920mm 单月破13万同比大涨70.9%,比亚迪全球化实力全面爆发 全国一口价10.99万元起,和起亚新狮铂拓界纵享初夏好时光 smart 全新一代精灵1号 用激光雷达让小车也配高阶智驾 不跟风、不妥协:212如何用“野”字对抗行业的“卷”? 新款红旗H5和HQ9将于5月20日上市。对心现款车型新款会在内饰部分进行一些升级调整 三大车企一季度财报横评:比亚迪在换挡,吉利在加速,上汽在磨合 订单10万台!30万的大唐“一夜爆红”,越贵的比亚迪越不愁卖? 限时售价8.79万元 配备专属徽章 吉利博越十周年冠军版上市 “8系、9系”扎堆申报,集体冲击高端旗舰 科技比亚迪:以首创之姿筑不可超越之基 1-3月硬派越野销量榜 仅一款销量过万 普拉多第六 销量六连冠,星光730凭什么成为家庭MPV“满分座驾”? 比起“谁更智能”,一汽奥迪强调“把驾驶感抢回来” 15.08万元起!领汇汽车正式推出C级闪充商务轿车e9