Construction Safety Copilot is a multimodal application for reviewing construction site images and generating structured safety observations.
It is designed for workflows such as:
- site safety review
- preliminary hazard identification
- PPE guidance
- supervisor follow-up preparation
- toolbox talk preparation
- report drafting from field images and notes
Inline demo preview:
Full recording: View the demo video
Upload a construction site image and provide light project context such as work activity and field notes. The application returns:
- overall site risk level
- scene summary
- likely hazards and recommended actions
- PPE recommendations
- supervisor follow-up questions
- toolbox talk points
- downloadable Markdown report
The application supports two modes:
Demo Mode is intended for product walkthroughs, UI review, and low-cost testing.
In Demo Mode, the app:
- does not call the OpenAI API
- generates a realistic sample safety analysis
- allows the full workflow to be demonstrated without live inference
Live API Mode is intended for real image analysis.
In Live API Mode, the app:
- sends the uploaded image and user notes to the OpenAI API
- returns a structured safety observation
- uses API credits
- Review a site photo before a safety meeting.
- Generate a preliminary observation for field documentation.
- Draft toolbox talk points from visible conditions.
- Prepare supervisor follow-up questions from an image and short field notes.
- Create a report-ready summary for internal safety review.
- Upload a construction site image.
- Add optional project context and work activity notes.
- Run the safety analysis.
- Review the generated hazards, recommendations, and follow-up questions.
- Download a Markdown report.
- Python
- Streamlit
- OpenAI Responses API
- Pydantic
- python-dotenv
.
|-- app.py
|-- requirements.txt
|-- .env.example
|-- README.md
|-- examples
| |-- README.md
| |-- demo_case_01.md
| `-- demo_case_02.md
`-- src
|-- __init__.py
|-- openai_client.py
|-- reporting.py
`-- schemas.py
- Create and activate a virtual environment.
- Install dependencies:
pip install -r requirements.txt- Copy
.env.exampleto.envand add your API key:
OPENAI_API_KEY=your_api_key_here
OPENAI_MODEL=gpt-4.1-mini- Start the app:
streamlit run app.py- Start the app
- Leave
Demo mode (no API cost)turned on - Upload a construction image
- Review the generated output and report
- Add a valid OpenAI API key to
.env - Make sure API billing is active
- Turn off Demo Mode in the sidebar
- Upload an image and run analysis
Use the example scenarios in the examples/ folder for repeatable walkthroughs:
examples/demo_case_01.mdexamples/demo_case_02.md
- This tool provides an AI-assisted preliminary safety observation, not a certified inspection.
- Output quality depends on image clarity and the quality of the field context provided.
- The model may be uncertain when the image is incomplete, low-resolution, or visually ambiguous.
- Demo Mode is intended for walkthroughs; Live API Mode is what produces image-based model output.
- export polished PDF reports
- add saved inspection history
- improve risk tagging visuals
- support multiple images per review
- add object detection overlays
- map outputs to formal safety taxonomies
- compare observations across time
- support recurring site review workflows
The implementation uses the OpenAI Responses API with image input and structured outputs.



