This project demonstrates how to use Large Language Models (LLMs) with Graph Retrieval-Augmented Generation to parse and query Industry Foundation Classes (IFC) files. It allows users to ask plain-language questions about BIM data and get accurate answers powered by GPT-4o and a Neo4j graph database.
This repository is part of our paper accepted at EC³ 2025 (European Conference on Computing in Construction).
🔗 Read the paper on arXiv
The system has two main stages:
- Graph Generation – Converts an IFC file into a graph format using IFCOpenShell and stores it in Neo4j.
- LLM-based QA System – Uses GPT-4o with prompt engineering to answer questions about the IFC model using Cypher queries.
This project requires Python 3.8 or higher. To install all necessary dependencies, run:
pip install -r requirements.txtYou will also need:
- Neo4j Desktop or Neo4j Aura Cloud
- An OpenAI API key