에피소드 9 ComfyUI Qwen i2i workflow 구성 순서를 보여주는 대표 이미지

에피소드 9: ComfyUI에서 Qwen i2i workflow 실패를 줄이는 순서

ComfyUI에서 Qwen-Image-Edit-2511 이미지 편집 workflow를 구성할 때 실패 지점을 줄이는 순서를 정리했습니다. 공식 workflow 업데이트, 모델 폴더 분리, edit workflow와 txt2img 분리, Open-WebUI 매핑 전 확인해야 할 지점을 작업일지 기반으로 설명합니다.

지난 편에서는 Qwen Image Edit 2511을 왜 ComfyUI에서 먼저 검증했는지 정리했습니다. 이번 편은 그 다음 단계입니다.

목표는 단순합니다. Open-WebUI에 붙이기 전에 ComfyUI 안에서 Qwen i2i workflow의 실패 지점을 먼저 줄입니다.

이미지 편집 자동화는 한 번에 연결하면 원인을 찾기 어렵습니다. 모델이 잘못 들어갔는지, workflow가 오래된 것인지, Open-WebUI 매핑이 틀린 것인지, GPU 메모리가 부족한 것인지가 한꺼번에 섞입니다. 그래서 이번 작업일지에서는 연결보다 순서를 먼저 고정했습니다.

1. 먼저 ComfyUI 업데이트 상태를 확인한다

Qwen-Image-Edit-2511은 최신 ComfyUI workflow template을 전제로 봐야 합니다. ComfyUI 공식 문서에서도 workflow template이 보이지 않거나 core node가 빠져 보이면 ComfyUI 버전이 오래되었을 수 있다고 안내합니다.

이번 작업에서도 처음부터 Open-WebUI 설정을 건드리지 않았습니다. 먼저 ComfyUI 쪽에서 공식 2511 workflow가 로드되는지, 필요한 node와 template 구조가 보이는지 확인했습니다.

여기서 한 번 막힌 지점이 있었습니다. 공식 2511 workflow에는 subgraph 구조가 들어 있었고, 일부 구조는 일반 node처럼 바로 보이지 않았습니다. 화면에서 보이는 workflow를 그대로 API prompt로 넘기기보다, subgraph 정의를 풀어서 실제 실행 가능한 형태로 확인하는 과정이 필요했습니다.

이 단계에서 얻은 기준은 하나입니다.

  • template이 안 보이면 Open-WebUI 문제가 아니라 ComfyUI 버전이나 workflow 로딩 문제부터 봅니다.
  • 화면에서 열리는 것과 자동화에서 호출 가능한 것은 다른 문제로 봅니다.
  • 최신 workflow를 쓸수록 먼저 ComfyUI 자체 검증을 끝내야 합니다.

2. 모델 파일은 한 폴더에 몰아넣지 않는다

Qwen-Image-Edit-2511은 모델 파일 하나만 넣고 끝나는 구조가 아닙니다. ComfyUI 공식 문서 기준으로 text encoder, diffusion model, VAE, 선택 LoRA가 서로 다른 모델 폴더에 들어갑니다.

정리하면 다음 흐름입니다.

  • text_encoders: 프롬프트를 모델이 이해할 수 있는 정보로 바꾸는 파일
  • diffusion_models: 실제 이미지 편집을 담당하는 중심 모델
  • vae: latent와 실제 이미지 사이를 변환하는 파일
  • loras: 4-step 가속 같은 선택 기능에 쓰는 파일

이번 작업에서는 RTX 5070 Ti 16GB 환경을 기준으로 BF16보다 가벼운 qwen_image_edit_2511_fp8mixed.safetensors를 우선 선택했습니다. 반복 테스트가 목적이라면 처음부터 가장 무거운 구성을 고집하기보다, 실제로 계속 돌릴 수 있는 구성을 먼저 잡는 편이 안전했습니다.

또 하나의 실제 판단이 있었습니다. Lightning LoRA는 아직 준비하지 않았기 때문에 workflow 안의 LoRA strength를 0으로 낮췄습니다. 없는 LoRA 때문에 전체 workflow가 실패하면, 모델 본체가 문제인지 LoRA 부재가 문제인지 구분하기 어렵기 때문입니다.

3. edit workflow는 txt2img와 분리한다

Open-WebUI의 ComfyUI 문서에서는 이미지 생성과 이미지 편집의 매핑 항목을 다르게 봅니다. 이미지 생성 쪽에는 prompt, model, width, height, steps, seed 같은 항목이 나오지만, 이미지 편집 쪽은 image, prompt, unet_name, width, height 중심입니다.

그래서 Qwen i2i workflow를 만들 때 기존 txt2img workflow를 그대로 가져와 편집용으로 쓰면 위험합니다. 특히 negative prompt, steps, seed, batch size, cfg 같은 값을 편집 workflow에 억지로 물리면 Open-WebUI가 보내지 않는 값이 들어오면서 None 주입 문제가 다시 생길 수 있습니다.

이번 작업일지에서도 이 판단을 먼저 고정했습니다.

txt2img workflow는 그대로 두고, edit image용 workflow를 별도로 둡니다.

