CN116861507A - 建筑信息的建模方法、装置及电子设备 - Google Patents
建筑信息的建模方法、装置及电子设备 Download PDFInfo
- Publication number
- CN116861507A CN116861507A CN202310798202.4A CN202310798202A CN116861507A CN 116861507 A CN116861507 A CN 116861507A CN 202310798202 A CN202310798202 A CN 202310798202A CN 116861507 A CN116861507 A CN 116861507A
- Authority
- CN
- China
- Prior art keywords
- bim
- building information
- response
- preset
- content
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 230000004044 response Effects 0.000 claims abstract description 132
- 238000012545 processing Methods 0.000 claims abstract description 77
- 238000005516 engineering process Methods 0.000 abstract description 13
- 230000000875 corresponding effect Effects 0.000 description 38
- 238000012549 training Methods 0.000 description 14
- 239000003795 chemical substances by application Substances 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000013461 design Methods 0.000 description 7
- 238000007781 pre-processing Methods 0.000 description 7
- 230000009471 action Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 239000008186 active pharmaceutical agent Substances 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 3
- 235000002198 Annona diversifolia Nutrition 0.000 description 2
- 241000282842 Lama glama Species 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 238000011282 treatment Methods 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供了一种建筑信息的建模方法、装置及电子设备,基于用户输入的建筑信息,向预先训练好的大语言模型发送所述建筑信息的处理请求;其中,处理请求包括建筑信息、BIM角色指令、响应规则和预设目标操作集合,BIM角色指令表征大语言模型的响应内容范围;通过大语言模型基于预先配置的总操作集合,对处理请求进行响应;其中,总操作集合包含预设BIM软件的全部或部分BIM操作;基于响应对应的操作内容,通过预设BIM软件生成所述建筑信息的建模结果。采用本发明可以缓解现有建筑信息建模技术在软件操作方面存在的专业知识门槛较高、人工操作效率较低等问题。
Description
技术领域
本发明涉及建筑设计技术领域,尤其是涉及一种建筑信息的建模方法、装置及电子设备。
背景技术
自然语言处理技术发展迅速,尤其是大规模数据训练的大语言模型(LLM,LargeLanguage Model)已经具备了较高的理解自然语言的能力,例如GPT-3、chatGPT、ColossalChat、LLaMA模型等。自然语言处理技术可以将自然语言转化为机器可读的语言,从而实现自然语言与计算机之间的交互。而BIM(Building Information Modeling,建筑信息模型)辅助建模技术则可以帮助建筑师更好地设计建筑,提高设计效率和设计质量,尽管已有较多成熟的参数化建模辅助软件,但传统BIM软件依然依赖于专业人员的人工手动操作,对操作人员的软件使用技能和专业知识背景要求较高。另外,现有的大语言模型在处理专业领域的内容时仍有不足,如何将大语言模型与现有BIM软件结合是建筑行业有待解决的重要问题。
发明内容
有鉴于此,本发明的目的在于提供一种建筑信息的建模方法、装置及电子设备,以缓解现有建筑信息建模技术在软件操作方面存在的专业知识门槛较高、人工操作效率较低等问题。
第一方面,本发明实施例提供了一种建筑信息的建模方法,所述方法包括:基于用户输入的建筑信息,向预先训练好的大语言模型发送所述建筑信息的处理请求;其中,所述处理请求包括所述建筑信息、BIM角色指令、响应规则和预设目标操作集合,所述预设目标操作集合包含完成预设操作目标所需的至少一个BIM操作,所述BIM角色指令表征所述大语言模型的响应内容范围;通过所述大语言模型基于预先配置总操作集合,对所述处理请求进行响应;其中,所述总操作集合包含预设BIM软件的全部或部分BIM操作;基于所述响应对应的操作内容,通过预设BIM软件生成所述建筑信息的建模结果。
第二方面,本发明实施例还提供一种建筑信息的建模装置,所述装置包括:请求模块,用于基于用户输入的建筑信息,向预先训练好的大语言模型发送所述建筑信息的处理请求;其中,所述处理请求包括所述建筑信息、BIM角色指令、响应规则和预设目标操作集合,所述预设目标操作集合包含完成预设操作目标所需的至少一个BIM操作,所述BIM角色指令表征所述大语言模型的响应内容范围;响应模块,用于通过所述大语言模型基于预先配置的总操作集合,对所述处理请求进行响应;其中,所述总操作集合包含预设BIM软件的全部或部分BIM操作;生成模块,用于基于所述响应对应的操作内容,通过预设BIM软件生成所述建筑信息的建模结果。
第三方面,本发明实施例还提供一种电子设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机可执行指令,所述处理器执行所述计算机可执行指令以实现上述建筑信息的建模方法。
本发明实施例提供的一种建筑信息的建模方法、装置及电子设备,基于用户输入的建筑信息,向预先训练好的大语言模型发送所述建筑信息的处理请求;其中,处理请求包括建筑信息、BIM角色指令、响应规则和预设目标操作集合,预设目标操作集合包含完成预设操作目标所需的至少一个BIM操作,BIM角色指令表征大语言模型的响应内容范围;通过大语言模型基于预先配置的总操作集合,对处理请求进行响应;其中,总操作集合包含预设BIM软件的全部或部分BIM操作;基于响应对应的操作内容,通过预设BIM软件生成所述建筑信息的建模结果。采用上述技术,通过大语言模型与BIM软件之间的协同,可以缓解现有建筑信息建模技术在软件操作方面存在的专业知识门槛较高、人工操作效率较低等问题。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中一种建筑信息的建模方法的流程示意图;
图2为本发明实施例中一种建筑信息的建模方法的数据交互示例图;
图3为本发明实施例中一种建筑信息的建模方法的数据处理流程示例图;
图4为本发明实施例中大语言模型的初步响应示例图;
图5为本发明实施例中大语言模型的响应内容示例图;
图6为本发明实施例中BIM软件执行BIM操作的结果示例图;
图7为本发明实施例中一种建筑信息的建模装置的结构示意图;
图8为本发明实施例中一种电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
自然语言处理技术可以将自然语言转化为机器可读的语言,从而实现自然语言与计算机之间的交互。而BIM(Building Information Modeling,建筑信息模型)辅助建模技术则可以帮助建筑师更好地设计建筑,提高设计效率和设计质量,尽管已有较多成熟的参数化建模辅助软件,但传统BIM软件依然依赖于专业人员的人工手动操作,对操作人员的软件使用技能和专业知识背景要求较高。另外,现有的大语言模型在处理专业领域的内容时仍有不足,如何将大语言模型与现有BIM软件结合是建筑行业有待解决的重要问题。
基于此,本发明实施提供的一种建筑信息的建模方法、装置及电子设备,可以缓解现有建筑信息建模技术在软件操作方面存在的专业知识门槛较高、人工操作效率较低等问题。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种建筑信息的建模方法进行详细介绍,参见图1所示的一种建筑信息的建模方法的流程示意图,该方法可以包括以下步骤:
步骤S102,基于用户输入的建筑信息,向预先训练好的大语言模型发送建筑信息的处理请求。
其中,上述处理请求可以包括BIM角色指令、响应规则和预设目标操作集合,上述预设目标操作集合可以包含完成预设操作目标所需的至少一个BIM操作,上述BIM角色指令可以表征大语言模型的响应内容范围。
上述建筑信息可以包含自然语言形式和/或非自然语言形式的内容,上述建筑信息可以为用户直接输入的文字信息和/或由用户直接输入的语音信息转换而成的文字信息,对此均不进行限定。
步骤S104,通过大语言模型基于预先配置的总操作集合,对处理请求进行响应。
其中,上述总操作集合可以包含预设BIM软件的全部或部分BIM操作。
示例性地,由于上述BIM角色指令用于指定大语言模型是充当BIM角色对处理请求进行响应的(即大语言模型的响应内容与BIM相关),且上述响应规则用于指定大语言模型是按照响应规则进行响应的,因而可预先为大语言模型配置总操作集合以指定大语言模型的响应内容是由预设BIM软件的全部或部分BIM操作决定的,以便大语言模型在收到建筑信息的处理请求时可按照响应规则进行与BIM相关的响应。
步骤S106,基于响应对应的操作内容,通过预设BIM软件生成建筑信息的建模结果。
上述响应的内容可以根据上述处理请求的内容进行确定,具体可以将所需执行的BIM操作组成预设目标操作集合作为操作内容包含在上述响应中,以便后续通过预设BIM软件执行该操作内容以生成建筑信息的建模结果。
本发明实施例提供的一种建筑信息的建模方法,基于用户输入的建筑信息,向预先训练好的大语言模型发送所述建筑信息的处理请求;其中,处理请求包括建筑信息、BIM角色指令、响应规则和预设目标操作集合,预设目标操作集合包含完成预设操作目标所需的至少一个BIM操作,BIM角色指令表征大语言模型的响应内容范围;通过大语言模型基于预先配置的总操作集合,对处理请求进行响应;其中,总操作集合包含预设BIM软件的全部或部分BIM操作;基于响应对应的操作内容,通过预设BIM软件生成所述建筑信息的建模结果。采用上述技术,通过大语言模型与BIM软件之间的协同,可以缓解现有建筑信息建模技术在软件操作方面存在的专业知识门槛较高、人工操作效率较低等问题。
作为一种可能的实施方式,上述步骤S102(即基于用户输入的建筑信息,向预先训练好的大语言模型发送建筑信息的处理请求)可以包括:如果建筑信息的内容包含自然语言且建筑信息的内容不包含预设禁用词,则基于建筑信息以及BIM角色指令、响应规则和预设目标操作集合,生成处理请求,并将所述处理请求发送给所述大语言模型。
作为一种可能的实施方式,上述建筑信息的建模方法还可以包括:如果建筑信息的内容不包含自然语言,则生成第一提示信息;如果建筑信息的内容包含自然语言且建筑信息的内容包含预设禁用词,则生成第二提示信息。
示例性地,在得到用户输入的某建筑信息时,可判断该建筑信息的内容是否包含自然语言;如果该建筑信息的内容不包含自然语言,则可生成一条提示信息以提示该建筑信息的内容不包含自然语言;如果该建筑信息的内容包含自然语言,则进一步判断该建筑信息的内容是否包含禁用词汇;如果该建筑信息的内容包含禁用词汇,则生成一条提示信息以提示该建筑信息的内容包含禁用词汇;如果该建筑信息的内容不包含禁用词汇,则将该建筑信息与BIM角色指令、响应规则和预设目标操作集合一同作为处理请求的内容生成一条处理请求,并将该处理请求发送给LLM。
作为一种可能的实施方式,上述基于预先配置的总操作集合,对处理请求进行响应的步骤可以包括:从处理请求中获取所述建筑信息、所述BIM角色指令、所述响应规则和所述预设目标操作集合;如果预设目标操作集合中至少有一个BIM操作不与总操作集合中的BIM操作对应匹配,则可基于BIM角色指令对处理请求进行表征目标BIM操作无法实现的第一响应;如果预设目标操作集合中的每个BIM操作均与总操作集合中的相应BIM操作对应匹配,则基于BIM角色指令对处理请求进行表征目标BIM操作能够实现的第二响应。
接续前例,LLM在收到建筑信息的处理请求后,可先解析处理请求以将处理请求中的建筑信息、BIM角色指令、响应规则和预设目标操作集合提取出来,之后通过查找总操作集合的方式判断总操作集合中是否有相应的BIM操作与该处理请求所包含的预设目标操作集合中的每个BIM操作对应匹配;如果预设目标操作集合中至少有一个BIM操作在总操作集合中匹配不到相应的BIM操作,说明预设目标操作集合中的全部BIM操作均可以实现,则可通过LLM基于BIM角色指令充当BIM角色生成响应消息Response={status:“fail”+msg:{原因}};如果预设目标操作集合中的每个BIM操作在总操作集合中均能匹配到相应的BIM操作,则可通过LLM基于BIM角色指令充当BIM角色生成响应消息Response={status:“success”,msg:“OutputActionSet”},OutputActionSet为列表形式的预设目标操作集合,OutputActionSet包含多个字典内容格式的outputAction(即BIM操作)。
作为一种可能的实施方式,上述步骤S106(即基于响应对应的操作内容,通过预设BIM软件生成建筑信息的建模结果)可以包括:如果上述响应的内容格式与上述第一响应的内容格式一致,则生成第三提示信息;如果上述响应的内容格式与上述第二响应的内容格式一致,则通过预设BIM软件执行预设目标操作集合中的全部BIM操作,得到上述建筑信息的建模结果;如果上述响应的内容格式与上述第一响应和上述第二响应的内容格式均不一致,则重新执行上述步骤S102(即基于用户输入的建筑信息,向预先训练好的大语言模型发送建筑信息的处理请求)。
接续前例,在得到LLM生成的Response后,可判断该Response是否符合内容格式要求(即该Response的内容格式是否为前文中Response所呈现的内容格式);如果该Response符合内容格式要求且该Response中status对应的值为“fail”,则生成一条提示信息以提示该Response不符合内容格式要求;如果该Response符合内容格式要求且该Response中status对应的值为“success”,则可为预设目标操作集合中的每个BIM操作调用预设BIM软件的相应API,以通过预设BIM软件执行预设目标操作集合中的全部BIM操作从而生成建筑信息的建模结果;如果该Response不符合内容格式要求,则重新将建筑信息与BIM角色指令、响应规则和预设目标操作集合一同作为处理请求的内容生成一条处理请求并将该处理请求发送给LLM。
作为一种可能的实施方式,上述预设目标操作集合中的每个BIM操作具有各自的执行顺序号;基于此,上述执行预设目标操作集合中的全部BIM操作的步骤可以包括:按照执行顺序号依次执行预设目标操作集合中的每个BIM操作。
接续前例,LLM在基于BIM角色指令充当BIM角色生成响应消息Response={status:“success”,msg:“OutputActionSet”}时,OutputActionSet所包含的每个outputAction各自的内容可以包括BIM操作的名称、BIM操作对应的输入参数、BIM操作的执行顺序号等,相应地,在通过预设BIM软件执行预设目标操作集合中的全部BIM操作时,可按照执行顺序号依次为预设目标操作集合中的每个BIM操作调用预设BIM软件的相应API进行BIM操作,从而通过预设BIM软件生成建筑信息的建模结果。
作为一种可能的实施方式,上述建筑信息的建模方法还可以包括:提供用户界面,以供用户对用户界面进行建筑信息的输入操作。基于此,上述建筑信息的建模方法还可以包括:通过用户界面显示以下中至少之一:上述建模结果、上述第一提示信息、上述第二提示信息、上述第三提示信息、上述响应的内容。
为了便于理解,在此以某一具体应用对上述建筑信息的建模方法的操作方式进行示例性描述如下。
参见图2所示,上述建筑信息的建模方法的数据交互结构可以包括代理系统20以及与代理系统20均连接的大语言模型(LLM)21、BIM软件22和用户界面23,在该数据结构下,上述建筑信息的建模方法可以按照以下步骤进行:
步骤1,构建代理系统20,用于连接LLM 21和BIM软件22以及接收用户通过用户界面23输入的信息(UserRequest)。
上述步骤1中,代理系统20可以指连接LLM 21并通过用户界面23与用户交互的软件系统,其功能主要包括:接收用户通过用户界面23输入的文字、语音等信息(即UserRequest),对UserRequest进行预处理,对UserRequest、LLM 21生成的数据以及BIM软件22的操作数据等进行存储,对LLM 21的反馈结果进行分析和处理。
步骤2,设置角色(Role)和输出要求指令(OutputRequireInstruction),并为LLM21设定BIM软件22的操作集(BIMActionSet)。
上述步骤2中,设置角色可以指设置BIM角色指令,该BIM角色指令用于指定LLM 21所扮演的BIM角色。BIM角色指令的形式可以为“BIM角色要求+BIM角色修饰词+BIM角色目的”。例如,BIM角色指令采用文字形式的内容“要求你担任BIM工程师,具有丰富的BIM建模经验,擅长BIM软件XXX的操作”,其中的“XXX”具体指BIM软件22的软件名称,可根据实际情况将“XXX”设置为Revit、Bentley等,对此不进行限定;在向LLM 21输入BIM角色指令后,LLM21可通过提取该BIM角色指令中如“BIM”、“XXX软件”、“操作”等词作为参考字段进行后续响应内容的预测,从而保证LLM 21响应的内容与BIM相关。此外,由于LLM 21的训练成本较高,为了减少模型训练的计算量,可基于Lora(Long Range Radi,远距离无线电)技术利用建筑行业的特定BIM操作数据集进行LLM 21的针对性训练和微调,使其更好的适应特定建模场景。
上述步骤2中,BIMActionSet可以指由用于实现BIM软件22自身建模功能的BIM操作以及通过二次开发实现的BIM操作所组成的操作集合(也即操作集指令),其形式可以为由多个Action(即BIM操作)所构成的列表,每个Action的格式可以为字典,例如{action_name:“”,action_input:{},action_output:{}}形式的字典,action_name为BIM操作的名称,action_input为BIM操作的输入参数,action_output为BIM操作的输出结果。字典的字段还可根据具体处理需求调整,对此不进行限定;例如某个用于绘制直线的Action的字典形式为{action_name:“create line”,action_input:{startpoint:{x:double,y:double,z:double},endpoint:{x:doubl e,y:double,z:double}}}。
上述步骤2中,输出要求指令可以用于指定LLM 21在响应代理系统20时按照预设形式向代理系统20发送响应消息(Response)。例如,输出要求指令可以采用文字形式的内容“如果输入内容不能实现,请按Response={status:“fail”+msg:{原因}}回答,如果输入内容可实现请从操作集中输出完成内容所需的操作列表,请按Response={status:“success”,msg:“OutputActionSet”}回答,其中OutputActionSet为包含完成操作目标所需的操作集合列表,其内容形式为outputAction={order:“”,action_name:“”,action_input:{}},其中order为操作的序号,action_name为操作名称,action_input为操作对应的输入参数“,“操作集合列表”具体可以指上述预设目标操作集合。
步骤3,代理系统20处理用户通过用户界面23输入的信息,并向LLM 21发送处理请求(AgentRequest)。
上述步骤3中,用户输入的信息又可被认为是用户请求指令(UserRequest),代理系统20处理UserRequest可以分为UserRequest预处理和生成AgentRequest两个阶段。UserRequest预处理可以包括:判断UserRequest是否包含自然语言;如果UserRequest不包含自然语言,则反馈提示信息(AgentResponse)到用户界面23上进行显示以提示用户输入的信息不包含自然语言,预处理完成;如果UserRequest包含自然语言,则判断UserRequest是否包含禁用词汇;如果UserRequest包含禁用词汇,则反馈AgentResponse到用户界面23上进行显示以提示UserRequest包含禁用词汇,预处理完成;如果UserRequest不包含禁用词汇,则为UserRequest添加上述步骤2中的角色指令和OutputRequireInstruction,预处理完成。生成AgentRequest可以包括:生成初始处理请求,并将UserRequest以及上述步骤2中的角色指令和OutputRequireInstruction封装在该初始处理请求中,得到AgentRequest。
上述步骤3中,代理系统20在进行UserRequest预处理时,可直接反馈预处理结果给用户,例如当UserRequest无具体自然语言内容时在用户界面23上显示“无可处理内容”等。
步骤4,LLM 21分析代理系统20发送的AgentRequest,并向代理系统20返回Response。
步骤5,代理系统20处理LLM 21返回的Response,并通过BIM软件22及用户界面23呈现Response的执行结果。
上述步骤5中,对Response进行处理可以指:针对Response的内容进行解析,并判断Response是否符合预设格式要求(即上述输出要求指令所指定的Response的格式要求);如果Response不符合预设格式要求,则重新生成AgentRequest并为AgentRequest添加标识信息(如“严格按照”等字段)以指示LLM 21按照预设格式要求生成相应的Response,以及将该AgentRequest发送给LLM 21,直至LLM 21超过一定次数返回的Response均无法符合预设格式要求后,反馈AgentResponse到用户界面23上进行显示以提示Response不符合预设格式要求;如果Response符合预设格式要求,则进一步判断Response中status所对应的值是否为“success”;如果Response中status所对应的值为“success”,则通过BIM软件22执行Response中msg对应OutputActionSet所包含的操作,保存执行结果并封装执行结果(BIMActionResult)以生成AgentResponse,将AgentResponse反馈到用户界面23上进行显示;如果Response中status对应的值为“fail”,则反馈AgentResponse到用户界面23上进行显示以提示Response中status对应的值为“fail”。
上述步骤5中,通过BIM软件22执行Response中msg对应OutputActionSet所包含的操作可以指:根据order按顺序用action_name对应的值查询BIMActionSet中对应的Action并将action_input对应的值作为输入参数调用BIM软件22的对应API执行相应的操作内容,从而在BIM软件22中呈现出UserRequest的建模结果。
经过上述步骤1至步骤5后,用户还可根据用户界面23上显示的AgentResponse进一步通过用户界面23输入UserRequest,转至上述步骤3,直至用户停止输入UserRequest或关闭代理系统20。具体地,由于UserRequest的建模结果会在BIM软件22中进行呈现,且相关信息会在用户界面23上进行显示,因而用户可根据BIM软件22中呈现的建模结果以及用户界面23上显示的相关信息进行下一步操作。
参见图3所示,上述步骤3至步骤5可以简化描述为以下操作方式:用户输入UserRequest;代理系统生成AgentRequest;LLM生成Response;代理系统处理Response;代理系统判断Response是否符合格式要求;如果Response符合格式要求,则重新进行代理系统生成AgentRequest的步骤;如果Response符合格式要求,则代理系统判断Response中status对应的值是否为“success”;如果Response中status对应的值为“success”,则BIM软件执行OutputActionSet,BIM软件生成BIMActionResult,呈现结果(包括BIM软件呈现建模结果、用户界面显示AgentResponse);如果Response中status对应的值为“fail”,则进行呈现结果的步骤。用户可根据呈现结果进行下一次的UserRequest输入操作。
为了便于理解,图4至图5示出了上述建筑信息的建模方法的具体应用实例:参见图4所示,用户在用户界面上输入“要求你担任BIM工程师,具有丰富的BIM建模经验,擅长BIM软件Revit的操作,请根据我后续的输入内容进行分析,如果输入内容不能实现,请按Response={status:“unable do it”+msg:{原因}}回答,如果输入内容可实现请从操作集中输出完成内容所需的操作列表,请按Response={status:“success”,msg:“OutputActionSet”}回答,其中OutputActionSet为包含完成操作目标所需的操作集合列表,其内容形式为outputAction={order:“”,action_name:“”,action_input:{}},其中order为操作的序号,action_name为操作名称,action_input为操作对应的输入参数。如果你理解我的意思,请回复copied”,代理系统(即agent)与LLM(即chatGPT)进行相应的回复,回复内容如图4所示;进一步地,参见图5所示,用户在用户界面上输入建模自然语言“在原点位置创建沿x方向创建3m长,高5m的墙”(如图5所示),agent预处理建模自然语言后向chatGPT发送处理请求,chatGPT生成响应消息Response={status:"success",msg:OutputActionSet:[{order:1,action_name:"Create Walls",action_input:{Height:"3m",Length:"5m",Location:[X:0,Y:0,Z:0]}}]};参见图6所示,agent接收Response后根据Response中OutputActionSet对应的值调用Revit中“Create Wall”的API完成创建墙的操作,在Revit中呈现建模结果(如图6所示)。
此外,上述大语言模型除了可以采用chatGPT以外,还可以采用其他模型(如Llama、chatGLM等开源模型),对此不进行限定。在构建大语言模型的训练集时,可将相应请求内容(即自然语言的建筑信息)与相应操作指令组成相应的文本对,从而构建出多个文本对,之后将每个文本对作为一个训练样本,从而构建出包含多个训练样本的训练集;利用构建出的训练集对大语言模型进行训练,并在训练过程中对开源预训练模型进行微调、剪枝等处理,从而得到训练好的大语言模型。为了描述简洁,在此并不对具体训练过程进行重点阐述。
上述建筑信息的建模方法通过构建代理系统及指令,以实现BIM软件系统与大语言模型之间的结合,实现了BIM软件系统的以自然语言输入操作命令。
基于上述建筑信息的建模方法,本发明实施例还提供一种建筑信息的建模装置,参见图7所示,该装置可以包括以下模块:
请求模块702,用于基于用户输入的建筑信息,向预先训练好的大语言模型发送所述建筑信息的处理请求;其中,所述处理请求包括所述建筑信息、BIM角色指令、响应规则和预设目标操作集合,所述预设目标操作集合包含完成预设操作目标所需的至少一个BIM操作,所述BIM角色指令表征所述大语言模型的响应内容范围。
响应模块704,用于通过所述大语言模型基于预先配置的总操作集合,对所述处理请求进行响应;其中,所述总操作集合包含预设BIM软件的全部或部分BIM操作。
生成模块706,用于基于所述响应对应的操作内容,通过预设BIM软件生成所述建筑信息的建模结果。
本发明实施例提供的一种建筑信息的建模装置,基于用户输入的建筑信息,向预先训练好的大语言模型发送所述建筑信息的处理请求;其中,处理请求包括建筑信息、BIM角色指令、响应规则和预设目标操作集合,预设目标操作集合包含完成预设操作目标所需的至少一个BIM操作,BIM角色指令表征大语言模型的响应内容范围;通过大语言模型基于预先配置的总操作集合,对处理请求进行响应;其中,总操作集合包含预设BIM软件的全部或部分BIM操作;基于响应对应的操作内容,通过预设BIM软件生成所述建筑信息的建模结果。采用上述技术,通过大语言模型与BIM软件之间的协同,可以缓解现有建筑信息建模技术在软件操作方面存在的专业知识门槛较高、人工操作效率较低等问题。
上述处理请求还可以包括上述BIM角色指令、上述请求模块702还可以用于:如果所述建筑信息的内容包含自然语言且所述建筑信息的内容不包含预设禁用词,则基于所述建筑信息以及所述BIM角色指令、所述响应规则和所述预设目标操作集合,生成所述处理请求,并将所述处理请求发送给所述大语言模型。
上述请求模块702还可以用于:如果所述建筑信息的内容不包含自然语言,则生成第一提示信息;如果所述建筑信息的内容包含自然语言且所述建筑信息的内容包含预设禁用词,则生成第二提示信息。
上述响应模块704还可以用于:从所述处理请求中获取所述建筑信息、所述BIM角色指令、所述响应规则和所述预设目标操作集合;如果所述预设目标操作集合中至少有一个BIM操作不与所述总操作集合中的BIM操作对应匹配,则基于所述BIM角色指令对所述处理请求进行表征所述目标BIM操作无法实现的第一响应;如果所述预设目标操作集合中的每个BIM操作均与所述总操作集合中的相应BIM操作对应匹配,则基于所述BIM角色指令对所述处理请求进行表征所述目标BIM操作能够实现的第二响应。
上述生成模块706还可以用于:如果所述响应的内容格式与所述第一响应的内容格式一致,则生成第三提示信息;如果所述响应的内容格式与所述第二响应的内容格式一致,则通过预设BIM软件执行所述预设目标操作集合中的全部BIM操作,得到所述建筑信息的建模结果;如果所述响应的内容格式与所述第一响应和所述第二响应的内容格式均不一致,则重新执行基于用户输入的建筑信息,向预先训练好的大语言模型发送所述建筑信息的处理请求的步骤。
参见图7所示,该装置还可以包括:
显示模块708,用于提供用户界面,以供用户对所述用户界面进行建筑信息的输入操作。
上述显示模块708还可以用于:通过所述用户界面显示以下中至少之一:所述建模结果、所述第一提示信息、所述第二提示信息、所述第三提示信息、所述响应的内容。
本发明实施例所提供的建筑信息的建模装置,其实现原理及产生的技术效果和前述建筑信息的建模方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
本发明实施例还提供了一种电子设备,如图8所示,为该电子设备的结构示意图,其中,该电子设备包括处理器81和存储器80,该存储器80存储有能够被该处理器81执行的计算机可执行指令,该处理器81执行该计算机可执行指令以实现上述建筑信息的建模方法。
在图8示出的实施方式中,该电子设备还包括总线82和通信接口83,其中,处理器81、通信接口83和存储器80通过总线82连接。
其中,存储器80可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口83(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线82可以是ISA(IndustryStandard Architecture,工业标准体系结构)总线、PCI(Peripheral ComponentInterconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线82可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器81可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器81中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器81可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessor,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器81读取存储器中的信息,结合其硬件完成前述实施例的建筑信息的建模方法的步骤。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对步骤、数字表达式和数值并不限制本发明的范围。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种建筑信息的建模方法,其特征在于,所述方法包括:
基于用户输入的建筑信息,向预先训练好的大语言模型发送所述建筑信息的处理请求;其中,所述处理请求包括所述建筑信息、BIM角色指令、响应规则和预设目标操作集合,所述预设目标操作集合包含完成预设操作目标所需的至少一个BIM操作,所述BIM角色指令表征所述大语言模型的响应内容范围;
通过所述大语言模型基于预先配置的总操作集合,对所述处理请求进行响应;其中,所述总操作集合包含预设BIM软件的全部或部分BIM操作;
基于所述响应对应的操作内容,通过预设BIM软件生成所述建筑信息的建模结果。
2.根据权利要求1所述的方法,其特征在于,基于用户输入的建筑信息,向预先训练好的大语言模型发送所述建筑信息的处理请求的步骤包括:
如果所述建筑信息的内容包含自然语言且所述建筑信息的内容不包含预设禁用词,则基于所述建筑信息以及所述BIM角色指令、所述响应规则和所述预设目标操作集合,生成所述处理请求,并将所述处理请求发送给所述大语言模型。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
如果所述建筑信息的内容不包含自然语言,则生成第一提示信息;
如果所述建筑信息的内容包含自然语言且所述建筑信息的内容包含预设禁用词,则生成第二提示信息。
4.根据权利要求3所述的方法,其特征在于,基于预先配置的总操作集合,对所述处理请求进行响应的步骤包括:
从所述处理请求中获取所述建筑信息、所述BIM角色指令、所述响应规则和所述预设目标操作集合;
如果所述预设目标操作集合中至少有一个BIM操作不与所述总操作集合中的BIM操作对应匹配,则基于所述BIM角色指令对所述处理请求进行表征所述目标BIM操作无法实现的第一响应;
如果所述预设目标操作集合中的每个BIM操作均与所述总操作集合中的相应BIM操作对应匹配,则基于所述BIM角色指令对所述处理请求进行表征所述目标BIM操作能够实现的第二响应。
5.根据权利要求4所述的方法,其特征在于,基于所述响应对应的操作内容,通过预设BIM软件生成所述建筑信息的建模结果的步骤包括:
如果所述响应的内容格式与所述第一响应的内容格式一致,则生成第三提示信息;
如果所述响应的内容格式与所述第二响应的内容格式一致,则通过预设BIM软件执行所述预设目标操作集合中的全部BIM操作,得到所述建筑信息的建模结果;
如果所述响应的内容格式与所述第一响应和所述第二响应的内容格式均不一致,则重新执行基于用户输入的建筑信息,向预先训练好的大语言模型发送所述建筑信息的处理请求的步骤。
6.根据权利要求5所述的方法,其特征在于,所述预设目标操作集合中的每个BIM操作具有各自的执行顺序号;执行所述预设目标操作集合中的全部BIM操作的步骤包括:
按照执行顺序号依次执行预设目标操作集合中的每个BIM操作。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
提供用户界面,以供用户对所述用户界面进行建筑信息的输入操作。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
通过所述用户界面显示以下中至少之一:所述建模结果、所述第一提示信息、所述第二提示信息、所述第三提示信息、所述响应的内容。
9.一种建筑信息的建模装置,其特征在于,所述装置包括:
请求模块,用于基于用户输入的建筑信息,向预先训练好的大语言模型发送所述建筑信息的处理请求;其中,所述处理请求包括所述建筑信息、BIM角色指令、响应规则和预设目标操作集合,所述预设目标操作集合包含完成预设操作目标所需的至少一个BIM操作,所述BIM角色指令表征所述大语言模型的响应内容范围;
响应模块,用于通过所述大语言模型基于预先配置的总操作集合,对所述处理请求进行响应;其中,所述总操作集合包含预设BIM软件的全部或部分BIM操作;
生成模块,用于基于所述响应对应的操作内容,通过预设BIM软件生成所述建筑信息的建模结果。
10.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机可执行指令,所述处理器执行所述计算机可执行指令以实现权利要求1至8任一项所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310798202.4A CN116861507A (zh) | 2023-06-30 | 2023-06-30 | 建筑信息的建模方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310798202.4A CN116861507A (zh) | 2023-06-30 | 2023-06-30 | 建筑信息的建模方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116861507A true CN116861507A (zh) | 2023-10-10 |
Family
ID=88226175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310798202.4A Pending CN116861507A (zh) | 2023-06-30 | 2023-06-30 | 建筑信息的建模方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116861507A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117290379A (zh) * | 2023-11-27 | 2023-12-26 | 华南理工大学 | 一种自然语言转SQL和Revit数据交互的系统 |
CN117332069A (zh) * | 2023-11-16 | 2024-01-02 | 深圳大学 | 基于大语言模型的建筑信息模型智能提取方法及系统 |
-
2023
- 2023-06-30 CN CN202310798202.4A patent/CN116861507A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117332069A (zh) * | 2023-11-16 | 2024-01-02 | 深圳大学 | 基于大语言模型的建筑信息模型智能提取方法及系统 |
CN117332069B (zh) * | 2023-11-16 | 2024-03-19 | 深圳大学 | 基于大语言模型的建筑信息模型智能提取方法及系统 |
CN117290379A (zh) * | 2023-11-27 | 2023-12-26 | 华南理工大学 | 一种自然语言转SQL和Revit数据交互的系统 |
CN117290379B (zh) * | 2023-11-27 | 2024-03-15 | 华南理工大学 | 一种自然语言转SQL和Revit数据交互的系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116861507A (zh) | 建筑信息的建模方法、装置及电子设备 | |
CN109299458B (zh) | 实体识别方法、装置、设备及存储介质 | |
CN108595171B (zh) | 对象的模型生成方法、装置、设备及存储介质 | |
CN116860949B (zh) | 问答处理方法、装置、系统、计算设备及计算机存储介质 | |
US20190236155A1 (en) | Feedback for a conversational agent | |
CN110188185A (zh) | 多轮对话的处理方法、装置、设备和存储介质 | |
CN117494761A (zh) | 信息处理及模型训练方法、装置、设备、介质、程序产品 | |
JP7309811B2 (ja) | データ注釈方法、装置、電子機器および記憶媒体 | |
CN111462726A (zh) | 一种外呼应答方法、装置、设备及介质 | |
CN113190229A (zh) | 政务事项页面生成方法及装置 | |
CN110895924B (zh) | 一种文档内容朗读方法、装置、电子设备及可读存储介质 | |
US20220335227A1 (en) | Machine translation guided by reference documents | |
CN110147556B (zh) | 一种多向神经网络翻译系统的构建方法 | |
CN112000573B (zh) | 代码质量的监控方法、装置、计算机设备及介质 | |
CN114462376A (zh) | 基于rpa和ai的庭审笔录生成方法、装置、设备及介质 | |
CN113204626A (zh) | 基于知识图谱的交互方法、装置、终端和存储介质 | |
CN113314108A (zh) | 语音数据的处理方法、装置、设备、存储介质和程序产品 | |
CN110688859A (zh) | 基于机器学习的语义解析方法、装置、介质及电子设备 | |
US20240242718A1 (en) | Dialogue apparatus, dialogue method, and program | |
CN117874211B (zh) | 基于saas软件的智能问答方法、系统、介质及电子设备 | |
CN112668326B (zh) | 语句翻译方法、装置、设备及存储介质 | |
CN115496036A (zh) | 文本数据智能标注方法、装置、计算机设备和存储介质 | |
CN117315699A (zh) | 一种文档的处理方法、装置、设备及存储介质 | |
CN118170378A (zh) | 页面生成方法、装置、电子设备、存储介质以及程序产品 | |
CN117806622A (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 |