MCCoder-通过 LLM 辅助代码生成和严格验证简化运动控制-计算机科学-大语言模型-辅助代码生成-运动控制.pdf

MCCoder-通过 LLM 辅助代码生成和严格验证简化运动控制-计算机科学-大语言模型-辅助代码生成-运动控制.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
大型语言模型(LLMs)在代码生成方面展示了巨大的潜力。然而,在工厂自动化领域——特别是运动控制中,手动编程以及低效且不安全的调试实践仍然普遍存在。这源于机械和电气系统之间复杂的相互作用及严格的安全要求。此外,目前大多数人工智能辅助运动控制编程工作都集中在PLC上,而很少关注高级语言和函数库。为了解决这些挑战,我们引入了MCCoder,这是一个专为生成运动控制代码设计的基于LLM的系统,并集成了一个软运动控制器。MCCoder通过结合多任务分解、混合检索增强生成(RAG)以及迭代自

MCCoder:通过LLM辅助代码生成和严格验证简化运动控制

YinLi,LiangweiWang,ShiyuanPiao,Boo-HoYang,ZiyueLi,WeiZeng,FugeeTsung

Abstract—大型语言模型(LLMs)在代码生成方面展示

了巨大的潜力。然而,在工厂自动化领域——特别是运动控制

中,手动编程以及低效且不安全的调试实践仍然普遍存在。这源

于机械和电气系统之间复杂的相互作用及严格的安全要求。此

外,目前大多数人工智能辅助运动控制编程工作都集中在PLC

上,而很少关注高级语言和函数库。为了解决这些挑战,我们

引入了MCCoder,这是一个专为生成运动控制代码设计的基

于LLM的系统,并集成了一个软运动控制器。MCCoder通

过结合多任务分解、混合检索增强生成(RAG)以及迭代自我

本纠正的方法来改进代码生成,利用了一个成熟的运动库。此外,

它还整合了3D模拟器以进行直观的运动验证和全程运动轨迹

译的日志记录,显著提高了准确性和安全性。在缺乏专门用于评

中估运动控制代码生成基准数据集和指标的情况下,我们提出了

MCEVAL,一个涵盖不同复杂度运动任务的数据集。实验显

3

v示,使用高级RAG的MCCoder的表现优于基线模型,在

4MCEVAL数据集中实现了整体性能提升33.09%,并且在复

5杂任务上的表现提升了131.77%。MCCoder可公开获取于

1

5/MCCodeAI/MCCoder。

1Fig.1.高级RAG与LLM辅助的MCCoder之间的比较。使用高级RAG

.I.介绍生成代码的通过率和效率较低,需要大量的调试,并且存在安全问题。相

0

1比之下,MCCoder通过任务分解、自我校正和模拟器中的软运动来生成代

4运动控制是工厂自动化的基础要素,极大地改进码,确保数据验证并实现安全的机器部署。

2了工业流程,从20世纪50年代引入数控(NC)机床

:气和机械部件协调进行迭代调试以提升运动性能并解

v到今天先进的AI驱动机器人和半导体设备的演变。虽

i决操作过程中对人类操作员和机械设备潜在的危害。

x然运动控制涵盖了多种编程方法(例如CAD/CAM、

r近期对基于大语言模型的代码生成的关注揭示了

aPLC和机器人示教),本文特别专注于运动API调用

其解决编程挑战的强大能力[1]。尽管自动化控制中

领域。目前,在这一领域的软件工程师主要依赖于手

的传统代码生成通常依赖于模型驱动或规则基础的方

动编程和调试运动控制系统,这是由于制造过程复杂

法,但最近的进步已经开始探索基于大语言模型的方

以及关键机械设备安全考虑所驱使的。某些运动库包

法。例如,提出了一种检索增强方法[2]来生成IEC

含超过1,000个带有覆盖参数的API和超过100个同

61131-3程序,而LLM4PLC[3]使用用户反馈和外部

步运动通道,这导致了一个陡峭的学习曲线,并限制

文档评论(0)

zikele + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档