본문 바로가기

딥러닝/생성AI

[diffusers] controlnet 코드 분석

코드 매우 심플한데, 효과적인 생성방법.

 

down block, mid block 부분 controlnet에서 떼옴 .

  down_block_res_samples, mid_block_res_sample = controlnet(
                    noisy_latents,
                    timesteps,
                    encoder_hidden_states=encoder_hidden_states,
                    controlnet_cond=controlnet_image,
                    return_dict=False,
                )

unet 의 down block부분과 mid block부분을 업데이트 함... 

 # Predict the noise residual
                model_pred = unet(
                    noisy_latents,
                    timesteps,
                    encoder_hidden_states=encoder_hidden_states,
                    down_block_additional_residuals=[
                        sample.to(dtype=weight_dtype) for sample in down_block_res_samples
                    ],
                    mid_block_additional_residual=mid_block_res_sample.to(dtype=weight_dtype),
                ).sample

n

'딥러닝 > 생성AI' 카테고리의 다른 글

sd, sdxl 아키텍처  (0) 2024.07.03
[prompt to prompt] 설치하기 & 에러들  (0) 2023.06.20