企业简介
北京百度网讯科技有限公司成立于2001年,国家高新技术企业、中关村高新技术企业,是全球为数不多的提供全栈AI技术的公司之一,在深度学习算法及框架平台、自然语言处理、知识图谱、语音、图像等人工智能核心技术领域,处于国际领先水平。截至2023年12月,百度已申请人工智能专利25000余件,连续6年位居人工智能专利申请量和授权量的全国第一;牵头/参与国际标准17项、国家标准116项、行业标准99项、团体标准130项;发表顶级会议(顶级期刊)1500余篇。曾获国家技术发明二等奖、国家科技进步二等奖、中国专利金奖、北京市科技进步一等奖、中国电子学会科技进步一等奖等。仅在2022年,百度便斩获5项中国专利奖,持续保持人工智能领域获得中国专利奖数量最多、获奖级别最高的高科技企业。
案例简介
文心快码(Baidu Comate)是以百度文心大模型为底座,基于NLP、ML、DL、RL、RAG等底层技术,打造的贯穿研发全流程的智能代码助手。支持VSCode、Jetbrains系列等10+种IDE及100+种编程语言,具备自然语言生成代码、代码续写、代码解释、代码优化、代码Debug、代码生成注释、代码生成单测、安全漏洞扫描与修复等能力。通过将大模型技术和应用场景结合起来,极大的提升了代码开发的效率和质量,推动了软件工程的发展。
文心快码基于人机协同结对编程理念,将智能化能力由开发环节扩展到DevOps全流程,在需求、开发、测试、部署、运维等各个环节通过提供实时的代码建议、优化和调试支持,帮助工程师更快速地完成任务。工程师由被动接受代码建议,逐步转变为主动与文心快码进行交互,在各个环节通过文心快码获取支持。
为了充分利用企业沉淀的工具平台及私域知识,文心快码通过开放平台和知识中心与企业内部平台和资源进行无缝对接。基于开放平台文心快码可以与企业内研发工具链深入结合,更好地适应不同组织和个人,无需重复建设即可快速获得大模型能力。基于知识中心和知识增强技术可以充分利用企业积累的私域知识,探索了组织和团队的知识沉淀到生成效果的闭环,解决了当前智能代码助手在处理复杂项目时缺乏上下文信息的问题,使代码生成准确性提升20%。
在某些垂类场景下,文心快码通过助力模式和智能体(AI Agent)能力实现了高效自动化的特定任务处理。智能体是一种能够自主感知环境、做出决策并执行行动的系统或实体,能够在特定任务中独立运行。文心快码具备多种智能体(如UTAgent、部署Agent等),能够自动完成如代码生成、测试用例编写和环境部署等工作。智能体的引入不仅减轻了开发人员的工作负担,也大幅提升了任务的自动化水平和执行效率。
案例背景
随着智能化技术的快速发展,人工智能技术迅速融入各个行业,显著提升了生产力和工作效率。百度作为人工智能领域的领导者,凭借其在自然语言处理、机器学习和深度学习等技术上的深厚积累,推出了智能代码助手——文心快码(Baidu Comate)。文心快码基于百度文心大模型,通过在芯片、框架、模型和应用层面的全面优化,旨在为企业提供高效、智能的代码开发支持,助力企业在数字化转型中取得更大成功。
技术特色
在现代软件开发中,代码生成技术正在迅速发展。然而,单纯依赖大模型内部的知识和有限的上下文,往往不足以全面理解开发者所处的编程环境,导致生成的代码质量未必达到预期。为解决这一问题,文心快码通过一系列创新技术,提升了代码生成的质量。这方面主要涉及如下关键技术:
1. 代码上下文增强:通过代码解析技术,能够深入分析源代码结构,提取函数定义、类结构等信息,并将其转换为语义丰富的向量。此外,通过构建模块间的调用图和数据流图,识别代码组件之间的依赖关系。
2. 文本语义增强:丰富的文本资源经过清洗、分词等预处理,利用模型提取其语义表示。
3. 知识图谱:应用主题建模技术,构建领域特定的知识图谱,将文档内容与代码实体紧密关联,形成跨模态的知识网络。
通过代码上下文增强、文本语义增强、知识图谱等组件,全面捕捉、整合和利用开发环境中的各种知识源,使AI能够深入理解开发上下文,构建真正的人机协同开发模式。
此外,为了持续提升大模型生成效果,文心快码针对百度内部一万多用户的使用习惯和需求,运用了类似DPO(直接偏好优化)等技术手段,通过日志系统和用户反馈机制收集大量交互数据。利用聚类分析等技术建模用户行为,详细理解其编程习惯和需求,分析出用户对生成代码的接受和反馈情况;在模型训练过程中引入DPO等技术,通过直接优化用户偏好来调整模型参数和权重;建立闭环反馈机制,分析百度用户的使用情况,在每次迭代中不断优化模型。通过这些技术手段,文心快码实现了高效的数据飞轮机制,生成更加符合实际应用场景的代码建议。
应用实例场景
文心快码与企业研发工具链深度结合,在编码环节、代码调试环节、代码评审环节、测试环节、交付环节等整条研发工具链中全方位为工程师提效。
在编码环节,文心快码支持自动实时续写、注释生成、自然语言生成代码等高级功能。
1. 在编码过程中,文心快码能智能预判用户的编码需求,在最适合的时机提供代码补全建议。无论是在编写函数、变量名,还是进行复杂的语法构造,均能准确捕捉用户意图,提供及时帮助。并且结合业内最先进的文心大模型、用户编码习惯、内置的语法分析引擎、RAG知识增强技术等,文心快码能最大程度确保补全内容的准确性。
2. 除实时自动推荐外,在每个方法、函数上方设有快捷功能触发按钮,可以便捷的手动触发单测生成、注释生成、代码解释、代码优化等高级功能。代码生成注释功能可以针对函数生成注释、行间注释等,极大降低用户编写注释的成本,提升代码可读性;单测生成功能通过深度分析项目的技术选型与编码风格,自动生成符合项目要求的单元测试,确保测试的准确性和有效性,从而减轻了开发者的负担,提高测试覆盖率,为项目质量保驾护航;代码解释能够深入理解代码的语义和结构,从而生成准确、易懂的解释,降低项目理解成本。
3. 此外,在侧边栏问答框基于文心4.0模型提供技术问答、自然语言生成代码等能力,可回答任何编程类问题,在编码过程中始终伴随开发者,提供最有效的帮助。基于RAG知识增强技术,还可以深度解读代码库,独立分析产品需求,匹配最佳解决方案并生成代码,具备如下能力:询问代码库有关任何问题、关联私域知识生成新代码、特定框架的代码生成等。
在代码Debug环节,能够快速识别错误类型、定位问题源头,并通过对比历史数据与现有知识库,为用户提供初步的问题诊断。为了进一步提升用户体验,文心快码集成了强大的网络检索与私有知识检索功能。当遇到未知或复杂的问题时,文心快码会首先在网络中搜索相关的解决方案和最佳实践,确保用户能够获取到最全面、最前沿的信息。同时,对于企业内部特有的技术难题或私有代码库中的错误,文心快码也能通过访问私有知识库,智能推荐针对性的解决策略。这种双管齐下的检索方式,让Comate在问题解答上更加全面、精准。
在代码评审环节,文心快码与百度代码托管平台深度结合,在用户提交代码后,后台自动触发批量单测生成、代码Review、函数注释生成等操作,为提交代码自动生成单测代码和注释,提升代码质量,并通过大模型进行Code Review,找出代码中可能的错误并给出评审建议,帮助评审人做好代码评审。
在测试环节,文心快码与多种测试平台相结合,通过大模型、API文档、用户长期积累的测试用例数据,可以自动生成测试代码、测试用例,提升测试质量和效率。
实施效果
从全局效果看,文心快码在百度内部已经大规模落地,效果显著,推进研发进入新的人机协同时代。目前文心快码实现月级85%+工程师深度使用,每天由文心快码生成的代码量占总提交量的30%+,用户采纳率高达46%,其中头部高活用户采纳率超60%,用户满意度90%以上,使单位时间代码提交量增加35%,为百度带来12%的全局提效效果。此外,研发单周交付占比也接近60%,显示出更快的业务迭代速度。这些都意味着文心快码得到了工程师们的广泛认可并深度使用。
在部分场景和业务线,文心快码也通过智能体方式完全托管特定开发或测试场景,实现进一步提效。在百度网盘,通过文心快码实现了全流程的自动化实践,借助大模型和智能体在运营类的需求实现了超过80%代码由AI生成,工程师只需要做一些简单确认就可以完成需求的交付。百度营销服务团队也通过文心快码运维部署智能体实现环境极速部署,单次节省耗时10分钟以上,按照一个月约进行3300次线下环境更新测算,每月可节省560工时,约相当于3个人力。
在百度外部,文心快码面向外部企业用户和个人用户开放。目前,文心快码公有云累计注册企业超1万家,累计企业用户数十万,累计付费用户数超2万。随着文心快码在多个行业的成功应用,其市场占有率也持续攀升。在金融、汽车、通讯、能源、证券、集成电路、机械制造、软件服务、互联网及餐饮等多个领域,文心快码都建立了头部企业的标杆案例。如民生银行、吉利汽车、顺丰、同程旅行、方正证券、喜马拉雅、软通动力等知名企业均已成为文心快码的用户。通过复制百度内部推广落地方式,可以帮助客户达到和百度一样甚至超越百度的使用效果和体验。典型客户如喜马拉雅,通过融合本地知识和能力,一个季度落地就实现了33%的代码生成占比。为企业在创造价值和提升开发效率方面奠定了坚实的基础。