AI 编程想要再进一步,大模型要解决哪些关键问题?

这篇具有很好参考价值的文章主要介绍了AI 编程想要再进一步,大模型要解决哪些关键问题?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

导读 论智能化编程的起源,可以追溯到集成开发环境(IDE )的辅助提示功能。只不过,传统 IDE 的智能化辅助功能比较简单,一般是基于开发人员的输入和已有项目代码,即时预测待补全代码中的类名、方法名和代码片段等,并提供建议列表。

而现在所说的智能化编程,在深度学习技术的影响下,跟以前已经大不一样,甚至已经有本质的区别。

华为云 Dev AI Lab Leader、智能化研发算法技术专家马宇驰认为:“GitHub Copilot 问世的 2021 年,是真正的智能化编程出现的元年。在此之前的代码补全,也就相当于输入法的联想功能。”

AI 编程想要再进一步,大模型要解决哪些关键问题?,人工智能

华为云 Dev AI Lab Leader、智能化研发算法技术专家 马宇驰

GitHub Copilot 由 GitHub 和 OpenAI 开发,其底层技术采用了 Codex 模型 —— 该模型经过了百亿级代码(包括 GitHub 上的公共存储库)的训练。GitHub Copilot 的特别之处在于,它不仅仅是一个代码自动补全工具。与大多数代码辅助工具相比,它可以理解更多上下文。无论是文档、注释、函数名,还是代码本身,GitHub Copilot 都会基于开发者提供的上下文来合成匹配的代码。开发者可通过 GitHub Copilot 在编辑器中获取有关整行代码或完整函数的建议。

Copilot 的进化速度非常惊人。2021 年 6 月,Copilot 刚发布时,其做题准确率是 28.8%,当时业界最高也只能达到 11%。今年 3 月,接入了 GPT-4 的 Copilot X 做题准确率已经达到了 67%。

“不基于大模型的 AI 编程助手,其编程能力非常差。在我们看来,它甚至不属于智能化的范畴。” 马宇驰表示。Copilot 的横空出世给了马宇驰及其团队不少启发。于是在 2021 年底,华为将研发工具 CodeArts 与盘古大模型相结合,开发了智能编程助手 CodeArts Snap。

据了解, CodeArts Snap 训练了 760 亿行精选代码,8500 万开源代码仓,1300 余万篇技术文档,具备智能生成、智能问答、智能协同三大核心功能,可以实现一句对话让代码生成、一次点击即可自动注释和生成测试用例,一条指令即可智能部署。

当前 CodeArts Snap 已经积累了不少用户,并且收获了诸多反馈。马宇驰表示,未来,CodeArts Snap 将持续演进,不断提升智能化编程能力。他曾提到,在当前阶段而言,从模型优化和工程优化的角度来看,“基于大模型的代码生成” 还面临八大关键技术挑战。这也是 CodeArts Snap 未来演进的方向。

一是中文友好的代码生成。目前诸多大模型的预训练语料数据都是以英文为主,中文语料占比仅为 3% 至 5%。在 IDE 中采用对话式交互时,中文的表现要远远逊色于英文。如何在语料有限的情况下,在保障模型性能的条件下,增强中文语义的理解能力,满足利用中文 / 英文描述同等的代码生成能力,是当前一大关注点。

二是 Prompt 优化与交互式 Input 改进。大模型一大特性就是,在交互时描述越精准, Prompt 写得越好,生成的内容质量就越好。如何在用户意图表达不那么明确的情况下,也能判断用户输入的任务描述完整性和合理性,并通过交互明确意图,提高代码生成准确率很是关键。

三是集成学习探索。当前大模型动辄就是百亿级、千亿级、万亿级参数,要把如此大规模的数据 “吃下去”,推断成本非常高。因此,能否结合预训练模型,在满足推断准确率的情况下,利用参数量更小的模型达到更大规模模型的推断效果,达到提升推断效率的目的呢?

四是体验评估与优化。构建客观且贴近真实工程的评估指标 / 手段,能够更好地帮助行业良性发展。

五是模型在线学习。用户的数据反馈对于模型能力的提升非常有帮助。在保护用户隐私的前提下,基于用户的显式和隐式反馈对在线的大模型进行微调,实现在线模型实时更新,都是业内要探讨的问题。

六是低成本 SFT。如何实现各种研发场景的训练 / 验证数据集快速低成本建设,以及模型的训练及自动验证部署也很关键。

七是后处理。后处理对于提升模型在实际应用场景的效果非常关键。根据项目上下文,检查和修复所生成代码的编译运行错误;结合单元测试,修复生成程序中的逻辑性错误。虽然解决的都是小问题、小错误,但是能让整个代码的生成质量更上一层楼。尤其是未来,将会有更多大模型将同步生成代码和生成测试,两两匹配,在闭环中提升代码整体质量。在这种情况下,后处理对于大模型整体能力的提升非常有帮助。

