git404hub

what is constructdrawingai fr?

a-shojaei/constructdrawingai — explained in plain English

Analysis updated 2026-05-18

20PythonAudience · developerComplexity · 4/5LicenseSetup · moderate

tl;dr

An AI pipeline that reads construction drawings and extracts detections, connectivity graphs, and quantity takeoffs.

vibe map

mindmap
  root((ConstructDrawingAI))
    What it does
      Symbol detection
      Connectivity graphs
      Quantity takeoff
      Drawing Q&A and RFI
    Tech stack
      Python
      FastAPI
      PyTorch
    Use cases
      Detect electrical symbols
      Build P&ID connectivity graphs
      Compute floor plan takeoff
      Draft RFI from a drawing
    Audience
      Developers
      Construction tech teams
    Setup
      Install with uv
      Run backend API
      Provide detector weights
    License
      Noncommercial research
      Commercial license required

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Automatically detect symbols and components on electrical, architectural, or P&ID drawings.

VIBE 2

Generate a connectivity graph showing how components on a drawing are wired or piped together.

VIBE 3

Produce a quantity takeoff of counts, areas, and lengths from a drawing.

VIBE 4

Ask natural language questions about a drawing or draft an RFI document from it.

what's the stack?

PythonFastAPIPyTorch

how it stacks up fr

a-shojaei/constructdrawingaialex72-py/aria-termuxanime0t4ku/gentleman
Stars202020
LanguagePythonPythonPython
Setup difficultymoderatemoderatemoderate
Complexity4/52/52/5
Audiencedeveloperdevelopergeneral

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · moderate time til it works · 1h+

Requires Python 3.11+, the uv package manager, and trained detector weights for full functionality.

Free for noncommercial research and education, commercial use requires a separate license from the author.

in plain english

ConstructDrawingAI reads 2D construction drawings, such as electrical plans, architectural floor plans, and piping and instrumentation diagrams known as P&ID, and turns them into structured data a computer can reason about. It detects symbols and components on the drawing, builds a connectivity graph showing how those components are wired or piped together, produces a quantity takeoff of counts, areas, and lengths, and lets a user ask natural language questions about the drawing or draft a request for information document based on it. The project reports benchmark results against published research on real, held out test drawings, covering electrical, architectural, and P&ID symbol and connectivity detection, compared to prior published state of the art numbers where available. Internally, a drawing passes through five layers that all read and write one shared data format called the Canonical Intermediate Representation. The first layer ingests a PDF, DWG or DXF CAD file, an IFC building model file, or an image, and breaks large drawings into tiles. The second layer runs detection models to find symbols, components, and how they connect. The third layer maps those detections to standard building industry classification codes. The fourth layer computes the quantity takeoff. The fifth layer is an agent that answers questions and drafts RFI documents using everything extracted so far. Every value the system produces carries a confidence score and a link back to the original drawing sheet it came from. The codebase is organized by these same layers, with separate folders for the shared schema, ingestion, detection, code mapping, takeoff calculations, the question answering agent, evaluation tooling, a synthetic drawing generator for creating training data, and a FastAPI backend that exposes the whole pipeline as a web API with an included demo console. Running it requires Python 3.11 or newer and the uv package manager. After installing dependencies, a user can run the test suite, run a quantity takeoff on an existing CIR file from the command line, or start the backend API and demo console to upload a drawing image and get detection, takeoff, question answering, and RFI results back. The benchmark datasets used for evaluation carry their own separate licenses and are not stored in the git repository. The project itself is free to use for noncommercial research and education under the PolyForm Noncommercial License, and anyone wanting to use it commercially needs to contact the author for a separate license.

prompts (copy fr)

prompt 1
Walk me through the five layer pipeline this project uses to process a construction drawing.
prompt 2
Help me set up the project with uv and run the backend API locally.
prompt 3
Explain what the Canonical Intermediate Representation schema stores and why every layer shares it.
prompt 4
Show me how to run a quantity takeoff on an existing CIR file from the command line.
prompt 5
Explain the benchmark results in docs/BENCHMARKS.md and how they compare to prior published work.

Frequently asked questions

what is constructdrawingai fr?

An AI pipeline that reads construction drawings and extracts detections, connectivity graphs, and quantity takeoffs.

What language is constructdrawingai written in?

Mainly Python. The stack also includes Python, FastAPI, PyTorch.

What license does constructdrawingai use?

Free for noncommercial research and education, commercial use requires a separate license from the author.

How hard is constructdrawingai to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is constructdrawingai for?

Mainly developer.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.