CN115981615B - 融合语言模型与知识图谱的g代码生成方法及相关设备 - Google Patents
融合语言模型与知识图谱的g代码生成方法及相关设备 Download PDFInfo
- Publication number
- CN115981615B CN115981615B CN202310268469.2A CN202310268469A CN115981615B CN 115981615 B CN115981615 B CN 115981615B CN 202310268469 A CN202310268469 A CN 202310268469A CN 115981615 B CN115981615 B CN 115981615B
- Authority
- CN
- China
- Prior art keywords
- processing
- text
- target
- chain
- language model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Abstract
本发明提供一种融合语言模型与知识图谱的G代码生成方法及相关设备,涉及数控加工技术领域,方法包括:基于加工图纸生成加工特征文本;将加工特征文本输入至已训练的语言模型中,获取语言模型输出的第一操作文本词;基于第一操作文本词在预先生成的知识图谱中查找目标加工操作;将第一操作文本词和目标加工操作对应的第二操作文本词加入至加工特征文本中以更新加工特征文本,重复执行将加工特征文本输入至已训练的语言模型中的步骤,直至语言模型输出预设的结束字符;根据最后一次输入至语言模型的加工特征文本确定目标加工操作文本词,通过预设的加工操作与G代码之间的映射关系生成加工图纸对应的G代码。本发明可以提升G代码的生成效率。
Description
技术领域
本发明涉及数控加工技术领域,尤其涉及一种融合语言模型与知识图谱的G代码生成方法及相关设备。
背景技术
G代码是一种数控编程语言,用于计算机辅助制造以控制自动机床进行加工,G代码被提供给机床控制器,切削工具或非切削工具基于G代码指令移动以完成工件的加工,使用G代码控制多功能机床可以实现多种形状的组合加工。
在现有技术中,技术员根据图纸人工编写G代码,效率低。
发明内容
本发明提供一种融合语言模型与知识图谱的G代码生成方法及相关设备,用以解决现有技术中人工编写G代码效率低的缺陷,实现G代码的高效率生成。
本发明提供一种融合语言模型和知识图谱的G代码生成方法,包括:
基于加工图纸生成加工特征文本,所述加工特征文本描述所述加工图纸中需要加工的形状以及形状之间的位置关系;
将所述加工特征文本输入至已训练的语言模型中,获取所述语言模型输出的第一操作文本词,所述第一操作文本词对应一种加工操作;
基于所述第一操作文本词,在预先生成的知识图谱中查找与所述第一操作文本词对应的加工操作关联的目标加工操作,所述知识图谱基于多种形状对应的加工操作生成;
将所述第一操作文本词和所述目标加工操作对应的第二操作文本词加入至所述加工特征文本中以更新所述加工特征文本,重复执行所述将所述加工特征文本输入至已训练的语言模型中的步骤,直至所述语言模型输出预设的结束字符;
根据最后一次输入至所述语言模型的所述加工特征文本确定目标加工操作文本词,基于所述目标加工操作文本词分别对应的加工操作,通过预设的加工操作与G代码之间的映射关系生成所述加工图纸对应的G代码。
根据本发明提供的一种融合语言模型和知识图谱的G代码生成方法,所述基于所述第一操作文本词,在预先生成的知识图谱中查找与所述第一操作文本词对应的加工操作关联的目标加工操作,包括:
在所述知识图谱中查找至少一个加工操作链,所述加工操作链是由多个加工操作组成的,所述至少一个加工操作链中的每条所述加工操作链中均包括所述第一操作文本词对应的加工操作;
基于各个所述加工操作链对应的加工形状与所述加工特征文本在所述至少一个加工操作链中确定目标操作链;
基于所述目标操作链中的加工操作确定所述目标加工操作。
根据本发明提供的一种融合语言模型和知识图谱的G代码生成方法,所述基于各个所述加工操作链对应的加工形状与所述加工特征文本在所述至少一个加工操作链中确定目标操作链,包括:
基于各个所述加工操作链对应的加工形状在所述至少一个加工操作链中确定操作链集合,所述加工特征文本包括所述操作链集合中的每个所述加工操作链对应的加工形状;
基于所述第一操作文本词在所述加工操作链中的位置在所述操作链集合中确定所述目标操作链。
根据本发明提供的一种融合语言模型和知识图谱的G代码生成方法,所述基于所述第一操作文本词在所述加工操作链中的位置在所述操作链集合中确定所述目标操作链,包括:
确定所述操作链集合中以所述第一操作文本词为起点的所述加工操作链为所述目标操作链。
根据本发明提供的一种融合语言模型和知识图谱的G代码生成方法,所述基于加工图纸生成加工特征文本,包括:
将所述加工图纸输入至已训练的图文转换模型,获取所述图文转换模型输出的所述加工特征文本;
其中,所述图文转换模型是基于多组训练数据训练得到的,每组所述训练数据包括样本加工图纸以及所述样本加工图纸对应的加工特征文本标签;
所述图文转换模型基于如下的步骤进行训练得到:
将所述样本加工图纸输入至所述图文转换模型中,获取所述图文转换模型输出的预测加工特征文本;
根据所述预测加工特征文本与所述样本加工图纸对应的所述加工特征文本标签之间的语义相似度确定第一损失;
根据所述预测加工特征文本与所述样本加工图纸对应的所述加工特征文本标签之间的编辑距离确定第二损失;
根据所述第一损失和所述第二损失确定训练损失,根据所述训练损失更新所述图文转换模型的参数以完成对所述图文转换模型的一次训练。
根据本发明提供的一种融合语言模型和知识图谱的G代码生成方法,所述根据最后一次输入至所述语言模型的所述加工特征文本确定目标加工操作文本词,包括:
将最后一次输入至所述语言模型的所述加工特征文本中的所有所述第一操作文本词和所有所述第二操作文本词作为所述目标加工操作文本词。
根据本发明提供的一种融合语言模型和知识图谱的G代码生成方法,所述将所述第一操作文本词和所述目标加工操作对应的第二操作文本词加入至所述加工特征文本中以更新所述加工特征文本,包括:
将所述第一操作文本词和所述第二操作文本词按在所述目标操作链中的顺序组合后,加入至所述加工特征文本,得到更新后的所述加工特征文本。
本发明还提供一种融合语言模型和知识图谱的G代码生成方法装置,包括:
图纸处理模块,所述图纸处理模块用于基于加工图纸生成加工特征文本,所述加工特征文本描述所述加工图纸中需要加工的形状以及形状之间的位置关系;
语言模型模块,所述语言模型模块用于将所述加工特征文本输入至已训练的语言模型中,获取所述语言模型输出的第一操作文本词,所述第一操作文本词对应一种加工操作;
知识图谱模块,所述知识图谱模块用于基于所述第一操作文本词,在预先生成的知识图谱中查找与所述第一操作文本词对应的加工操作关联的目标加工操作,所述知识图谱基于多种形状对应的加工操作生成;
迭代模块,所述迭代模块用于将所述第一操作文本词和所述目标加工操作对应的第二操作文本词加入至所述加工特征文本中以更新所述加工特征文本,并调用所述语言模型模块重复执行所述将所述加工特征文本输入至已训练的语言模型中的步骤,直至所述语言模型输出预设的结束字符;
代码生成模块,所述代码生成模块用于根据最后一次输入至所述语言模型的所述加工特征文本确定目标加工操作文本词,基于所述目标加工操作文本词分别对应的加工操作,通过预设的加工操作与G代码之间的映射关系生成所述加工图纸对应的G代码。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述融合语言模型和知识图谱的G代码生成方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述融合语言模型和知识图谱的G代码生成方法。
本发明提供的融合语言模型与知识图谱的G代码生成方法中,从加工图纸中确定描述加工图纸中需要加工的结构的形状以及位置关系的加工特征文本,将加工特征文本输入至语言模型中,通过语言模型输出代表加工操作的加工操作词,再根据加工操作词与G代码的映射关系生成加工图纸对应的G代码,可以实现G代码的自动生成,自动生成G代码,不需要人工编写,并且,针对现有的语言模型每次只生成一个词,之后将该词与之前的文本组合再次输入到语言模型生成下一个词,计算量大的问题,本发明还进一步地应用包括各种架构对应的加工操作的知识图谱来对语言模型生成的一个操作词查找多个操作词,而不是每个操作词都需要将文本输入到语言模型中生成,大大降低了使用语言模型进行计算的计算量,提升G代码的生成效率。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的融合语言模型和知识图谱的G代码生成方法的流程示意图;
图2是本发明提供的融合语言模型和知识图谱的G代码生成装置的结构示意图;
图3是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
G代码用于控制机床进行加工,使用G代码控制加工中心可以实现多种形状的组合加工,在数控领域中应用十分广泛。目前,G代码都是技术员人工编写,这种编写的方式效率低。为了解决这一缺陷,本发明提供一种融合语言模型和知识图谱的G代码生成方法,从加工图纸中确定描述加工图纸中需要加工的结构的形状以及位置关系的加工特征文本,将加工特征文本输入至语言模型中,通过语言模型输出代表加工操作的加工操作词,再根据加工操作词与G代码的映射关系生成加工图纸对应的G代码,可以实现G代码的自动生成,自动生成G代码,不需要人工编写,并且,针对现有的语言模型每次只生成一个词,之后将该词与之前的文本组合再次输入到语言模型生成下一个词,计算量大的问题,本发明还进一步地应用包括各种架构对应的加工操作的知识图谱来对语言模型生成的一个操作词查找多个操作词,而不是每个操作词都需要将文本输入到语言模型中生成,实现了低计算量下的G代码自动生成,提升G代码的生成效率。下面对本发明提供的方法进行详细说明。
如图1所示,本发明提供的融合语言模型和知识图谱的G代码生成方法,包括步骤:
S100、基于加工图纸生成加工特征文本,所述加工特征文本描述所述加工图纸中需要加工的结构的形状以及形状之间的位置关系。
加工图纸反映加工后的工件的状态,也就是说,所述加工图纸中存在需要加工的结构的形状以及位置关系的信息。在现有技术中,技术人员根据加工图纸编写G代码输入至控制器以控制机床进行加工,使得加工完成后的工件与所述加工图纸一致。但是人工编写G代码需要专门学习过G代码编写方法的专门人员实现,人工编写也需要耗费大量时间,导致很高的人工成本。本发明提供的方法中,首先基于所述加工图纸生成描述需要加工的结构的形状以及形状之间的位置关系的所述加工特征文本,随后通过已训练的语言模型,基于所述加工特征文本进行文本生成,输出对应加工操作的操作文本词,这样就可以基于各种加工操作对应的G代码,生成所述加工图纸对应的G代码,不需要人工编写,降低人工成本。
具体地,所述加工特征文本描述所述加工图纸中需要加工的形状,例如孔、槽、轴等,形状之间的位置关系会影响形状的加工顺序,例如轴的表面上有槽的话,先加工轴,再加工槽的方式效率更高。为了提升生成的G代码对应的加工效率,所述加工特征文本还描述所述加工图纸中需要加工的形状之间的位置关系,例如,孔在轴内部,槽在轴表面等。所述加工特征文本可以是一句话,例如:所述加工特征文本可以为:“需要加工一个槽、第一个轴、第二个轴,槽在第一个轴的表面,第一个轴和第二个轴同心”。
进一步地,为了使得输入至所述语言模型中的所述加工特征文本能够携带更多的关于加工形状的信息,并且,使得输入至所述语言模型中的所有的所述加工特征文本具有相同的规律,便于所述语言模型提取出所述加工特征文本反映出的所述加工图纸中需要加工的形状的具体情况,本发明提供的方法中,所述加工特征文本中需要加工的形状的排序反映所述加工图纸中需要加工的形状的位置顺序,例如,所述加工特征文本中的加工形状是按照加工形状在所述加工图纸中从左往右或者,从右往左的顺序排列的。也就是说,所述加工特征文本还描述所述加工图纸中需要加工的形状在所述加工图纸中的位置。
所述基于加工图纸生成加工特征文本可以基于已训练的图文转换模型实现,具体地,所述基于加工图纸生成加工特征文本,包括:
将所述加工图纸输入至已训练的图文转换模型,获取所述图文转换模型输出的所述加工特征文本;
其中,所述图文转换模型是基于多组训练数据训练得到的,每组所述训练数据包括样本加工图纸以及所述样本加工图纸对应的加工特征文本标签。
所述图文转换模型是一个具有“看图说话(image captioning)”能力的模型,所述图文转换模型用于提取输入的图像中的语义,将输入的图像转化为自然语言,所述图文转换模型输出的自然语言文本的语义与输入至所属于图文转换模型的图像的语义一致。可以采用已有的看图说话模型,例如SAT、CVPR2021-RSTNet等作为所述图文转换模型。但是神经网络模型的能力与用于训练该模型的训练数据密切相关,现有的图文转换模型没有基于图纸数据进行训练的,即现有的图文转换模型对加工图纸进行看图说话的能力。需要利用包括图纸的所述训练数据训练所述图文转换模型,以使得所述图文转换模型具备基于输入的图纸输出加工特征文本的能力。
具体地,所述图文转换模型基于如下的步骤进行训练得到:
将所述样本加工图纸输入至所述图文转换模型中,获取所述图文转换模型输出的预测加工特征文本;
根据所述预测加工特征文本与所述样本加工图纸对应的所述加工特征文本标签之间的语义相似度确定第一损失;
根据所述预测加工特征文本与所述样本加工图纸对应的所述加工特征文本标签之间的编辑距离确定第二损失;
根据所述第一损失和所述第二损失确定训练损失,根据所述训练损失更新所述图文转换模型的参数以完成对所述图文转换模型的一次训练。
对所述图文转换模型是基于多次训练完成的,每次对所述图文转换模型的参数进行一次更新称为一次训练,在每次训练中,将一组所述训练数据中的所述样本加工图纸输入至所述图文转换模型中,基于所述图文转换模型输出的结果和该组所述训练数据中所述样本加工图纸对应的加工特征文本标签计算训练损失,以使得所述训练损失最小的方向优化更新所述图文转换模型的参数。
具体地,根据所述预测加工特征文本与所述样本加工图纸对应的所述加工特征文本标签之间的语义相似度确定第一损失,可以使得所述图文转换模型输出更加符合输入的加工图纸的加工特征文本。所述预测加工特征文本与所述加工特征文本标签之间的语义相似度可以基于一种语义特征提取网络实现,在现有技术中,存在多种已训练的语义特征提取网络,由于数控加工中的加工形状以及加工形状之间可能存在的位置关系是有限的,因此可以采用很小的训练量对已有的已训练的语义特征提取网络进行训练,实现对数控加工中的加工形状、加工形状之间的位置关系进行语义提取,进一步实现所述预测加工特征文本与所述加工特征文本标签之间的相似度的计算。
而编辑距离可以衡量所述预测加工特征文本经过多大程度的词语替换、词语顺序修改后可以修改为所述加工特征文本标签,虽然所述预测加工特征文本与所述样本加工图纸之间的编辑距离可能不会准确地反映二者之间的语义接近程度,但是可以反映二者中形状的排序差异。正如前文所说明的,输入至所述语言模型中的所述加工特征文本中形状的排序反映形状在所述加工图纸中的位置顺序,因此,根据所述预测加工特征文本与所述样本加工图纸之间的编辑距离来计算所述图文转换模型的损失,可以使得所述图文转换模型输出的所述加工特征文本中的需要加工的形状顺序能够准确地反映需要加工的形状在所述加工图纸中的位置顺序,进而提升基于所述加工特征文本生成的操作文本词的准确性。
请再次参阅图1,本发明提供的方法,还包括步骤:
S200、将所述加工特征文本输入至已训练的语言模型中,获取所述语言模型输出的第一操作文本词,所述第一操作文本词对应一种加工操作;
S300、基于所述第一操作文本词,在预先生成的知识图谱中查找与所述第一操作文本词对应的加工操作关联的目标加工操作,所述知识图谱基于多种形状对应的加工操作生成;
S400、将所述第一操作文本词和所述目标加工操作对应的第二操作文本词加入至所述加工特征文本中以更新所述加工特征文本,重复执行所述将所述加工特征文本输入至已训练的语言模型中的步骤,直至所述语言模型输出预设的结束字符。
将需要加工的加工内容转化为所述加工特征文本后,可以采用语言模型来进行文本生成以对所述加工特征文本进行扩写,生成包括对应加工操作的操作文本词的文本,基于生成的操作文本词,可以实现G代码自动生成。但是一般的语言模型,例如ChatGPT(美国人工智能研究实验室OpenAI推出的一种人工智能技术驱动的语言模型),采用的是Transformer结构,这种结构的模型可以实现将一段文本输入后,基于输入的文本的语义生成更长的文本。在Transformer架构下,输入一段文本后,每次输出一个新的词,再将新的词和之前的文本组合投入至模型中,再输出一个新的词,直到生成一个结束符号,例如句号。将这种方式直接应用于数控加工领域时,就会导致每个加工操作文本的生成都需要通过所述语言模型计算生成,耗费较大的计算量。而发明人经过研究之后发现,实际上,数控加工中同一种形状的加工过程中包括的加工操作是一致的,例如,对于螺纹加工来说,加工需要顺-逆时针圆弧插补和加工XY平面/XZ平面的操作步骤。基于此,本发明提供的方法,在所述语言模型输出一个加工操作后,根据先验知识来确定接下来的多个操作,这样可以大量降低模型计算量。
所述语言模型可以采用现有的语言生成类模型,采用数控加工语料训练得到,具体地,所述数控加工语料包括基于样本加工图纸生成的样本描述文本以及在所述样本描述文本基础上扩充了加工操作词的标签。
具体地,本发明中通过预先构建的知识图谱来实现先验知识的利用。所述知识图谱中包括多种加工形状对应的加工操作,一种加工形状可以对应有多个加工操作。所述知识图谱可以基于先验知识生成。
在将所述加工特征文本输入至所述语言模型后,获取所述语言模型输出的操作文本词作为所述第一操作文本词,在本说明书中,将描述加工操作的词称为操作文本词,即每个操作文本词对应一种加工操作,为了便于区分,将所述语言模型输出的操作文本词称为第一操作文本词,将基于所述第一操作文本词在所述知识图谱中查找到的操作文本词称为第二操作文本词。在本发明提供的方法中,通过迭代的方式实现对所述加工特征文本的更新。具体地,所述语言模型并不是一次性生成所有的所述加工图纸对应的操作文本词,而是在每次迭代中只输出一个,基于所述语言模型本次迭代生成的所述第一操作文本词,在所述知识图谱中进行查找,得到所述第二操作文本词,之后将本次迭代中输入至所述语言模型的文本与本次迭代中得到的所述第一操作文本词和所述第二操作文本词组合得到新的所述加工特征文本,再输入至所述语言模型中,开始下一次迭代。当所述语言模型输出预设的结束字符时,迭代结束。可以看出,本发明提供的方法,所述语言模型只生成部分的操作文本词,其他的操作文本词基于所述语言模型生成的操作文本词从先验知识中得到,相对于所述语言模型生成所有的操作文本词的方式,明显可以大大降低模型运算量。
下面对每次所述语言模型输出所述第一操作文本词之后,如何确定所述第二操作文本词进行说明,需要指出的是,以下的步骤不仅适用于第一次生成的所述第一操作文本词,也适用于之后生成的所述第一操作文本词,对于所述语言模型输出的每个所述第一操作文本词,都可以采用下面的步骤确定所述第二操作文本词。
具体地,所述基于所述第一操作文本词,在预先生成的指示图谱中查找与所述第一操作文本词对应的加工操作关联的目标加工操作,包括:
在所述知识图谱中查找至少一个加工操作链,所述加工操作链是由多个加工操作组成的,所述至少一个加工操作链中的每条所述加工操作链中均包括所述第一操作文本词对应的加工操作;
基于各个所述加工操作链对应的加工形状与所述加工特征文本在所述至少一个加工操作链中确定目标操作链;
基于所述目标操作链中的加工操作确定所述目标加工操作。
所述加工操作链是指有先后顺序的多个加工操作组成的链条,依次执行所述加工操作链上的各个加工操作,可以实现对形状的加工。在所述语言模型输出所述第一操作文本词后,确定所述第一操作文本词对应的加工操作,在所述知识图谱中查找包括所述第一操作文本词对应的加工操作的所述加工操作链。
所述基于所述目标操作链中的加工操作确定所述目标加工操作,包括:
将所述目标操作链中所述第一操作文本词之后的加工操作作为所述目标加工操作。
同一种加工操作可能在多种形状的加工中均存在,也就是说,一种加工操作可能在多个所述加工操作链中,将所述知识图谱中所有与包括所述第一操作文本词对应的加工操作的所述加工操作链作为所述至少一个加工操作链,再在所述至少一个加工操作链中确定用于确定所述第二操作文本词的所述目标加工操作链。
具体地,所述基于各个所述加工操作链对应的加工形状与所述加工特征文本在所述至少一个加工操作链中确定目标操作链,包括:
基于各个所述加工操作链对应的加工形状在所述至少一个加工操作链中确定操作链集合,所述加工特征文本包括所述操作链集合中的每个所述加工操作链对应的加工形状;
基于所述第一操作文本词在所述加工操作链中的位置在所述操作链集合中确定所述目标操作链。
正如前文所说明的,每个所述加工操作链对应有加工形状,如果所述加工操作链对应的加工形状在所述加工特征文本中不存在,那么显然可以直接排出所述加工操作链。也就是说,所述基于各个所述加工操作链对应的加工形状在所述至少一个加工操作链中删除或不删除所述加工操作链,得到所述操作链集合,所述操作链集合中的每个所述加工操作链对应的加工形状在所述加工特征文本中均存在。
所述基于所述第一操作文本词在所述加工操作链中的位置在所述操作链集合中确定所述目标操作链,包括:
确定所述操作链集合中以所述第一操作文本词为起点的所述加工操作链为所述目标操作链。
查找到所述第二操作文本词后,更新所述加工特征文本,具体地,所述将所述第一操作文本词和所述目标加工操作对应的第二操作文本词加入至所述加工特征文本中以更新所述加工特征文本,包括:
将所述第一操作文本词和所述第二操作文本词按在所述目标操作链中的顺序组合后,加入至所述加工特征文本,得到更新后的所述加工特征文本。
将更新后的所述加工特征文本输入至所述语言模型中,开始新的一次迭代。
当所述操作链集合中不存在以所述第一操作文本词为起点的所述加工操作链,那么设置所述第二操作文本词为空。也就是说,当所述操作链集合中不存在以所述第一操作文本词为起点的所述加工操作链时,直接讲所述第一操作文本词添加至当前的所述加工特征文本的最后面以对所述加工特征文本进行更新,得到更新后的所述加工特征文本。值得说明的是,在所有的迭代过程中,一旦出现所述操作链集合中不存在以所述第一操作文本词为起点的所述加工操作链,即,一旦出现设置所述第二操作文本词为空的情况,那么,后续迭代中,不再查找所述第二操作文本词。也就是说,当所述第一操作文本词为空时,在后续迭代中不再执行基于所述第一操作文本词,在预先生产的知识图谱中查找与所述第一操作文本词对应的加工操作关联的目标操作,将所述第一操作文本词和所述目标加工操作对应的第二操作文本词加入至所述加工特征文本中以更新所述加工特征文本的步骤,而是直接讲所述第一操作文本词加入至所述加工特征文本中以更新所述加工特征文本。也就是说,所述步骤S400具体包括:
当所述知识图谱中存在所述目标加工操作时,则将所述第一操作文本词和所述目标加工操作对应的第二操作文本词加入至所述加工特征文本中以更新所述加工特征文本,重复执行所述将所述加工特征文本输入至已训练的语言模型中的步骤,直至所述语言模型输出预设的结束字符;
若在所述知识图谱中不存在与所述第一操作文本词对应的加工操作关联的目标加工操作,则将所述第一操作文本词加入至所述加工特征文本中以更新所述加工特征文本,重复执行所述将所述加工特征文本输入至已训练的语言模型中的步骤,并不再执行所述基于所述第一操作文本词,在预先生成的知识图谱中查找与所述第一操作文本词对应的加工操作关联的目标加工操作的步骤。
当所述操作链集合中不存在以所述第一操作文本词为起点的所述加工操作链,说明所述知识图谱中的先验知识可能存在不足,那么基于所述第一操作文本词在所述知识图谱中查找与所述第一操作文本词对应的加工操作关联的目标加工操作就存在错误的可能性,因此,在本发明提供的方法中,一旦出现所述第二操作文本词为空的情况,就只采用所述语言模型生成后续所有的操作文本词。
当所述语言模型输出预设的结束字符,例如句号、感叹号等,则迭代结束,根据最后一次输入至所述语言模型中的所述加工特征文本确定所述目标加工操作文本词,基于所述目标加工操作文本词生成所述加工图纸对应的G代码。具体地,所述根据最后一次输入至所述语言模型的所述加工特征文本确定目标加工操作文本词,包括:
将最后一次输入至所述语言模型的所述加工特征文本中的所有所述第一操作文本词和所有所述第二操作文本词作为所述目标加工操作文本词。
如图1所示,在所述语言模型输出预设的所述结束字符后,本发明提供的方法,还包括步骤:
S500、根据最后一次输入至所述语言模型的所述加工特征文本确定目标加工操作文本词,基于所述目标加工操作文本词分别对应的加工操作,通过预设的加工操作与G代码之间的映射关系生成所述加工图纸对应的G代码。
预先建立加工操作与G代码之间的映射关系,在获取到所述目标加工操作文本词后,基于所述映射关系得到每个所述目标加工操作文本词对应的G代码并按顺序组合,实现对所述加工图纸对应的G代码的自动生成。基于本发明提供的方法生成的G代码,在增加具体的尺寸信息后,可以输入至数控机床的控制器用于控制数控机床进行加工。
下面对本发明提供的融合语言模型及知识图谱的G代码生成装置进行描述,下文描述的融合语言模型及知识图谱的G代码生成装置与上文描述的融合语言模型及知识图谱的G代码生成方法可相互对应参照。如图2所示,所述装置包括图纸处理模块210、语言模型模块220、知识图谱模块230、迭代模块240以及代码生成模块250。
所述图纸处理模块210用于基于加工图纸生成加工特征文本,所述加工特征文本描述所述加工图纸中需要加工的形状以及形状之间的位置关系;
所述语言模型模块220用于将所述加工特征文本输入至已训练的语言模型中,获取所述语言模型输出的第一操作文本词,所述第一操作文本词对应一种加工操作;
所述知识图谱模块230用于基于所述第一操作文本词,在预先生成的知识图谱中查找与所述第一操作文本词对应的加工操作关联的目标加工操作,所述知识图谱基于多种形状对应的加工操作生成;
所述迭代模块240用于将所述第一操作文本词和所述目标加工操作对应的第二操作文本词加入至所述加工特征文本中以更新所述加工特征文本,并调用所述语言模型模块220重复执行所述将所述加工特征文本输入至已训练的语言模型中的步骤,直至所述语言模型输出预设的结束字符;
所述代码生成模块250用于根据最后一次输入至所述语言模型的所述加工特征文本确定目标加工操作文本词,基于所述目标加工操作文本词分别对应的加工操作,通过预设的加工操作与G代码之间的映射关系生成所述加工图纸对应的G代码。
图3示例了一种电子设备的实体结构示意图,如图3所示,该电子设备可以包括:处理器(processor)310、通信接口(Communications Interface)320、存储器(memory)330和通信总线340,其中,处理器310,通信接口320,存储器330通过通信总线340完成相互间的通信。处理器310可以调用存储器330中的逻辑指令,以执行融合语言模型及知识图谱的G代码生成方法,该方法包括:基于加工图纸生成加工特征文本,所述加工特征文本描述所述加工图纸中需要加工的形状以及形状之间的位置关系;
将所述加工特征文本输入至已训练的语言模型中,获取所述语言模型输出的第一操作文本词,所述第一操作文本词对应一种加工操作;
基于所述第一操作文本词,在预先生成的知识图谱中查找与所述第一操作文本词对应的加工操作关联的目标加工操作,所述知识图谱基于多种形状对应的加工操作生成;
将所述第一操作文本词和所述目标加工操作对应的第二操作文本词加入至所述加工特征文本中以更新所述加工特征文本,重复执行所述将所述加工特征文本输入至已训练的语言模型中的步骤,直至所述语言模型输出预设的结束字符;
根据最后一次输入至所述语言模型的所述加工特征文本确定目标加工操作文本词,基于所述目标加工操作文本词分别对应的加工操作,通过预设的加工操作与G代码之间的映射关系生成所述加工图纸对应的G代码。
此外,上述的存储器330中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的融合语言模型及知识图谱的G代码生成方法,该方法包括:基于加工图纸生成加工特征文本,所述加工特征文本描述所述加工图纸中需要加工的形状以及形状之间的位置关系;
将所述加工特征文本输入至已训练的语言模型中,获取所述语言模型输出的第一操作文本词,所述第一操作文本词对应一种加工操作;
基于所述第一操作文本词,在预先生成的知识图谱中查找与所述第一操作文本词对应的加工操作关联的目标加工操作,所述知识图谱基于多种形状对应的加工操作生成;
将所述第一操作文本词和所述目标加工操作对应的第二操作文本词加入至所述加工特征文本中以更新所述加工特征文本,重复执行所述将所述加工特征文本输入至已训练的语言模型中的步骤,直至所述语言模型输出预设的结束字符;
根据最后一次输入至所述语言模型的所述加工特征文本确定目标加工操作文本词,基于所述目标加工操作文本词分别对应的加工操作,通过预设的加工操作与G代码之间的映射关系生成所述加工图纸对应的G代码。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种融合语言模型及知识图谱的G代码生成方法,其特征在于,包括:
基于加工图纸生成加工特征文本,所述加工特征文本描述所述加工图纸中需要加工的形状以及形状之间的位置关系,所述加工特征文本中需要加工的形状的排序反映所述加工图纸中需要加工的形状的位置顺序;
将所述加工特征文本输入至已训练的语言模型中,获取所述语言模型输出的第一操作文本词,所述第一操作文本词对应一种加工操作;
基于所述第一操作文本词,在预先生成的知识图谱中查找与所述第一操作文本词对应的加工操作关联的目标加工操作,所述知识图谱基于多种形状对应的加工操作生成;
将所述第一操作文本词和所述目标加工操作对应的第二操作文本词加入至所述加工特征文本中以更新所述加工特征文本,重复执行所述将所述加工特征文本输入至已训练的语言模型中的步骤,直至所述语言模型输出预设的结束字符;
根据最后一次输入至所述语言模型的所述加工特征文本确定目标加工操作文本词,基于所述目标加工操作文本词分别对应的加工操作,通过预设的加工操作与G代码之间的映射关系生成所述加工图纸对应的G代码;
所述基于所述第一操作文本词,在预先生成的知识图谱中查找与所述第一操作文本词对应的加工操作关联的目标加工操作,包括:
在所述知识图谱中查找至少一个加工操作链,所述加工操作链是由多个加工操作组成的,所述至少一个加工操作链中的每条所述加工操作链中均包括所述第一操作文本词对应的加工操作;
基于各个所述加工操作链对应的加工形状与所述加工特征文本在所述至少一个加工操作链中确定目标操作链,所述目标操作链的起点为所述第一操作文本词;
基于所述目标操作链中的加工操作确定所述目标加工操作;
所述基于所述目标操作链中的加工操作确定所述目标加工操作,包括:
将所述目标操作链中所述第一操作文本词之后的加工操作作为所述目标加工操作;
所述将所述第一操作文本词和所述目标加工操作对应的第二操作文本词加入至所述加工特征文本中以更新所述加工特征文本,包括:
将所述第一操作文本词和所述第二操作文本词按在所述目标操作链中的顺序组合后,加入至所述加工特征文本,得到更新后的所述加工特征文本。
2.根据权利要求1所述的融合语言模型及知识图谱的G代码生成方法,其特征在于,所述基于各个所述加工操作链对应的加工形状与所述加工特征文本在所述至少一个加工操作链中确定目标操作链,包括:
基于各个所述加工操作链对应的加工形状在所述至少一个加工操作链中确定操作链集合,所述加工特征文本包括所述操作链集合中的每个所述加工操作链对应的加工形状;
基于所述第一操作文本词在所述加工操作链中的位置在所述操作链集合中确定所述目标操作链。
3.根据权利要求2所述的融合语言模型及知识图谱的G代码生成方法,其特征在于,所述基于所述第一操作文本词在所述加工操作链中的位置在所述操作链集合中确定所述目标操作链,包括:
确定所述操作链集合中以所述第一操作文本词为起点的所述加工操作链为所述目标操作链。
4.根据权利要求1所述的融合语言模型及知识图谱的G代码生成方法,其特征在于,所述基于加工图纸生成加工特征文本,包括:
将所述加工图纸输入至已训练的图文转换模型,获取所述图文转换模型输出的所述加工特征文本;
其中,所述图文转换模型是基于多组训练数据训练得到的,每组所述训练数据包括样本加工图纸以及所述样本加工图纸对应的加工特征文本标签;
所述图文转换模型基于如下的步骤进行训练得到:
将所述样本加工图纸输入至所述图文转换模型中,获取所述图文转换模型输出的预测加工特征文本;
根据所述预测加工特征文本与所述样本加工图纸对应的所述加工特征文本标签之间的语义相似度确定第一损失;
根据所述预测加工特征文本与所述样本加工图纸对应的所述加工特征文本标签之间的编辑距离确定第二损失;
根据所述第一损失和所述第二损失确定训练损失,根据所述训练损失更新所述图文转换模型的参数以完成对所述图文转换模型的一次训练。
5.根据权利要求1所述的融合语言模型及知识图谱的G代码生成方法,其特征在于,所述根据最后一次输入至所述语言模型的所述加工特征文本确定目标加工操作文本词,包括:
将最后一次输入至所述语言模型的所述加工特征文本中的所有所述第一操作文本词和所有所述第二操作文本词作为所述目标加工操作文本词。
6.一种融合语言模型及知识图谱的G代码生成装置,其特征在于,包括:
图纸处理模块,所述图纸处理模块用于基于加工图纸生成加工特征文本,所述加工特征文本描述所述加工图纸中需要加工的形状以及形状之间的位置关系,所述加工特征文本中需要加工的形状的排序反映所述加工图纸中需要加工的形状的位置顺序;
语言模型模块,所述语言模型模块用于将所述加工特征文本输入至已训练的语言模型中,获取所述语言模型输出的第一操作文本词,所述第一操作文本词对应一种加工操作;
知识图谱模块,所述知识图谱模块用于基于所述第一操作文本词,在预先生成的知识图谱中查找与所述第一操作文本词对应的加工操作关联的目标加工操作,所述知识图谱基于多种形状对应的加工操作生成;
迭代模块,所述迭代模块用于将所述第一操作文本词和所述目标加工操作对应的第二操作文本词加入至所述加工特征文本中以更新所述加工特征文本,并调用所述语言模型模块重复执行所述将所述加工特征文本输入至已训练的语言模型中的步骤,直至所述语言模型输出预设的结束字符;代码生成模块,所述代码生成模块用于根据最后一次输入至所述语言模型的所述加工特征文本确定目标加工操作文本词,基于所述目标加工操作文本词分别对应的加工操作,通过预设的加工操作与G代码之间的映射关系生成所述加工图纸对应的G代码;
所述基于所述第一操作文本词,在预先生成的知识图谱中查找与所述第一操作文本词对应的加工操作关联的目标加工操作,包括:
在所述知识图谱中查找至少一个加工操作链,所述加工操作链是由多个加工操作组成的,所述至少一个加工操作链中的每条所述加工操作链中均包括所述第一操作文本词对应的加工操作;
基于各个所述加工操作链对应的加工形状与所述加工特征文本在所述至少一个加工操作链中确定目标操作链,所述目标操作链的起点为所述第一操作文本词;
基于所述目标操作链中的加工操作确定所述目标加工操作;
所述基于所述目标操作链中的加工操作确定所述目标加工操作,包括:
将所述目标操作链中所述第一操作文本词之后的加工操作作为所述目标加工操作;
所述将所述第一操作文本词和所述目标加工操作对应的第二操作文本词加入至所述加工特征文本中以更新所述加工特征文本,包括:
将所述第一操作文本词和所述第二操作文本词按在所述目标操作链中的顺序组合后,加入至所述加工特征文本,得到更新后的所述加工特征文本。
7.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5任一项所述融合语言模型及知识图谱的G代码生成方法。
8.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述融合语言模型及知识图谱的G代码生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310268469.2A CN115981615B (zh) | 2023-03-20 | 2023-03-20 | 融合语言模型与知识图谱的g代码生成方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310268469.2A CN115981615B (zh) | 2023-03-20 | 2023-03-20 | 融合语言模型与知识图谱的g代码生成方法及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115981615A CN115981615A (zh) | 2023-04-18 |
CN115981615B true CN115981615B (zh) | 2023-06-30 |
Family
ID=85958224
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310268469.2A Active CN115981615B (zh) | 2023-03-20 | 2023-03-20 | 融合语言模型与知识图谱的g代码生成方法及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115981615B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116400905B (zh) * | 2023-05-26 | 2023-08-11 | 中科航迈数控软件(深圳)有限公司 | 一种用于调控多设备的代码自动生成方法及相关设备 |
CN116992959B (zh) * | 2023-06-02 | 2024-03-15 | 广州数说故事信息科技有限公司 | 一种基于知识图谱的食品类产品创意概念生成验证方法 |
CN117270832B (zh) * | 2023-11-22 | 2024-02-13 | 卡奥斯工业智能研究院(青岛)有限公司 | 一种机器指令的生成方法、装置、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111596901A (zh) * | 2020-05-19 | 2020-08-28 | 西安电子科技大学 | 基于模块定义图的无人机飞控系统的c++代码生成方法 |
CN113987212A (zh) * | 2021-11-17 | 2022-01-28 | 武汉理工大学 | 一种数控加工领域工艺数据的知识图谱构建方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11488029B2 (en) * | 2017-09-15 | 2022-11-01 | International Business Machines Corporation | Cognitive process code generation |
KR102133466B1 (ko) * | 2018-05-31 | 2020-07-13 | 네이버 주식회사 | 코드 자동 생성 방법과, 이를 이용하는 단말장치 및 서버 |
CN110968299A (zh) * | 2019-11-20 | 2020-04-07 | 北京工业大学 | 一种基于手绘网页图像的前端工程化代码生成方法 |
CN114781641A (zh) * | 2022-04-25 | 2022-07-22 | 天津大学 | 一种基于知识图谱表示学习的加工链重用方法 |
CN115793571B (zh) * | 2023-02-07 | 2023-05-02 | 中科航迈数控软件(深圳)有限公司 | 基于多模态数据的加工设备控制方法、系统及相关设备 |
-
2023
- 2023-03-20 CN CN202310268469.2A patent/CN115981615B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111596901A (zh) * | 2020-05-19 | 2020-08-28 | 西安电子科技大学 | 基于模块定义图的无人机飞控系统的c++代码生成方法 |
CN113987212A (zh) * | 2021-11-17 | 2022-01-28 | 武汉理工大学 | 一种数控加工领域工艺数据的知识图谱构建方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115981615A (zh) | 2023-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115981615B (zh) | 融合语言模型与知识图谱的g代码生成方法及相关设备 | |
CN108847241B (zh) | 将会议语音识别为文本的方法、电子设备及存储介质 | |
US9959868B1 (en) | Conversational programming interface | |
CN116737908A (zh) | 知识问答方法、装置、设备和存储介质 | |
CN111191468B (zh) | 术语替换方法及装置 | |
CN110276081B (zh) | 文本生成方法、装置及存储介质 | |
CN112800737A (zh) | 自然语言文本生成方法和装置以及对话系统 | |
CN109693244B (zh) | 优化对话机器人的方法及装置 | |
CN111241255A (zh) | 智能会话管理方法及智能终端、存储介质 | |
CN115879450B (zh) | 一种逐步文本生成方法、系统、计算机设备及存储介质 | |
CN112818096A (zh) | 对话生成方法及其装置 | |
CN111178018A (zh) | 一种基于深度学习的目标软文的生成方法及装置 | |
CN109491919B (zh) | 一种软件测试方法及测试平台 | |
CN116149258B (zh) | 基于多模态信息的数控机床代码生成方法及相关设备 | |
CN110413779B (zh) | 一种针对电力行业的词向量训练方法及其系统、介质 | |
CN114330375A (zh) | 一种基于固定范式的术语翻译方法及系统 | |
CN111695350B (zh) | 一种文本的分词方法及分词装置 | |
CN113033178A (zh) | 用于商业计划书的文本评估方法、装置及计算机 | |
CN111666755A (zh) | 一种复述句识别的方法及装置 | |
CN116992862B (zh) | 数控机床异常辅助处理方法、装置、设备及介质 | |
CN116400905B (zh) | 一种用于调控多设备的代码自动生成方法及相关设备 | |
CN110955433B (zh) | 一种自动化部署脚本的生成方法及装置 | |
CN112287481B (zh) | 基于三维点云的机械设计方案搜索方法及装置 | |
CN117055850A (zh) | Ai设计大模型构建的方法、系统、设备及存储介质 | |
CN111737988B (zh) | 一种复述句识别的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |