This is the official Github Repo for I-Design: Personalized LLM Interior Designer
Requirements
Install the requirements
conda create -n idesign python=3.9 conda activate idesign pip install -r requirements.txt conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=11.3 -c pytorch pip install -U git+https://github.com/NVIDIA/MinkowskiEngine conda install -c dglteam/label/cu113 dgl
Create the "OAI_CONFIG_LIST.json" file
[
{
"model": "gpt-4",
"api_key": "YOUR_API_KEY"
},
{
"model": "gpt-4-1106-preview",
"api_key": "YOUR_API_KEY"
},
{
"model": "gpt-3.5-turbo-1106",
"api_key": "YOUR_API_KEY",
"api_version": "2023-03-01-preview"
}
]Inference
Create the scene graph and allocate coordinate positions
from IDesign import IDesign i_design = IDesign(no_of_objects = 15, user_input = "A creative livingroom", room_dimensions = [4.0, 4.0, 2.5]) # Interior Designer, Interior Architect and Engineer i_design.create_initial_design() # Layout Corrector i_design.correct_design() # Layout Refiner i_design.refine_design() # Backtracking Algorithm i_design.create_object_clusters(verbose=False) i_design.backtrack(verbose=True) i_design.to_json()
Retrieve the 3D assets from Objaverse using OpenShape
git clone https://huggingface.co/OpenShape/openshape-demo-support cd openshape-demo-support pip install -e . cd .. python retrieve.py
Place the assets using the Blender Scripting Module using the script in the place_in_blender.py file
Evaluation
After creating scene renders in Blender, you can use the GPT-V evaluator to generate grades for evaluation. Fill in the necessary variables denoted with TODO and run the script
python gpt_v_as_evaluator.py
