0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

第二届大会回顾第12期 | ClarifyGPT: 基于交互式需求澄清的大模型代码生成框架

OpenHarmony TSC 来源:OpenHarmony TSC 作者:OpenHarmony TSC 2024-02-25 17:58 次阅读

演讲嘉宾 | 石 琳

回顾整理 | 廖 涛

排版校对 | 李萍萍

嘉宾介绍

开发者工具分论坛

石琳,北京航空航天大学软件学院教授,CCF高级会员,2022年度中国科学院软件研究所杰出青年科技人才。研究方向为智能软件工程,包括代码智能、智能需求工程、经验软件工程、开源软件、可信AI等。曾在软件工程、人工智能领域的高水平国际会议发表论文50余篇,三次获得杰出论文奖;主持参与多项国家自然科学基金项目、国家重点研发项目等;担任多个国际知名会议期刊审稿人。

视频回顾

打开哔哩哔哩APP,观看更清晰视频

正文内容

随着AI大模型能力的大幅提升,软件开发已经逐步走向新智能化时代。然而,目前代码大模型在可靠性、隐私和合规以及用户意图识别等方面仍存在一定局限性。如何基于交互式需求澄清方法,让大模型更好地理解用户意图,并给出更准确的答案?北京航空航天大学教授石琳在第二届OpenHarmony技术大会上进行了精彩分享。

72dbb404-cf89-11ee-b759-92fbcf53809c.png

2022年11月,OpenAI发布ChatGPT,利用GitHub数据与RLFH强化学习技术,在辅助编程取得进展;2023年1月,微软Copilot平台用户超过1亿,CEO表示Copilot很快就会替代程序员完成80%的代码开发。在GitHub的报告中,使用Copilot的开发者的开发效率几乎提升了一倍,一个用Copilot的初学者就能够像专业程序员一样,从零开始开发出最小可行产品程序。此外,清华大学推出的ChatDev项目,支持多个智能体分工合作,能够根据用户指令生成休闲小游戏、效率管理工具、绘画板、数学计算器、网络爬虫等软件。

通过前文可知,代码大模型在软件开发方面“一鸣惊人”,给开发者们带来了极大的便利。但是,代码大模型的快速发展同时也带来了新的问题,如:

模型问题:可靠性、幻觉、更新、形式重于内容

数据问题:数据演化、质量问题、安全问题、隐私和合规

应用问题:用户意图不明确、复杂问题抽象和分解、项目上下文、领域专业知识、遗留系统维护

7302e79a-cf89-11ee-b759-92fbcf53809c.png

其中,用户的意图表述不明确是代码大模型在实践中遇到的巨大阻碍。开发者想写出一个清晰明确且全面的Prompt并不容易。既然开发者写的Prompt不清晰,有没有办法让大模型帮开发者改写?目前,业界已经有一些尝试,例如GPT Engineer。GPT Engineer是一个基于需求描述自动生成项目源码的开源项目,主打轻量,灵活生成项目源码,可以在AI生成与人工生成之间进行切换。在接收到Prompt时,GPT Engineer不会直接生成代码,而是先梳理有哪些事项需要用户进一步澄清,然后让用户把需要澄清的事项输入后,再进一步生成代码。然而,GPT Engineer经常会问一些在Prompt中已经提供了答案的问题,对用户造成困扰。

如何找到Prompt中“不清楚”的地方,从而进行精准提问?石琳教授所在团队提出了ClarifyGPT工具。ClarifyGPT会先识别是否应该提问,再利用大模型生成问题。

ClarifyGPT的模块1:基于测试结果的代码多样性评价模块

如何判断是否应该向用户做Prompt澄清呢?这里我们从代码大模型的输出结果出发,提出一个基本假设:如果Prompt清晰,大模型生成的代码应该行为一致;如果Prompt模糊,大模型生成的代码可能五花八门。因此,ClarifyGPT会先通过种子输入进行代码多样性测试,并基于测试结果判断是否要做向用户做Prompt的澄清。

