单位 6 / 12

人工智能与 BIM 和建筑信息模型

收益:

  • 能够定义如何在 BIM 工作流程中的冲突检查、数据查询和自动化脚本中使用 AI
  • 能够小规模测试使用 AI 生成的 Dynamo/Python/pyRevit 脚本并在模型上进行验证
  • 能够以受控方式应用 AI 输出,同时保留 BIM 数据机密性和模型完整性

BIM(建筑信息模型:一种智能 3D 模型方法,不仅定义结构的几何形状,还定义每个元素的材料、尺寸、成本和时间信息)是现代建筑项目的数字骨干。使用 Revit、ArchiCAD、Tekla、Navisworks 等工具创建的 BIM 模型在从设计到制造和运营的整个过程中携带数据。 AI 在三个主要领域为 BIM 工作流程提供强大的帮助:解释冲突检查、查询模型数据以及编写自动执行重复任务的脚本。但由于 BIM 模型是项目的“单一事实来源”,因此对 AI 的任何干预都必须以受控方式进行,而不能损害模型完整性和数据机密性。在本单元中,我们将了解如何在 BIM 中安全高效地使用 AI。

人工智能在 BIM 中的三个主要角色

1.解释冲突检查。在 BIM 协调中,不同学科(建筑、静态、机械、电气)的模型被叠加并检测冲突(例如穿过梁的通风管道)。 Navisworks 等工具报告了数百个冲突。人工智能有助于总结这份报告并确定其优先顺序,区分哪些冲突是真正的问题,哪些冲突可以忽略。但最终的协调决定权属于工程师。

2.模型数据查询。 BIM模型是一个巨大的数据库:“三楼所有C30柱的混凝土总量是多少?”诸如此类的问题可以通过数据查询来回答。 AI 可以帮助您创建这些查询(例如时间表/表格构造或 Dynamo 图表)。

3.自动化脚本。可以使用 Dynamo(可视化编程)、pyRevit 或 Python API 自动执行重复性任务(重命名数百个元素、填充参数、导出表格)。人工智能在编写这些脚本方面非常强大。

这三个角色的共同点是,在 BIM 中,人工智能不会“设计模型本身”,而是为您生成数据和自动化。人工智能不会决定在哪里放置光束或如何穿过开口;这些是工程和架构决策。人工智能的价值在于加速做出这些决策后发生的重复、乏味且容易出错的工作。例如,报告模型中数千个元素的特定参数、将模型数据与电子表格进行比较,或者对所有元素应用标准命名约定,需要手动花费数小时,但使用人工智能支持的脚本只需几分钟。牢记这种区别可确保您将人工智能用于正确的工作:决定权在于工程师,同样是自动化。

提示:使用 AI 启动 BIM 自动化时,从小型、可逆的任务开始:读取参数、导出表格等。仅在测试和备份后才切换到对模型进行大量更改(删除、移动、重建)的脚本。

安全使用自动化脚本

AI 生成的脚本可以在几秒钟内更改模型中的数千个元素;错误传播得同样快,而且很难挽回。安全的工作流程:

  1. 获取备份。保留实际模型文件的副本(或在中央模型的本地副本中工作)。
  2. 小规模测试。首先在几个元素上尝试该脚本,目视检查结果。
  3. 阅读剧本。逐行理解AI编写的代码做了什么;不要运行您不理解的进程。
  4. 验证结果。变化是否如预期?其他元素是否意外受到影响?
  5. 然后将其应用到实际模型中。

# AI 生成的 pyRevit/Python 草图示例 — 先读,测试# 目的:报告所选墙壁的“耐火”参数#(仅读取,不会更改模型 — 安全启动)from Autodesk.Revit.DB import FilteredElementCollector,builtInCategorydoc = __revit__.ActiveUIDocument.Documentwalls = FilteredElementCollector(doc)\ .OfCategory(BuiltInCategory.OST_Walls)\ .WhereElementIsNotElementType()\ .ToElements()for d in wall: p = d.LookupParameter("Firesistance") value = p.AsString() if p else "UNDEFINED" print("Wall Id {0}: {1}".format(d.Id, value))# 注意:这个脚本只是读取。在没有进行备份并进行小规模测试的情况下,切勿运行写入/修改脚本。

弱提示/强提示