이렇게 나눠야 다음 단계에서 문제가 생겼을 때 원인이 좁혀집니다. ComfyUI 직접 실행은 성공했는데 Open-WebUI에서만 실패한다면, 그때는 workflow 본체보다 Open-WebUI의 node mapping을 의심할 수 있습니다.

ComfyUI 업데이트, 모델 위치, Edit 분리, 직접 검증 순서를 보여주는 그래픽
업데이트, 모델 위치, Edit 분리, 직접 검증 순서로 workflow 실패 지점을 좁힙니다.

4. Open-WebUI로 넘길 값만 남긴다

매핑 단계에서는 욕심을 줄이는 편이 좋습니다. Open-WebUI edit image가 실제로 다루는 값만 먼저 연결합니다.

  • image: 편집할 입력 이미지
  • prompt: 편집 지시문
  • unet_name: 사용할 Qwen edit 모델
  • width: 출력 폭
  • height: 출력 높이

반대로 처음부터 넣지 말아야 할 값도 분명히 둡니다.

  • steps
  • seed
  • cfg
  • batch size
  • negative prompt

이 값들이 모델 내부나 순수 ComfyUI workflow에서는 의미가 있을 수 있습니다. 하지만 Open-WebUI의 edit image 매핑에서 지원하지 않는 값을 억지로 끼우면, 편집 자동화의 첫 실패 원인이 됩니다.

이번 에피소드의 두 번째 시각 자료는 바로 이 구분을 보여주기 위한 것입니다. 지원되는 값과 제외할 값을 눈으로 분리해 두면, 다음 편에서 Open-WebUI 설정으로 넘어갈 때 실수를 줄일 수 있습니다.

Qwen i2i workflow에서 지원되는 입력 매핑과 지원되지 않는 파라미터를 구분한 그래픽
image, prompt, unet_name, width, height는 매핑하고 unsupported parameter는 분리합니다.

5. 첫 실행은 속도보다 메모리를 본다

Qwen-Image-Edit-2511 workflow의 첫 실행은 평소 실행보다 무겁게 느껴질 수 있습니다. 모델 로딩이 함께 일어나기 때문입니다.

작업일지에서도 첫 실행 때 RAM과 VRAM 사용량이 크게 올라가는 것을 확인했습니다. 테스트 자체는 성공했지만, 상시 운영에 넣기 전에는 속도와 메모리 여유를 따로 봐야 한다는 결론을 남겼습니다.

여기서 중요한 점은 첫 실행 시간을 그대로 운영 속도로 착각하지 않는 것입니다. 첫 실행에는 모델 로딩 시간이 섞입니다. 실제 운영 판단은 모델이 로드된 뒤 같은 조건으로 다시 실행했을 때의 시간을 따로 봐야 합니다.

테스트 뒤에는 모델 캐시도 정리했습니다. 로컬 서버를 계속 켜 둘 환경이라면, 성공 여부만 보고 끝내지 말고 테스트 후 메모리 회수까지 확인하는 습관이 필요합니다.

6. 파란 원이 초록 원으로 바뀌는지 확인한다

이번 검증의 기준 이미지는 단순했습니다. 파란 원이 들어 있는 테스트 이미지를 넣고, 초록 원으로 바꾸는 편집 지시를 보냈습니다.

결과는 성공이었습니다. 입력 이미지는 초록 원으로 편집되어 저장됐고, 이 시점에 "모델과 ComfyUI 직접 workflow는 동작한다"는 기준점을 만들 수 있었습니다.

이 기준점이 있어야 다음 판단이 가능합니다.

  • ComfyUI 단독 실행은 성공했다.
  • 모델 파일 위치도 최소한 실행 가능한 상태다.
  • 그러면 다음 실패는 Open-WebUI 연결, workflow upload, node mapping 쪽에서 찾으면 된다.

자동화는 큰 그림보다 이런 작은 기준점이 중요합니다. 기준점 없이 한 번에 연결하면 실패했을 때 전부 의심해야 합니다. 기준점이 있으면 다음 문제를 좁혀 볼 수 있습니다.

7. 이번 편의 결론

Qwen i2i workflow를 만들 때 핵심은 "멋진 연결"이 아니라 "실패 지점 줄이기"입니다.

이번 작업에서 정한 순서는 다음과 같습니다.

  1. ComfyUI를 최신 workflow가 보이는 상태로 맞춘다.
  2. text encoder, diffusion model, VAE, LoRA 위치를 분리한다.
  3. edit workflow를 txt2img와 별도로 둔다.
  4. Open-WebUI edit image가 보내는 값만 매핑한다.
  5. 첫 실행의 메모리 사용량과 캐시 정리를 확인한다.
  6. 단순한 테스트 이미지로 결과 저장까지 검증한다.

이 순서대로 하면 Open-WebUI 연동 전에 이미 절반은 정리됩니다. 적어도 모델, ComfyUI workflow, 입력 이미지 처리 중 어디까지 정상인지 알 수 있기 때문입니다.

다음 편에서는 범위를 하나로 좁혀서 다루겠습니다.

Open-WebUI에서 ComfyUI edit workflow를 연결할 때, image/prompt/unet_name/width/height를 어떻게 매핑해야 하는지만 보겠습니다.

참고 문서

댓글 달기

위로 스크롤