GLLM: Self-Corrective G-Code Generation using Large Language Models with User Feedback

📄 arXiv: 2501.17584v1 📥 PDF

作者: Mohamed Abdelaal, Samuel Lokadjaja, Gilbert Engert

分类: cs.SE, cs.CL, cs.LG

发布日期: 2025-01-29

期刊: Industrial Track of 21st Conference on Database Systems for Business, Technology and Web (BTW), 2025


💡 一句话要点

GLLM:利用大语言模型和用户反馈实现自校正G代码生成

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: G代码生成 大型语言模型 CNC加工 自校正 检索增强生成

📋 核心要点

  1. 传统手动编写G代码耗时且易出错,需要专业知识,限制了CNC技术在更广泛领域的应用。
  2. GLLM利用微调的StarCoder-3B模型和RAG机制,结合自校正代码生成方法,将自然语言指令转化为准确的G代码。
  3. GLLM集成了语法检查、G代码验证和功能正确性评估等机制,确保生成的G代码在语法、语义和功能上均正确。

📝 摘要(中文)

本文介绍了一种名为GLLM的创新工具,它利用大型语言模型(LLMs)从自然语言指令中自动生成用于计算机数控(CNC)加工的G代码。GLLM通过弥合人类可读的任务描述和机器可执行的代码之间的差距,解决了手动编写G代码的挑战。该系统采用经过微调的StarCoder-3B模型,并使用领域特定的训练数据和检索增强生成(RAG)机制进行了增强。GLLM采用先进的提示策略和一种新颖的自校正代码生成方法,以确保生成的G代码在语法和语义上的正确性。该架构包括强大的验证机制,包括语法检查、G代码特定的验证以及使用Hausdorff距离进行的功能正确性评估。通过结合这些技术,GLLM旨在普及CNC编程,使其对没有丰富编程经验的用户更易于访问,同时保持G代码生成的高精度和可靠性。

🔬 方法详解

问题定义:论文旨在解决CNC加工中手动编写G代码的难题。手动编写G代码不仅耗时,而且需要专业的编程知识,这使得CNC技术难以被更广泛的用户所使用。现有的方法要么依赖于复杂的CAD/CAM软件,要么需要人工编写大量的代码,效率低下且容易出错。

核心思路:论文的核心思路是利用大型语言模型(LLMs)的强大自然语言理解和生成能力,将人类可读的自然语言指令直接转化为机器可执行的G代码。通过对LLM进行领域特定的微调和知识增强,使其能够更好地理解CNC加工的语义和语法规则,从而提高G代码生成的准确性和可靠性。此外,引入自校正机制,进一步提升代码质量。

技术框架:GLLM的整体架构包含以下几个主要模块:1) 自然语言指令输入模块:接收用户输入的自然语言指令。2) 检索增强生成(RAG)模块:从领域知识库中检索相关的G代码片段,为LLM提供上下文信息。3) 基于LLM的G代码生成模块:利用微调的StarCoder-3B模型,根据自然语言指令和检索到的G代码片段生成G代码。4) 自校正模块:对生成的G代码进行语法检查、G代码特定验证和功能正确性评估,并进行迭代优化。5) G代码输出模块:输出最终生成的G代码。

关键创新:GLLM的关键创新在于其自校正的代码生成方法。传统的基于LLM的代码生成方法往往难以保证生成的代码在语法和语义上的完全正确。GLLM通过引入多重验证机制,包括语法检查、G代码特定验证和功能正确性评估,能够有效地检测和纠正生成的G代码中的错误,从而提高代码的质量和可靠性。

关键设计:GLLM的关键设计包括:1) 使用StarCoder-3B模型作为基础LLM,并使用领域特定的G代码数据集进行微调。2) 采用检索增强生成(RAG)机制,利用领域知识库为LLM提供上下文信息。3) 设计了多重验证机制,包括语法检查、G代码特定验证(例如,检查坐标是否超出范围)和功能正确性评估(使用Hausdorff距离比较预期结果和实际结果)。4) 迭代优化策略,根据验证结果对生成的G代码进行迭代修改,直到满足要求。

📊 实验亮点

论文通过实验验证了GLLM的有效性。实验结果表明,GLLM能够生成高质量的G代码,并且在语法和语义上的正确率显著高于传统的基于LLM的代码生成方法。此外,GLLM还能够有效地处理复杂的CNC加工任务,例如曲面加工和多轴联动加工。具体的性能数据和对比基线在论文中进行了详细的描述。

🎯 应用场景

GLLM具有广泛的应用前景,可用于自动化制造、机器人控制、3D打印等领域。它可以降低CNC编程的门槛,使更多用户能够轻松地使用CNC技术,从而提高生产效率和创新能力。此外,GLLM还可以用于教育和培训,帮助学生和工程师快速掌握CNC编程技能。

📄 摘要(原文)

This paper introduces GLLM, an innovative tool that leverages Large Language Models (LLMs) to automatically generate G-code from natural language instructions for Computer Numerical Control (CNC) machining. GLLM addresses the challenges of manual G-code writing by bridging the gap between human-readable task descriptions and machine-executable code. The system incorporates a fine-tuned StarCoder-3B model, enhanced with domain-specific training data and a Retrieval-Augmented Generation (RAG) mechanism. GLLM employs advanced prompting strategies and a novel self-corrective code generation approach to ensure both syntactic and semantic correctness of the generated G-code. The architecture includes robust validation mechanisms, including syntax checks, G-code-specific verifications, and functional correctness evaluations using Hausdorff distance. By combining these techniques, GLLM aims to democratize CNC programming, making it more accessible to users without extensive programming experience while maintaining high accuracy and reliability in G-code generation.