弱:“编写一个在 Revit 中组织墙壁的脚本。” (哪堵墙,哪个参数,读取或写入不清楚;危险。) 强:“用 pyRevit/Python 编写脚本。目的:读取所选墙的“防火”参数并将其报告在列表中。规则: - 不要对模型进行任何更改,只需读取它 - 如果没有参数,写“未定义”,不要给出错误 - 注释代码的每个部分,以便您了解什么 让我了解您所做的 - 写下来最后处理了多少面墙。我将在一个小的选择上测试这个脚本。”

BIM 数据、保密性和模型完整性

BIM 模型承载着项目的商业和技术秘密:成本、供应商、设计细节,有时还有个人数据。从隐私和知识产权的角度来看,将模型或大数据导出上传到公共人工智能服务都是有风险的。其次,模型完整性至关重要:人工智能自动化可能会扭曲参数名称、破坏关系或对元素进行错误分类。一旦模型出现问题,整个项目都会受到影响。

风险

如何预防

机密数据泄露

不将模型/数据上传到外部服务,将其匿名

模型畸变

进行备份,小规模测试

参数写入错误

读取脚本,验证结果

批量不可逆转的改变

处理复制模型

错误的冲突评论

将最终决定权留给工程师

三个迷你箱

案例 1 – 节省时间的自动化。 BIM 协调员 Zeynep 没有手动填写 1,200 个门的火灾参数,而是使用 AI 编写了 pyRevit 脚本。首先,它在 10 扇门上进行测试,检查结果,然后将其应用于所有门。原本人工需要 2 天的工作,在 20 分钟内就完成了;经过测试,没有错误。

案例 2 – 灾难避免。一名工程师即将运行人工智能编写的脚本,直接在实际模型上“清除不必要的元素”。当他阅读脚本时,他意识到过滤器安装不正确,并且会删除一些载体元素。如果没有备份和测试纪律,该模型就会崩溃。

案例 3 – 冲突优先级。 Navisworks 报告 800 个冲突。 AI 总结了该报告并强调了关键的“结构-机械”冲突。团队首先关注这些;但工程师决定每个冲突的实际解决方案。人工智能加速排序,而不是做出决定。

可复制的提示模板

安全编写脚本提示:“使用 pyRevit/Python 编写脚本。目的:[例如,将参数值写入选定的列]。强制规则: - 在事务中执行操作,并且可以一步撤消 - 仅对选定的元素进行操作,而不是整个模型 - 打印将更改的元素数量,并在运行之前要求确认 - 对每个部分进行评论。我将在一小部分选择上进行测试。”

冲突报告摘要提示:“总结并确定以下冲突报告的优先顺序:- 按学科对分组(结构-机械、机械-电气...)- 优先考虑需要真正解决的关键冲突- 分别标记可忽略(在公差范围内),我将做出最终决定。报告:[粘贴]”

常见错误

  • 在原始模型上运行AI编写的模型更改脚本,无需备份。
  • 运行脚本而不阅读它或理解它的作用。
  • 跳过小规模测试并直接应用于所有元素。
  • 将机密 BIM 数据/模型上传到公共 AI 服务。
  • 用人工智能对冲突的解释代替最终的协调决策。
  • 自动化后不验证模型完整性(关系、参数)。

综上所述

  • AI 是 BIM 中冲突解释、数据查询和自动化脚本的强大辅助工具。
  • 对于模型更改脚本:进行备份,小规模测试,阅读代码,验证结果,然后应用。
  • 从只读脚本开始;逐渐转向写入/删除操作。
  • 避免将机密 BIM 数据和模型上传到外部服务。
  • 模型完整性至关重要;检查自动化后的关系和参数。
  • 人工智能加速冲突优先排序;最终的协调决定权在于工程师。

应用任务

设计一个简单的只读 BIM 自动化(例如列出特定类别中元素的参数)。让 AI 用 pyRevit/Python 或 Dynamo 编写,无需修改和注释。然后:(1)逐行阅读代码并写下它的作用,(2)在一小部分选择上进行测试,(3)将结果与模型中的实际值进行比较,(4)评估您将使用的数据是否存在隐私风险。仅存储安全且经过验证的脚本。

清单

  • [ ] 我通过只读、安全的任务启动了自动化。
  • [ ] 我一行行阅读并理解了AI写的代码。
  • [ ] 我备份了模型/制作了副本。
  • [ ] 我对脚本进行了小规模测试并验证了结果。
  • [ ] 我检查了更改后的模型完整性(参数、关系)。
  • [ ] 我没有将机密 BIM 数据上传到外部服务。
  • [ ] 我将冲突/协调决定留给了工程师的批准。