Skip to content

EURAC-EEBgroup/BrickLLM-App

Repository files navigation

BrickLLM

🧱 BrickLLM App

BrickLLM is a web app for generating RDF files following the BrickSchema ontology using Large Language Models (LLMs). It is based on the python library BrickLLM - pypi and github

📝 Citation

Please cite us if you use:

  • the library

DOI

  • the application

DOI

Brief description

The open-source python web app has been developed using Dash plotly and the dash mantine components. The tool can be used:

  • directly through the website hosted by Eurac Reserch at the following link
  • on-premises.

On-premises

It is recommended to use a virtual environment such as Pipenv or Pyenv. For example:

    pipenv shell --python 3.12.6
    pipenv install
    source $(pipenv --venv)/bin/activate

The tool is currently tested with Python 3.12.6. After installing the required libraries using the command

pip install -r requirements.txt

the application can start

  1. locally: running the command inside the folder BrickApp
python app.py

the actual port set up is: 8091

or create and use a docker container:

  1. build dev docker image:
    docker build --platform=linux/amd64 -t brick:dev .   
  1. run docker compose:
    docker compose up

Example

brick_audio_480.mp4

Possible issue running locally on Mac:

If there are these allerts

objc[9558]: +[NSString initialize] may have been in progress in another thread when fork() was called.
objc[9558]: +[NSString initialize] may have been in progress in another thread when fork() was called. We cannot safely call it or ignore it in the fork() child process. Crashing instead. Set a breakpoint on objc_initializeAfterForkError to debug.

run in terminal:

    export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES

🤝 Contributing

We welcome contributions to BrickLLM! Please see our contributing guidelines for more information.

📜 License

BrickLLM is released under the BSD-3-Clause License. See the LICENSE file for details.

🫂 Contacts

For any questions or support, please contact:

💙 Acknowledgements

This work was carried out within European projects:

BrickLLM

Moderate - Horizon Europe research and innovation programme under grant agreement No 101069834, with the aim of contributing to the development of open products useful for defining plausible scenarios for the decarbonization of the built environment


Thank you to Brick for the great work it is doing