具体而言,(1)先进行种子测试输入初始化。构建prompt用于生成种子输入,Prompt包含三部分:Instruction,Demonstrations,Query。将Prompt输入LLM中生成一些测试输入,并用它们初始化一个种子池;(2)再进行类型感知的测试输入变异(采用了标准的基于变异的模糊流程)。在每次迭代时,从种子池中随机选择一个输入;对于选定的输入,我们检查其数据类型并执行与其类型一致的单个变异操作以创建新的测试用例;完成一轮突变后,我们将新生成的输入添加到种子池中,并重复上述过程,直到获得所需的生成输入数量。

7318fa44-cf89-11ee-b759-92fbcf53809c.png

ClarifyGPT的模块2:基于推理的LLM问题生成模块

在确定了需要向用户做Prompt澄清后,应该问什么内容呢?为了解决这个以问题,ClarifyGPT会进一步分析代码的细节差异,区分不一致的代码,比较solution的不同点,再基于推理进行LLM问题生成。

具体而言,首先生成中间推理步骤(分析导致歧义的因素),然后基于这些中间推理步骤产生最终结果(有针对性的澄清问题)。此外,ClarifyGPT鼓励LLM进行“超前规划”,使他们能够更好地利用他们的推理和理解能力来提高生成问题的质量。

73279cca-cf89-11ee-b759-92fbcf53809c.png

经过评测,ClarifyGPT将GPT-4在MBPP-sanitized上的表现(Pass@1)从70.96%提高到80.8%;将MBPP-ET的性能从51.52%提高到60.19%。相对改善平均为15.35%,优于基线。且增加Prompt中示例的数量会带来ClarifyGPT性能提升。

ClarifyGPT是一个交互式代码生成框架,会引导用户先澄清意图,再利用大模型帮助用户生成代码。后续,ClarifyGPT也会在其他生成类任务上进行进一步的研究和探索。

大模型加速了研发人员的工作效率,但同时也提出了新的挑战。我们必须大胆尝试LLM在改进软件开发方面的潜力,但同时也要谨慎行事,不要忘记工程思维、严谨性和经验验证的基本原则。 【材料分享】 [1] 论文原文下载 http://arxiv.org/abs/2310.10996 [2] 开源原型工具 https://github.com/ClarifyGPT/ClarifyGPT(点击阅读原文可跳转)

E N D

关注我们,获取更多精彩。

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • AI
    AI
    +关注

    关注

    87

    文章

    30896

    浏览量

    269108
  • 代码
    +关注

    关注

    30

    文章

    4788

    浏览量

    68616
  • OpenHarmony
    +关注

    关注

    25

    文章

    3722

    浏览量

    16321
  • 大模型
    +关注

    关注

    2

    文章

    2450

    浏览量

    2714
