ChatGPT在辅助编程及运维方面的探索-大模型在辅助编程及运维方面的探索_第1页
ChatGPT在辅助编程及运维方面的探索-大模型在辅助编程及运维方面的探索_第2页
ChatGPT在辅助编程及运维方面的探索-大模型在辅助编程及运维方面的探索_第3页
ChatGPT在辅助编程及运维方面的探索-大模型在辅助编程及运维方面的探索_第4页
ChatGPT在辅助编程及运维方面的探索-大模型在辅助编程及运维方面的探索_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

大模型在辅助编程及运维方面的探索产险信息技术部李岩峰、王赫、徐建超、舒勇、黄达洋一、大模型介绍大模型通常指具有庞大参数量(通常以数亿或数十亿计经过大量数据进行预训练的深度学习模型。这些模型能够捕捉和理解人类语言的复杂,具有强大的生成与理解能力。以Transformer架构为基础,增强了模型在处理长序列任务时的效率和效果。极大地体现了自然语言处理(NLP)领域的显著进步。大模型通过无监督学习进行大规模的语言建模预训练,使其具备强大的语言生成(LanguageGeneration)和理解(LanguageComprehension)能力。在预训练阶段,模型利用海量文本数据学习语言的语法、语义和世界知识,形成丰富的词向量表示(WordEmbeddings)和上下文关系映射。随后,在微调阶段(Fine-Tuning通过监督学习,模型能够在特定任务数据的指导下进一步优化性能,达到在多个下游任务中表现卓越的能力。此外,大模型还引入了一系列安全和伦理措施,包括偏差校正、对抗性示例训练等,以减少潜在的滥用风险,确保模型在实际应用中的可靠性和安全性。大模型的推出和不断迭代,无疑为自然语言处理技术的发展注入了新的动力,为各行各业的智能应用和创新拓展了更为广阔的前景。二、辅助编程1、辅助编程介绍辅助编程(AI-assistedcoding)是一种通过生成式预训练Transformer模型辅助软件开发的新兴技术。该技术利用预训练模型在自然语言处理(NLP)中的强大能力,通过理解和生成代码,为开发者提供高效的编码支持。2、阳光保险在辅助编程应用现状目前阳光保险已发布最新GPT辅助编程工具常青藤版本V1.5,目前已在产、寿、集团、数科等公司推广,用户数达500人以上,目前正在全科技条线全面推广。“常青藤”是阳光数科完全自研的产品,在产品核心能力和功能方面,与目前国内外主流的商业产品相近,但用户体验方面还在持续优化,对比结果如下:表1:与国外主流商业产品对比表支持实时补全和智能问答框两种方答框的方式展示生成代码生成以实时补全方生成单元测试等以问答框方同阿里和copilot类似,所有功能都可以以问答框的方式展示,不同模型不同问答框,同一模型也可以分多个会话展示,生成结果可行级和函数级代可以生成spring后台的类行级和函数级生成,也可以生代码解释单元测试用户可根据个性需求自定义功能GPT辅助编程工具一样,在代码注释生成、代码解释、智能问答等方面生成质量高、应用效果好,是开发人员使用最多的场景。但在保险业务代码生成方面,普遍存在生成质量不高、采纳率低的问题,其核心原因是当前大模型对保险专业领域知识的理解和推理能力较弱。因此GPT辅助编程可以辅助开发人员提升效率,但是对于保险业务代码生成效果还远达不到替代人的程度。3、大模型代码能力未来发展方向第一,提高代码语料质量,扩充代码相关多模态数据集。全面提升大模型训练集中代码语料的质量,使语料覆盖高质量的代码仓库,设置合理的过滤规则,确保语料具有合理的文件长度、代码行长度、字母数字比,从而获得完整、安全、正确、干净和通用的代码语料库。大模型的代码任务通常是多模态的任务,需要同时理解自然语言、数学公式和代码语言的信息,通过构造多模态对齐数据集,提升大模型对代码相关跨模态任务的解决能力。第二,加强代码安全对齐算法。自然语言需要伦理道德对齐,代码也亟需安全对齐。在设计RLHF阶段需要代码安全专家的介入,训练模型生成安全无漏洞代码的倾向,同时可以设计相关程序的测试流程,完成语法语义正确性的自动对第三,拓展大模型上下文窗口。不同于自然语言任务,代码相关的各项任务对上下文窗口的长度都极为敏感,提升大模型的上下文训练窗口,可以有效提升大模型在实际应用中理解/编写代码的能力。第四,加强针对大模型的缺陷检测和安全增强。实际生产中往往在预训练模型中进行增量训练或微调,这些大模型可能在代码生成方面存在缺陷和漏洞。如何对预训练大模型的缺陷进行有效检测和安全增强,或通过外部手段规避风险,是未来的研究热点和发展趋势。三、探索使用大模型在代码缺陷检测领域的应用(一)代码缺陷检测背景介绍静态代码扫描(SA)指在软件工程中,程序员写好源代码后,在不运行计算机程序的条件下,对程序进行分析检查。通过在代码测试之前,在编码阶段就介入SA,提前发现并修复代码问题,有效减少测试时间,提高研发效率,发现BUG越晚,修复的成本越大。图1:代码测试前后(二)基于规则的代码缺陷检测主要问题随着缺陷规则增多,覆盖的语言和模块增多,有两个突出的痛点急需解决:成本较高。如何引入大模型减少开发成本,提质增效?2、有效率偏低,扫描的能力有限(如断链、框架保证非空、复杂场景静态很难识别等且风险的接受度不同,扫描的部分高风险问题存在修复意愿低,对用户造成打扰。如何通过大模型,从历史误报中学习经验,进行过滤,减少打扰,提升召回?(三)基于大模型的缺陷自动扫描学什么:给计算机输入什么内容,能让计算机更快、更好地学习?主要依托代码知识图谱提取目标变量相关的片段,减少机器学习需要的样本量,提升学习的准确性。怎么学:针对输入的内容,采用什么算法,能让机器像人一样读懂多种程序语言,并完成检测任务?采用深度学习的方法,主要包含预训练和微调两部分。预训练技术让计算机在海量无标签的样本中学习到多种语言的通用代码语义。微调技术通过给大模型输入缺陷检测样本,从而得到适配场景的大模型,让机器自主进行缺陷识别。图2:代码知识图谱提取目标变量相关的片段为了平衡模型性能和资源,需要对输入进行缩减。代码知识图谱是基于程序分析手段,对业务源代码经过模糊或精准的词法分析、语法分析和语义分析后,结合依赖分析、关系挖掘等手段,构建得到的软件白盒代码知识网。图谱提供了多种数据访问方式,用户可以低成本的访问代码数据。借助代码知识图谱能力,可以根据不同场景制定不同的与目标变量或目标场景相关的上下文源码获取能力。提取的关键步骤包括:1、构建被分析代码的知识图谱。2、目标变量检测识别:在变更代码中识别目标变量,作为待检测变量。3、变量依赖分析:基于控制流和数据流的与目标变量相关的依赖变量分析。4、特征语句提取和剪枝图3:代码知识图谱提取目标变量相关的片段以空指针风险检测为例,最终得到如下样例的代码切片图4:代码切片信息(四)采用大模型学习算法进行缺陷预测大模型检测缺陷有两种思路:1、通过判别式的方法,识别是否有缺陷以及缺陷类型。从而预测新样本的类别。采用BERT进行缺陷检测共含3步,分别是预训练、微调和推理。预训练阶段采用开源的多语言大模型,已较好的学习多种程序语言的语义。微调阶段,给模型输入上述通过代码知识图谱提取的与变量使用点相关的切片,以及是否有缺陷或者缺陷类型的标签,生成微调模型,让机器具备做检测任务的能力。输入的格式:{"slices":[{"line":"行代码内容","loc":"行号"mark":{"label":"样本标签","module_name":"代码库名","commit_id":"代码版本","file_path":"文件名","risk_happend_line":"发生异常的行"}}推理阶段,分析使用点目标变量的相关切片,通过微调模型进行预测,得到使用点是否有缺陷,以及缺陷类型。模型上线后,用户对结果反馈状态包括误报和接受。采集真实反馈样本,加入微调模型自动训练,从而到达自动迭代、快速学习新知识的目的。图5:模型自动训练2、通过生成式的方法,构建prompt,让程序自动扫描所有相关缺陷。shot、引入思维链、指定抽象的引导规则)和微调的方式,探索模型在空指针缺陷检测的预测效果。(五)采用规则+机器学习进行误报过滤缺陷检测场景识别的缺陷是风险,存在接受度问题,如何过滤掉其中低风险问题,是个难题。通过分析误报和修复的样本,采集误报相关的特征,如指针类型,模块误报率、文件误报率等跟误报相关的10+特征,训练机器学习模型(逻辑回归),判断是否需要过滤。整体方案架构图如下:图6:静态代码风险检测(六)业务落地基于AI的代码缺陷检测能力可以集成进入code管理平台,每次代码提交,展示可能存在的代码缺陷,阻塞合入,并采集研发人员的反馈,便于模型迭代。(七)示例1.ifcert=SSL_get_peer_certificate(ssl&&host)2.foo=SSL_get_verify_result(ssl);3.ifX509VOK==foo)||(X509VERR_SELF_SIGNED_CERT_IN_CHAIN==foo图7:GPT大模型对源代码的检测结果四、探索保险数字化运维场景(一)保险行业的现状目前,因面临技术、市场和法规等方面的问题,保险业在挑战与变革中谋发展。面对保险行业中客户日益高涨的即时信息获取需要、个性化的保障方案需求,如何在不稳定的经济环境和不断变化的风险因素中,维持公司的保单继续率和客户留存率等,是保险公司势必要面临的问题与挑战。同时,随着人口老龄化趋势的加剧、客户高需求匹配的代理人高专业要求等,保险行业有效人力不足的问题日渐凸显。因加强自主创新能力,加快数字化运维转型,弥补有效人力的不足,已成为大势所趋。(二)大模型在保险数字化运维的应用大模型具有语义学习、分析能力,以及可快速响应等诸多优势,必将在保险营销过程中的险种及条款咨询、个性化保险方案定制、承保风险防控、保单继续率维持、新产品研发等方面为保险行业未来发展带来契机,在推动保险行业向数字化运维转型方面承担重要角色。1、售前咨询及条款解读大模型经过深度学习保险知识,可应用于保险在线咨询和售前服务。它可以实时向客户宣导保险概念、解读保险政策等。相比传统的搜索险种和条款的查询方式,客户只需对大模型提出简单的查询要求,就可即时获取准确的产品条款解读、获取保费保额等。另外,在与客户群体对话过程中,大模型能够积累大量的查询数据,可协助保险公司及代理人更精准地分析理解客户的需求。2、制订个性化保险方案作为人工智能技术的典型应用,大模型可以根据在与客从而实现为客户量身定制专属产品组合和个性化的保障方案。另外,大模型可根据保障方案结合客户偏好,为代理人提供有针对性的销售策略和话术等,在提高产品与客户需求的匹配度的同时,提升保单成交率和客户满意度。3、强化承保风险管控大模型有助于保险公司强化承保过程中的风险管控。利并结合海量数据进行归类和处理,可以帮助保险公司更准确地勾勒用户画像,利用自然语言处理和机器学习算法,更精准地评估客户投保的风险水平,以降低保单承保逆选择风险,减少保险欺诈行为。例如,大模型实时、智能化地对承保申请自动审核,对决策者提供辅助判断及依据,从而提高承保质量和准确性。通过以上增强保险公司的风险管理水平,避免不必要的损失。4、提升保单继续率保单继续率是衡量保险公司经营风险的重要指标,而大模型的应用能够在维持保单继续率中发挥重要作用。大模型可通过对话为客户提供即时的续费金额和日期提醒,提升保单继续率。同时,大模型可根据客户的保险需求和历史保障记录,对于即将下架的保单险种提供以客户为中心的、个性化的转投保方案,帮助客户做出更明智的投保决策,延续保障。以上做法可在提升客户满意度的同时,提升保险公司的保单继续率和客户留存率,实现保险公司和客户的双赢。5、推动未来产品创新大模型在与客户对话过程中,可持续收集客户的产品诉求和期望,通过系统自动整理各年龄层的客户群体对产品诉求的大数据信息,勾勒客户群体用户画像,提供偏好分布数据等,从而为产品及精算人员对未来保险产品的险种设计和也可实时提供修改意见和依据,支持灵活迭代优化,从而使保险公司高效设计、推出符合大众真实诉求的产品险种,助力达成销售目标,提升行业竞争力和市场占有率。五、未来展望与实施策略(一)大模型在保险行业的推广应用前景随着大模型技术的迅猛发展,人工智能等信息技术在保险行业的应用前景广阔。如上述讨论,在保险数字化运维方面,大模型可以为客户精准推荐保险产品、提供个性化定制方案、及时催缴保费等,从而缩短出单时效,提高出单率和保单继续率。除此之外,大模型也可应用于保全、理赔等保单服务及客户服务方面,为客户提供7×24小时及时响应、过程引导和处理,可以提高运营时效,为客户提供更多智能化的服务和支持。(二)推动保险行业的创新与变革大模型的引入将推动全保险行业的整体创新与变革。利用大模型的自然语言处理能力,保险公司可以深度挖掘客户需求,从而精准设计出符合群体画像的保险产品,提供更精准、更合理的计算费率。同时,大模型还可以协助保险公司进行数据分析和风险评估,以及时规避逆选择风险。此外,大模型作为人工智能的典型应用,可与大数据、区块链、云计算等其他前沿

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论