- 강의 질문
- AI CREATIVE
Depth Anything 노드 에러 관련해서 질문드립니다
안녕하세요 Comfy UI 포터블 설치후에 Part 1 부터 별다른 에러나 이슈가 없이 올려주신 학습자료를 잘 따라하고 있었는데요,
Part 2 챕터 04. IP Adapter Controlnet 에서 올려주신 워크플로우 파일 30, 32 에서 DepthAnything 노드 부분이 Run을 하면 에러가 발생합니다.
"DepthAnythingPreprocessor
Input type (torch.FloatTensor) and weight type (torch.cuda.FloatTensor) should be the same or input should be a MKLDNN tensor and weight is a dense tensor. "
이런 창이 뜨고,
노드에도 이렇게 보라색 테두리가 떠있습니다,
제가 아직 Comfy UI 이해도가 없어서,
ChatGPT 한테 물어보니
Load Image → Image to Device(GPU) → Depth Anything 이렇게 Image to Device 노드를 중간에 달아야한다 고 하더라구요
"최신 ComfyUI + 최신 PyTorch 환경에서는 Image to Device (gpu)
노드를 꼭 추가하는 것이 '사실상 필수'입니다.
최신 PyTorch(특히 2.1 이후)는 입력 텐서와 모델 가중치의 디바이스가 다르면 무조건 에러를 냅니다.
예전 버전은 암묵적으로 자동 .to() 처리하거나 CPU 우선 처리 가능했지만, 지금은 아닙니다.
ComfyUI는 '모델은 GPU에 올리지만, 입력 이미지는 CPU로 유지'함
Load Image 같은 노드는 CPU 텐서로 이미지를 불러옵니다.
반면 Depth Anything, Normal BAE, OpenPose 등은 GPU에 올라간 모델을 사용합니다.
그래서 입력을 GPU로 명시적으로 보내주지 않으면 에러가 납니다."
라고해서, 이럴 경우 버전을 낮춰서 학습을 하는게 좋을까요?
저는 지금
ComfyUI 포터블 버전: v0.3.41
Python 버전: 3.11.8
PyTorch 최신 (2.5.1+cu121) + CUDA 가능
으로 학습하고 있습니다
간혹 ChatGPT가 잘못된 정보를 알려주기도 해서 해결방법이 맞는지 질문 드립니다
어렵게 생각했던 Comfy UI 를 이해하기 쉽게 좋은 커리큘럼으로 잘 만들어주셔서 많은 도움이 되고있습니다. 감사합니다 :)