| # CompI Project Structure | |
| This document outlines the organized structure of the CompI (Compositional Intelligence) project. | |
| ## π Directory Structure | |
| ``` | |
| Project CompI/ | |
| βββ π src/ # Source code (organized modules) | |
| β βββ π generators/ # Image generation modules | |
| β β βββ __init__.py # Module initialization | |
| β β βββ compi_phase1_text2image.py # Basic text-to-image | |
| β β βββ compi_phase1_advanced.py # Advanced generation | |
| β β βββ compi_phase1b_styled_generation.py # Style conditioning | |
| β β βββ compi_phase1b_advanced_styling.py # Advanced styling | |
| β β βββ compi_phase1d_evaluate_quality.py # Quality evaluation (Streamlit) | |
| β β βββ compi_phase1d_cli_evaluation.py # Quality evaluation (CLI) | |
| β β βββ compi_phase1e_dataset_prep.py # LoRA dataset preparation | |
| β β βββ compi_phase1e_lora_training.py # LoRA fine-tuning | |
| β β βββ compi_phase1e_style_generation.py # Personal style generation | |
| β β βββ compi_phase1e_style_manager.py # LoRA style management | |
| β βββ π models/ # Model implementations (future) | |
| β βββ π utils/ # Utility functions | |
| β β βββ __init__.py | |
| β β βββ logging_utils.py | |
| β β βββ file_utils.py | |
| β βββ π data/ # Data processing modules (future) | |
| β βββ π ui/ # User interface components (future) | |
| β βββ config.py # Project configuration | |
| β βββ setup_env.py # Environment setup script | |
| β βββ test_setup.py # Environment testing | |
| βββ π notebooks/ # Jupyter notebooks | |
| β βββ 01_getting_started.ipynb # Tutorial notebook | |
| βββ π data/ # Dataset storage | |
| βββ π outputs/ # Generated content | |
| β βββ images/ # Generated images | |
| β βββ metadata/ # Generation metadata | |
| βββ π tests/ # Unit tests (future) | |
| βββ π run_basic_generation.py # Convenience: Basic generation | |
| βββ π run_advanced_generation.py # Convenience: Advanced generation | |
| βββ π run_styled_generation.py # Convenience: Style conditioning | |
| βββ π run_advanced_styling.py # Convenience: Advanced styling | |
| βββ π run_evaluation.py # Convenience: Quality evaluation | |
| βββ π run_lora_training.py # Convenience: LoRA training | |
| βββ π run_style_generation.py # Convenience: Personal style generation | |
| βββ π requirements.txt # Python dependencies | |
| βββ π development.md # Development roadmap | |
| βββ π PHASE1_USAGE.md # Phase 1 usage guide | |
| βββ π PROJECT_STRUCTURE.md # This file | |
| βββ π .gitignore # Git ignore rules | |
| βββ π README.md # Project overview | |
| ``` | |
| ## π Usage Patterns | |
| ### Convenience Scripts (Recommended) | |
| Run from project root for easy access: | |
| ```bash | |
| # Basic text-to-image generation | |
| python run_basic_generation.py "prompt here" | |
| # Advanced generation with options | |
| python run_advanced_generation.py "prompt" --negative "unwanted" --steps 50 | |
| # Interactive style selection | |
| python run_styled_generation.py | |
| # Advanced style conditioning | |
| python run_advanced_styling.py "prompt" --style "oil painting" --mood "dramatic" | |
| # Quality evaluation interface | |
| python run_evaluation.py | |
| # LoRA personal style training | |
| python run_lora_training.py --dataset-dir datasets/my_style | |
| # Generate with personal style | |
| python run_style_generation.py --lora-path lora_models/my_style/checkpoint-1000 "prompt" | |
| # LoRA personal style training | |
| python run_lora_training.py --dataset-dir datasets/my_style | |
| # Generate with personal style | |
| python run_style_generation.py --lora-path lora_models/my_style/checkpoint-1000 "prompt" | |
| ``` | |
| ### Direct Module Access | |
| Run generators directly from their organized location: | |
| ```bash | |
| # Direct access to generators | |
| python src/generators/compi_phase1_text2image.py "prompt" | |
| python src/generators/compi_phase1b_advanced_styling.py --list-styles | |
| # Environment setup and testing | |
| python src/setup_env.py | |
| python src/test_setup.py | |
| ``` | |
| ## π― Benefits of This Organization | |
| ### 1. **Clean Separation of Concerns** | |
| - **`src/generators/`** - All image generation logic | |
| - **`src/utils/`** - Reusable utility functions | |
| - **`src/`** - Core project modules and configuration | |
| - **Root level** - Convenience scripts and documentation | |
| ### 2. **Professional Python Structure** | |
| - Proper module organization with `__init__.py` files | |
| - Clear import paths and dependencies | |
| - Scalable architecture for future expansion | |
| ### 3. **Easy Access** | |
| - Convenience scripts provide simple access from project root | |
| - Direct module access for advanced users | |
| - Maintains backward compatibility | |
| ### 4. **Future-Ready** | |
| - Organized structure ready for Phase 2+ implementations | |
| - Clear places for audio processing, UI components, etc. | |
| - Modular design supports easy testing and maintenance | |
| ## π§ Development Guidelines | |
| ### Adding New Generators | |
| 1. Create new generator in `src/generators/` | |
| 2. Add imports to `src/generators/__init__.py` | |
| 3. Create convenience script in project root if needed | |
| 4. Update documentation | |
| ### Adding New Utilities | |
| 1. Add utility functions to appropriate module in `src/utils/` | |
| 2. Update `src/utils/__init__.py` imports | |
| 3. Import in generators as needed | |
| ### Testing | |
| 1. Add tests to `tests/` directory | |
| 2. Use `src/test_setup.py` for environment verification | |
| 3. Test both convenience scripts and direct module access | |
| ## π Documentation | |
| - **README.md** - Project overview and quick start | |
| - **development.md** - Comprehensive development roadmap | |
| - **PHASE1_USAGE.md** - Detailed Phase 1 usage guide | |
| - **PROJECT_STRUCTURE.md** - This organizational guide | |
| This structure provides a solid foundation for the CompI project's continued development through all planned phases. | |