八是模型轻量化。模型轻量化的重要性毋庸置疑,它关系着成本、效率、性能和用户体验。在保证精度不过多下降的前提下,采用轻量化模型支撑端测算力实现模型推断,也很值得关注。

 文章来源地址https://www.toymoban.com/news/detail-633804.html

到了这里,关于AI 编程想要再进一步,大模型要解决哪些关键问题?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 进一步探讨二分

    接下来简单探讨几种查询 严格大于等于x的情况,只需要 去掉等号号 即可 严格小于x的情况,将 小于符号改为大于符号 即可 严格小于等于x的情况,也只需要 去掉等号 即可 写题过程中还有具体的探讨,可以从这几种方法中迁移应用

    2024年02月16日
    浏览(32)
  • 进一步了解C++函数的各种参数以及重载,了解C++部分的内存模型,C++独特的引用方式,巧妙替换指针,初步了解类与对象。满满的知识,希望大家能多多支持

    C++的编程精华,走过路过千万不要错过啊!废话少说,我们直接进入正题!!!! 函数默认参数 在C++中,函数的形参列表中的形参是可以有默认值的。 语法 : 返回值类型 函数名 (参数 = 默认值){} 示例 : 函数占位参数 C++中函数的形参列表里可以有占位参教,用来做占位

    2023年04月17日
    浏览(47)
  • Unity的GPUSkinning进一步介绍

      大家好,我是阿赵。   在几年前,我曾经写过一篇介绍GPUSkinning的文章,这么多年之后,还是看到不停有朋友在翻看这篇旧文章。今天上去GitHub看了一下,GPUSkinning这个开源的插件已经很久没有更新过了,还是停留在2017年的0.2.3版本。GPUSkinning的魅力在于可以在消耗比较

    2024年02月05日
    浏览(35)
  • 【Vue路由(router)进一步详解】

    本篇文章主要针对已经掌握Vue路由(router)基础以及路由嵌套的用户群体,如果你是Vue路由初学者的话,不仿先去看看 【Vue路由(router)的基本使用】这篇文章 接上一篇文章理解Vue路由中常用的知识点 在实际开发过程中,我们可能不单单要实现简单的页面跳转动作,可能在

    2023年04月08日
    浏览(32)
  • Druid未授权漏洞进一步的利用

    Druid是阿里巴巴数据库出品的为监控而生的数据库连接池。并且Druid提供的监控功能包括监控SQL的执行时间、监控Web URI的请求、Session监控等。Druid本身是不存在什么漏洞的,但当开发者配置不当时就可能造成未授权访问。本文除了介绍Druid未授权漏洞之外,还要讲的是一种该漏

    2024年02月11日
    浏览(34)
  • 数据结构--并查集的进一步优化

    压缩路径 − − F i n d 操作,先找到根节点,再将查找路径上所有结点都挂到根结点下 color{red}压缩路径 -- Find操作,先找到根节点,再将查找路径上所有结点都挂到根结点下 压缩路径 − − F in d 操作,先找到根节点,再将查找路径上所有结点都挂到根结点下 每次Find操作,

    2024年02月15日
    浏览(40)
  • 进一步了解WPF UI 实现XAML语法

    Extensible Application Markup Language (XAML) 是一种用于声明性应用程序编程的标记语言。 Windows Presentation Foundation (WPF) 实现 XAML 处理器实现并提供 XAML 语言支持。 WPF 类型的实现为 XAML 表示提供了必要的类型支持,从而确保了顺畅的集成和高效的运行。 在 XAML 标记中创建 WPF 应用程序

    2024年02月02日
    浏览(28)
  • 学习笔记---更进一步的双向链表专题~~

    目录 1. 双向链表的结构🦊 2. 实现双向链表🐝 2.1 要实现的目标🎯 2.2 创建+初始化🦋 2.2.1 List.h 2.2.2 List.c 2.2.3 test.c 2.2.4 代码测试运行 2.3 尾插+打印+头插🪼 思路分析 2.3.1 List.h 2.3.2 List.c 2.3.3 test.c 2.3.4 代码测试运行 2.4 尾删+头删🐊 2.4.0 思路分析 2.4.1 List.h 2.4.2 List.c 2.4.3 t

    2024年02月07日
    浏览(30)
  • [架构之路-203] - 对系统需求类型的进一步澄清

    目录 业务/商业需求: 用户/客户需求: 功能性需求: 非功能性需求: 系统需求: 约束条件: 软件需求说明书: 软件质量: 是自顶向下的需求,往往来自于中高层管理人员(或监管、政策要求),基于业务运营管理的直接诉求和要求。需要使用商业/工作语言描述业务/商业

    2024年02月07日
    浏览(54)
  • 频数表和列联表,以及进一步处理分析 -- R

    数据框包含了一些分类变量,问? 操作频数表 vcdӉ中的assocstats()函数可以计算二维列联表的phi系数,列联系数,Cramer‘s V系数 总体来说,较大的数值意味着较强的相关性

    2024年01月19日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包