Official codebase for the paper titled "IDfRA: Self-Verification for Iterative Design in Robotic Assembly" (ICRA 2026)
git clone https://github.com/nishkakhendry/iterative_dfra.git
conda env create -f environment.yaml
conda activate idfra
IDfRA uses the GPT-4o for all LLM and VLM functionalities via OpenAI API: create a file named .env in the root directory of the repository and include OPENAI_API_KEY=[your api key]
prompting_and_structure/: modified code from BloxNet for GPT prompting, structural functionsblocksets/: all blocksets used for assembly generation
run_idfra_pipeline.py: runs end-to-end IDfRA pipeline in simulationpick_and_place_env.py: custom simulation environment class, modified from SayCanrobot_suction.py: custom suction gripper classutils.py: misc functions for dimension switch, plots, picturesvlm_resemblance_evaluation.py: runs VLM-based quantitative assessment
To iteratively generate assemblies using IDfRA, run:
python run_idfra_pipeline.py
