AI-eXtended Design (AIXD)
Project description
AI-eXtended Design (AIXD)
Introduction
In the current repository we collect the code for the general methodology for AI-augmented generative design. This methodology allows to invert the standard paradigm of parametric modelling, where the designer needs to tweak and tune the input parameters, iteratively or through trial and error, for achieving some desired performance values.
Instead, this method allows to, by just specifying the requirements' values, obtain a range of designs that closely approximate those. Besides, the present methodology allows the user to explore the design space, understand how different parameters relate to each other, areas of feasible and unfeasible designs, etc.
Documentation
A detailed documentation of the aixd library is provided here. The documentation includes detailed installation instructions, API references, a user guide, application examples and more.
Installation
Requirements
- Python >= 3.9
The aixd library can be installed using uv, pip or conda. The recommended way is to use uv for its automatic PyTorch backend selection, but you can also use pip or conda if you prefer.
Note: It is recommended to use virtual environments to manage the dependencies of your projects.
Using conda
Create a new environment and install aixd:
conda create -n venv python=3.9
conda activate venv
conda install -c conda-forge aixd
Using pip
Create a virtual environment:
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
Install aixd:
pip install aixd
Using uv
Create a virtual environment:
uv venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
Install aixd with automatic PyTorch backend selection:
uv pip install aixd --torch-backend=auto
The --torch-backend flag automatically detects your CUDA driver, AMD ROCm driver, or Intel GPU and selects the most suitable PyTorch version. If no compatible GPU is found, the CPU version will be installed. For more information, refer to the uv documentation.
Latest development version
Install the latest version using pip from the git repository:
pip install --upgrade git+https://gitlab.datascience.ch/ai-augmented-design/aixd.git
Examples
The aixd toolbox includes a variety of example applications to showcase its features and usage. These examples are located in the examples folder and cover different design tasks, each with self-contained Jupyter notebooks and detailed explanations.
For more information about each example, refer to the corresponding README.md file within each example folder.
To run the examples, ensure you have downloaded the examples folder and installed the aixd library with all example dependencies:
pip install "aixd[examples]"
Development
If you are going to develop on this repository, perform an installation from source:
git clone https://gitlab.datascience.ch/ai-augmented-design/aixd.git
cd aixd
Create and activate a python virtual environment. Install all dependencies including the examples and development tools.
Using conda:
conda env create -f environment.yml
Or using pip:
pip install -e ".[examples, dev]"
Or using uv (recommended for proper torch backend selection):
uv pip install -e ".[examples, dev]" --torch-backend=auto
Check the contribution guidelines for more details.
Folders and structure
The structure we follow on the current repo is as follows:
examples: all example applications of theaixdtoolboxsrc: for all source code. It can be structure following the next structuressrc/aixd: source code ofaixdtoolbox
Known issues
- Plotly image export can cause a hang of the system. This is due to a bug in Kaleido (the library
used by Plotly for image export) reported in here. A workaround is to
downgrade Kaleido to version
0.1.0.post1, which can be done by runningpip install kaleido==0.1.0.post1.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aixd-1.0.1.tar.gz.
File metadata
- Download URL: aixd-1.0.1.tar.gz
- Upload date:
- Size: 155.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2b8b43b95ac1475f4ba3cf913e35e0253c780d593896667269edc1c1dbf4a248
|
|
| MD5 |
b4952d9f7c6bfba1eb4a8692b37fdcd5
|
|
| BLAKE2b-256 |
79bd03540648c23b6eeb1e358732b9b4a22e97fb9eabff15e70c67c7ae2daa9c
|
File details
Details for the file aixd-1.0.1-py2.py3-none-any.whl.
File metadata
- Download URL: aixd-1.0.1-py2.py3-none-any.whl
- Upload date:
- Size: 170.3 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
51f94c2941ee46341f7b446e4929d8f11e5ef3943842bd2a1bcca14f7d3096ec
|
|
| MD5 |
6f9138b2372da14217426f04e934a9e2
|
|
| BLAKE2b-256 |
b19e0f239c3e41877587e51835e8350e252ae73efc6276937bd8d937fcbd083a
|