KJNodes/model_loadersgenerated

CheckpointLoaderKJ

이 노드는 표준 로딩 프로세스에 여러 가중치 정밀도(예: FP8, FP16, BF16) 및 계산 정밀도 제어 기능을 추가합니다.

Checkpoint Loader KJ

MODEL
CLIP
VAE
ckpt_name
COMBO
weight_dtype
COMBO
compute_dtype
default
patch_cublaslinear
sage_attention
0
enable_fp16_accumulation
KJNodes

CheckpointLoaderKJ 노드는 표준 로딩 프로세스에 더해 다양한 가중치 정밀도(예: FP8, FP16, BF16) 및 계산 정밀도 제어 기능을 추가합니다.

CheckpointLoaderKJ는 체크포인트 파일에서 Stable Diffusion 모델을 로드하기 위한 실험적인 모델 로딩 노드입니다. 핵심 기능은 모델, CLIP 텍스트 인코더 및 VAE 디코더를 로드하고, 모델에 대한 특정 성능 최적화 및 정밀도 조정을 지원하는 것입니다.

노드 기능

이 노드는 표준 로딩 프로세스에 더해 다양한 가중치 정밀도(예: FP8, FP16, BF16) 및 계산 정밀도 제어 기능을 추가합니다. 주요 기술 메커니즘에는 계산 효율성을 높이기 위해 PyTorch의 선형 계층을 패치하는 데 CublasLinear을 선택적으로 사용하는 것과, 기본 어텐션 메커니즘을 대체하기 위해 SageAttention을 통합하는 것이 포함됩니다. 이러한 최적화는 특정 하드웨어(예: FP8을 지원하는 GPU)에서 추론 속도를 높이거나 VRAM 사용량을 줄이는 것을 목표로 합니다.

노드 파라미터 설명 - CheckpointLoaderKJ

연결 입력 (Inputs)

파라미터 이름데이터 타입필수기본값범위/옵션설명
ckpt_nameFOLDER_PATHS--ckpt_name (입력 파라미터): 로드할 체크포인트(모델) 파일의 이름을 지정합니다. 이 파일은 ComfyUI가 지정한 모델 디렉토리에 위치해야 합니다.

컨트롤 파라미터 (Parameters)

파라미터 이름데이터 타입필수기본값범위/옵션설명
weight_dtypeCOMBOdefault"default", "fp8_e4m3fn", "fp8_e4m3fn_fast", "fp8_e5m2", "fp16", "bf16", "fp32"메모리 사용량과 계산 정밀도를 제어합니다.
compute_dtypeCOMBOdefault"default", "fp16", "bf16", "fp32"fp16, bf16, fp32. 순전파 과정의 수치 정밀도에 영향을 줍니다.
patch_cublaslinearBOOLEANFalse-cublas_ops 인자의 활성화 또는 비활성화
sage_attentionCOMBOfalsefalse, trueComfy 어텐션을 패치하여 sageattn을 사용합니다.
enable_fp16_accumulationBOOLEANFalse-torch.backends.cuda.matmul.allow_fp16_accumulation을 활성화합니다. 최소 PyTorch 버전 2.7.1이 필요합니다.

출력 (Output)

파라미터 이름데이터 타입설명
MODELMODELMODEL (출력 파라미터): 로드된 Stable Diffusion 메인 모델을 출력합니다. 이미지 디노이징 및 생성에 사용됩니다.
CLIPCLIPCLIP (출력 파라미터): CLIP 텍스트 인코더를 출력합니다. 텍스트 프롬프트를 모델이 이해할 수 있는 임베딩 벡터로 변환하는 데 사용됩니다.
VAEVAEVAE (출력 파라미터): 변분 자동 인코더를 출력합니다. 잠재 공간 표현을 픽셀 이미지로 인코딩 및 디코딩하는 역할을 합니다.

사용 시나리오

속도와 품질의 균형을 맞추기 위해 모델 정밀도를 정밀하게 제어해야 하는 워크플로에서 이 노드는 매우 유용합니다. 예를 들어, 최적화된 모델을 배치 이미지 생성에 배포할 때, 사용자는 먼저 이 노드를 통해 FP8 정밀도로 모델을 로드한 다음, KSampler에 연결하여 효율적인 추론을 수행할 수 있습니다. 또한 SageAttention과 같은 다양한 어텐션 메커니즘이 생성 결과에 미치는 영향을 테스트하는 데에도 사용할 수 있습니다.

주의사항

이 노드는 "실험적"으로 표시되어 있으며, 기능이 불안정하거나 버전 업데이트에 따라 변경될 수 있습니다. enable_fp16_accumulation과 같은 기능을 활성화하려면 특정 버전의 PyTorch(2.7.1 이상)가 필요하며, FP8과 같은 일부 최적화는 하드웨어 지원이 필요합니다.

CheckpointLoaderKJ 노드 소스 코드 링크

CheckpointLoaderKJ 노드는 ComfyUI-KJNodes 노드 패키지에서 제공됩니다.

댓글

GitHub로 로그인하고 토론에 참여하세요.

댓글을 불러오는 중…