Skip to content

Latest commit

 

History

History
93 lines (62 loc) · 9.53 KB

File metadata and controls

93 lines (62 loc) · 9.53 KB
graph LR
    Configuration_Management["Configuration Management"]
    Data_Ingestion_Preprocessing["Data Ingestion & Preprocessing"]
    Streaming_Data_Loaders["Streaming Data Loaders"]
    Diffusion_Transformer_DiT_Architecture["Diffusion Transformer (DiT) Architecture"]
    Latent_Diffusion_Model_Orchestrator["Latent Diffusion Model Orchestrator"]
    Configuration_Management -- "configures" --> Data_Ingestion_Preprocessing
    Configuration_Management -- "configures" --> Streaming_Data_Loaders
    Configuration_Management -- "configures" --> Latent_Diffusion_Model_Orchestrator
    Data_Ingestion_Preprocessing -- "provides processed data to" --> Streaming_Data_Loaders
    Streaming_Data_Loaders -- "feeds data batches to" --> Latent_Diffusion_Model_Orchestrator
    Latent_Diffusion_Model_Orchestrator -- "utilizes" --> Diffusion_Transformer_DiT_Architecture
    Diffusion_Transformer_DiT_Architecture -- "returns results to" --> Latent_Diffusion_Model_Orchestrator
    click Data_Ingestion_Preprocessing href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/micro_diffusion/Data_Ingestion_Preprocessing.md" "Details"
    click Streaming_Data_Loaders href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/micro_diffusion/Streaming_Data_Loaders.md" "Details"
    click Diffusion_Transformer_DiT_Architecture href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/micro_diffusion/Diffusion_Transformer_DiT_Architecture.md" "Details"
Loading

CodeBoardingDemoContact

Details

The micro_diffusion project is structured around a core Latent Diffusion Model, orchestrated by the Latent Diffusion Model Orchestrator. This orchestrator leverages a Diffusion Transformer (DiT) Architecture for its generative capabilities. Data flow begins with Configuration Management, which dictates parameters for both Data Ingestion & Preprocessing and Streaming Data Loaders. The Data Ingestion & Preprocessing component is responsible for acquiring and transforming raw data into a usable format, which is then efficiently provided to the Streaming Data Loaders. These loaders, in turn, feed processed data batches to the Latent Diffusion Model Orchestrator for training and inference. The orchestrator interacts with the DiT architecture to compute and return results, forming a cyclical data flow during model training and generation.

Configuration Management

Centralized management of all project configurations, including dataset paths, model hyperparameters, training schedules, and inference settings. These configurations drive the behavior of the entire pipeline.

Related Classes/Methods:

Data Ingestion & Preprocessing [Expand]

Handles the entire lifecycle of data preparation, from initial acquisition of raw image and text datasets to their transformation into a standardized, clean, and model-consumable format. This includes downloading, cleaning captions, and converting data (e.g., to latent representations).

Related Classes/Methods:

Streaming Data Loaders [Expand]

Provides efficient, on-the-fly access to large preprocessed datasets, optimized for high-throughput data delivery during training and inference, often leveraging streaming capabilities to handle datasets larger than memory.

Related Classes/Methods:

Diffusion Transformer (DiT) Architecture [Expand]

Encapsulates the core neural network architecture of the Diffusion Transformer model. This includes the definition of its layers, blocks, forward pass logic, and weight initialization schemes. It leverages shared Model Utilities for common operations.

Related Classes/Methods:

Latent Diffusion Model Orchestrator

The central control component for the latent diffusion model's lifecycle. It manages the overall training loop, loss calculation (e.g., EDM loss), sampling procedures, and model creation. This component integrates the DiT architecture with data loaders and training utilities, and interacts with callbacks for monitoring and logging.

Related Classes/Methods: