"""Generator half of H3, using the pinned official diffusers blocks. The shared Qwen3-VL conditioner is separate, as in the MiniMaxAI reference Space. """ from diffusers.modular_pipelines.minimax_h3.decoders import MiniMaxH3AfterDenoiseStep from diffusers.modular_pipelines.minimax_h3.modular_blocks_minimax_h3 import ( MiniMaxH3AutoKeyframeVaeEncoderStep, MiniMaxH3AutoResizeStep, MiniMaxH3CoreDenoiseStep, MiniMaxH3DecodeStep, _generation_outputs, ) from diffusers.modular_pipelines.modular_pipeline import SequentialPipelineBlocks class AnimationGeneratorBlocks(SequentialPipelineBlocks): model_name = 'minimax-h3' block_classes = [MiniMaxH3AutoResizeStep, MiniMaxH3AutoKeyframeVaeEncoderStep, MiniMaxH3CoreDenoiseStep, MiniMaxH3AfterDenoiseStep, MiniMaxH3DecodeStep] block_names = ['resize', 'vae_encoder', 'denoise', 'after_denoise', 'decode'] @property def description(self): return 'MiniMax H3 video and audio generation from externally encoded conditioning.' @property def outputs(self): return _generation_outputs()