收藏 人收藏

    评论

    相关推荐

    第二届开放原子大赛首批赛项颁奖仪式在武汉举办

    近日,在2024开放原子开发者大会暨首届开源技术学术大会开幕上,第二届开放原子大赛首批赛项颁奖仪式成功举办。
    的头像 发表于 12-23 11:24 203次阅读

    第二届开放原子大赛首批创新成果集结武汉

    12月20日至21日,武汉将迎来一场开源技术的盛会——2024开放原子开发者大会暨首届开源技术学术大会。届时,第二届开放原子大赛的首批获奖团队将闪耀亮相,展示他们的创新成果。
    的头像 发表于 12-18 15:22 241次阅读

    谷东科技受邀参加2024第二届元宇宙大会

    近日,2024第二届元宇宙大会在海口开幕。本届大会以“赋能应用场景,智见广阔未来”为主题,汇聚了国内外的百余位顶尖专家、学者和行业领袖,就AI赋能产业健康发展和文体旅行业数字化融合等议题展开讨论,深入交流。谷东科技受邀参加,并获
    的头像 发表于 12-16 15:16 276次阅读

    美光科技第二届链博会精彩回顾

    此前,11月26-30日,历时5天,第二届中国国际供应链促进博览会在北京圆满落幕,一起来回顾美光科技在本次链博会的精彩时刻吧。
    的头像 发表于 12-03 13:35 158次阅读

    智芯公司亮相2024第二届中国电气工程大会

    近日,由智芯公司和北京邮电大学协同组织的2024第二届中国电气工程大会“先进通信技术赋能新型电力系统”专题分会场在安徽合肥成功举办。
    的头像 发表于 12-02 14:18 233次阅读

    帝奥微第二届代理商大会圆满召开

    近日,“帝奥微2024年第二届全国代理商大会” 在上海研发中心圆满召开。本次大会聚焦“智领芯程,合作共赢”主题,齐聚 80+代理商代表,共同探讨未来发展趋势。
    的头像 发表于 11-29 13:45 288次阅读

    知存科技邀您相约第二届集成芯片和芯粒大会

    2024年11月8日-10日,以“集成芯片:迈进大芯片时代”为主题的第二届集成芯片和芯粒大会将在北京嘉里大酒店举行。本次大会由基金委集成芯片前沿科学基础重大研究计划指导专家组指导,由中
    的头像 发表于 11-06 15:25 431次阅读

    第二届openEuler生态大会圆满结束

    近日,第二届openEuler生态大会(中国·湖南)成功举办。大会以“根植openEuler共建开源生态”为主题,旨在响应国家开源产业发展战略,推动建设以openEuler为根技术的开源操作系统在湖南创新发展,构建openEul
    的头像 发表于 10-31 16:02 275次阅读

    第二届开放原子大赛火热进行中

    第二届开放原子大赛(简称“大赛”)是由开放原子开源基金会组织举办的开源技术领域专业赛事,聚焦解决“真问题”,重点覆盖基础软件、工业软件、人工智能大模型等领域。
    的头像 发表于 10-31 10:04 346次阅读

    第二届开放原子大赛火热开启

    第二届开放原子大赛(简称“大赛”)是由开放原子开源基金会组织举办的开源技术领域专业赛事,聚焦解决“真问题”,重点覆盖基础软件、工业软件、人工智能大模型等领域。
    的头像 发表于 10-18 11:39 436次阅读

    第二届大会回顾24 | 面向OpenHarmony的软件工程研究:机遇与挑战

    随着万物智联时代的到来,OpenHarmony作为一个开源的智能终端设备操作系统的框架和平台,将会遇到哪些机遇和挑战?北京航空航天大学教授、OpenHarmony技术俱乐部主任黎立在第二届OpenHarmony技术大会上带来了精
    的头像 发表于 08-07 18:14 1044次阅读
    <b class='flag-5'>第二届</b><b class='flag-5'>大会</b><b class='flag-5'>回顾</b><b class='flag-5'>第</b>24<b class='flag-5'>期</b> | 面向OpenHarmony的软件工程研究:机遇与挑战

    第二届英飞凌汽车创新峰会IACE开幕在即

    第二届英飞凌汽车创新峰会IACE开幕在即
    的头像 发表于 05-20 11:42 543次阅读
    <b class='flag-5'>第二届</b>英飞凌汽车创新峰会IACE开幕在即

    报名开启!第二届OpenHarmony开发者大会2024重磅来袭!

    /jishu_2429449_1_1.html 预约直播: 第二届OpenHarmony开发者大会主论坛 第二届OpenHarmony开发者大会:设备开发分论坛
    发表于 05-14 15:23

    华工科技以智赋能,亮相第二届船舶行业安全生产大会

    4月18-19日,第二届船舶行业安全生产与应急管理技术交流大会在山东烟台举行。华工科技智能制造业务板块应邀参加,并发表题为《船体结构部件智能制造助力安全生产》的主题演讲。
    的头像 发表于 04-19 17:44 638次阅读
    华工科技以智赋能,亮相<b class='flag-5'>第二届</b>船舶行业安全生产<b class='flag-5'>大会</b>

    同星智能携最新版支持DoIP诊断功能TSMaster软件亮相第二届汽车人工智能大会

    同星展会预告TOSUN.EXHIBIT2024第二届汽车人工智能大会2024第二届汽车人工智能大会将于4月17-18日在上海举办,本次大会
    的头像 发表于 04-13 08:21 670次阅读
    同星智能携最新版支持DoIP诊断功能TSMaster软件亮相<b class='flag-5'>第二届</b>汽车人工智能<b class='flag-5'>大会</b>