테마 전환

ComfyUI에서 FLUX.1 Kontext 사용하기: 다단계 편집과 캐릭터 일관성

Easton editorial illustration: three connected portrait frames showing input, background edit, and clothing edit, a small identity-lock badge spanning all three frames
12B
Kontext Dev 파라미터 규모
BFL 모델 카드는 FLUX.1 Kontext Dev를 120억 파라미터의 rectified flow transformer로 설명합니다.
1,026
KontextBench 이미지-지시 쌍
기술 보고서는 편집, 캐릭터 참조, 스타일 참조, 텍스트 편집 등을 평가하기 위해 실제 이미지-지시 쌍 1,026개를 사용합니다.
2.5
Diffusers 예제의 guidance_scale
모델 카드 예제의 시작값이며 모든 ComfyUI 워크플로에서 최적이라고 보장되는 값은 아닙니다.
数据来源: BFL 모델 카드 및 FLUX.1 Kontext 기술 보고서

"Black Forest Labs의 FLUX.1 Kontext Dev 모델 카드는 12B 파라미터, 연속 편집 기능, 출력 사용 범위와 Non-Commercial License 경계를 설명합니다."

은빛 단발, 호박색 눈, 정확한 의상 디테일을 갖춘 가상 캐릭터의 정면 이미지가 이미 만족스럽다고 가정해 보겠습니다. 두 번째 이미지에서는 무대만 도시 거리로 바꾸고 싶었지만 얼굴형, 머리색, 의상이 모두 함께 바뀌었습니다. 포즈와 표정을 더 수정하자 세 번째 라운드에서는 선명도까지 떨어지기 시작합니다. FLUX.1 Kontext가 유용한 지점이 바로 여기입니다. 입력 이미지를 맥락으로 사용하고 텍스트로 무엇을 바꾸고 무엇을 유지할지 지정하여 이미지를 매번 통째로 다시 생성할 때 생기는 변형을 줄입니다.

하지만 얼굴을 영구적으로 고정하는 도구는 아닙니다. Black Forest Labs는 여러 편집 사이에서 요소를 유지하는 능력을 보여 주었지만, 여섯 번 편집한 뒤 아티팩트와 품질 저하가 나타나는 실패 사례도 공개했습니다. 더 안전한 방법은 짧은 순서로 탐색하고 중간 이미지를 저장하며 라운드마다 주요 변수 하나만 바꾸는 것입니다.

FLUX.1 Kontext가 적합한 작업과 적합하지 않은 작업

FLUX.1 Kontext Dev는 입력 이미지와 텍스트 지시를 동시에 받는 12B 파라미터 이미지 편집 모델입니다. 배경이나 의상 교체, 일부 영역 변경, 스타일 변환, 텍스트 편집, 이전 라운드 출력에 이어서 수정하는 작업에 적합합니다.

요구 사항Kontext의 처리 방식프롬프트에서 유지할 항목주요 위험
인물은 유지하고 배경 교체배경만 변경face, pose, scale, position배경 변경이 얼굴이나 구도에도 영향
얼굴은 유지하고 의상 교체의상의 재질과 색만 설명facial features, hairstyle, expression의상과 체형이 함께 변형
제품이 놓인 환경 변경환경만 다시 작성shape, logo, material, proportions로고와 용기 비율이 다시 그려짐
여러 라운드로 이미지 시리즈 제작라운드마다 한 가지 차원만 변경매 라운드에 필수 유지 항목 반복작은 오차가 단계마다 누적
장기 캐릭터 자산 제작Kontext로 방향 탐색깨끗한 기준 이미지 저장학습 방식보다 장기 안정성이 낮음

Kontext는 다른 제어 방식과 해결하는 문제가 다릅니다. ControlNet은 포즈, 깊이, 윤곽을 고정하는 데 더 적합하고, LoRA는 캐릭터나 화풍을 장기간 재사용하는 데 더 적합합니다. IPAdapter는 참조 이미지의 조건을 주입하는 데 초점을 두며 FaceID 계열 방식은 얼굴 특징 유지에 중점을 둡니다.

Kontext Dev 설치: 모델 파일과 폴더

현재 ComfyUI 공식 튜토리얼의 기본 흐름은 FP8 scaled diffusion model, VAE, 두 개의 text encoder를 사용합니다. 모델을 다운로드하기 전에 BFL 약관에 동의해야 할 수 있습니다.

ComfyUI/models/
├── diffusion_models/
│   └── flux1-dev-kontext_fp8_scaled.safetensors
├── text_encoders/
│   ├── clip_l.safetensors
│   └── t5xxl_fp16.safetensors
└── vae/
    └── ae.safetensors

공식 튜토리얼에 따라 t5xxl_fp16.safetensors 대신 t5xxl_fp8_e4m3fn_scaled.safetensors를 사용할 수도 있습니다. 파일을 배치한 뒤 모델 목록을 새로 고칩니다. 로더에서 여전히 찾지 못한다면 폴더 이름과 파일의 완전성을 확인하고 ComfyUI를 재시작합니다. 일반적인 워크플로 가져오기와 노드 누락 문제는 ComfyUI 워크플로 재사용 가이드를 참고하십시오.

기본 템플릿 열기

ComfyUI 또는 ComfyUI Desktop을 업데이트하고 Workflow Templates에서 Flux.1 Kontext Dev를 찾습니다. 템플릿 진입점과 메뉴 이름은 인터페이스 업데이트에 따라 바뀔 수 있습니다. 보이지 않는다면 출처가 불분명한 노드 팩을 받기 전에 먼저 업데이트합니다.

첫 라운드 실행: 노드 연결과 영어 프롬프트

공식 Dev 워크플로의 기본 순서는 다음과 같습니다.

  1. Load Diffusion Model에서 flux1-dev-kontext_fp8_scaled.safetensors를 선택합니다.
  2. DualCLIP Load에서 clip_l.safetensors와 T5 encoder를 선택합니다.
  3. Load VAE에서 ae.safetensors를 선택합니다.
  4. Load Image(from output)에서 편집할 이미지를 불러옵니다.
  5. CLIP Text Encode에 영어 프롬프트를 입력합니다.
  6. Queue를 클릭하거나 Ctrl/Cmd + Enter로 실행합니다.

현재 ComfyUI 공식 페이지는 이 Kontext Dev 워크플로가 영어 프롬프트만 지원한다고 명시합니다. 한국어를 어느 정도 이해할 수 있다는 우연한 결과에 의존하지 마십시오. 짧고 구체적인 영어 지시로 시작해야 실패 원인이 모델, 프롬프트, 워크플로 중 어디에 있는지 판단하기 쉽습니다.

첫 라운드에서는 한 가지 대상만 변경하기

먼저 배경 교체만 시험하고 배경, 의상, 포즈, 나이, 화풍을 동시에 바꾸지 않습니다. 한 가지 대상만 수정하면 깨끗한 기준을 만들고 어떤 지시가 변형을 일으켰는지 찾기 쉽습니다.

Change the background to a city street at night.
Keep the person in the exact same position, scale, and pose.
Preserve the same facial features, hairstyle, expression, and clothing.

프롬프트 작성법: 변경 항목과 유지 항목 함께 명시하기

Kontext 프롬프트에는 품질 관련 단어를 잔뜩 넣을 필요가 없습니다. 대상, 동작, 불변 요소가 핵심입니다. beautiful, better, make it different 같은 표현은 편집 경계가 분명하지 않습니다. change, replace, keep, preserve는 모델이 변경 영역과 유지 영역을 구분하는 데 더 유용합니다.

상황불명확한 표현더 제어하기 쉬운 표현
배경 교체Put her on a beachChange the background to a beach while keeping the same face, pose, scale, and position
의상 변경Transform her into a VikingChange only the clothing to Viking armor while preserving facial features and hairstyle
제품 색상 변경Create a new bottle designChange only the bottle color to blue; preserve shape, logo placement, material, and proportions
스타일 변환Make it a sketchConvert to a pencil sketch while maintaining the original composition and subject identity

인물, 제품, 구도에서 유지할 표현

유지 대상프롬프트에 포함할 항목실패 신호
인물 정체성facial features, hairstyle, expression, body shape눈, 얼굴형, 머리 또는 나이가 바뀜
제품 형태shape, logo placement, material, proportions로고 철자, 용기 곡선 또는 재질이 바뀜
구도composition, camera angle, position, scale피사체 이동, 잘림 또는 원근 변화
포즈pose, hand position, body orientation팔다리 위치와 윤곽이 어긋남

포즈를 엄격하게 유지해야 한다면 Kontext 프롬프트에 더 많은 포즈 설명을 계속 추가하지 마십시오. 일반적으로 ControlNet으로 전환해야 한다는 신호입니다.

다단계 편집: 저장, 확인, 되돌리기

다단계 흐름에서는 Load Image(from output)을 사용해 이전 출력을 다음 라운드 입력으로 넣습니다. 배경, 의상 또는 액세서리, 가벼운 포즈나 표정, 조명과 스타일 순서로 진행하는 것이 좋습니다.

  1. 편집하지 않은 기준 이미지를 저장합니다.
  2. 첫 라운드에서는 배경만 바꾸고 round-01로 저장합니다.
  3. 두 번째 라운드에서는 의상이나 액세서리만 바꾸고 round-02로 저장합니다.
  4. 세 번째 라운드에서 가벼운 포즈나 표정을 수정합니다.
  5. 마지막에 스타일, 색조 또는 조명을 조정합니다.

반드시 되돌려야 하는 시점

얼굴형, 눈, 로고, 제품 비율 또는 선명도가 분명히 나빠지면 직전의 깨끗한 중간 이미지로 돌아갑니다. 이미 변형된 이미지 위에 “얼굴을 되돌려라”라는 지시를 추가하지 마십시오. 새 지시가 다른 영역까지 다시 그리고 오류도 다음 라운드로 가져갈 수 있습니다.

안전한 라운드 수는 정해져 있지 않습니다. BFL의 실패 사례에서는 여섯 번 편집한 뒤 눈에 띄는 아티팩트가 나타났지만, 이것이 “다섯 번은 안전하고 여섯 번째는 항상 실패한다”는 기준은 아닙니다. 입력 이미지, 변경 범위, 각 라운드의 지시가 결과에 영향을 줍니다.

캐릭터와 제품 일관성을 위한 실용 프롬프트

캐릭터는 she 또는 him만 쓰지 말고 관찰할 수 있는 특징을 설명합니다.

Change only the background.
Keep the same woman with short silver hair and amber eyes.
Preserve her facial features, hairstyle, expression, body shape, pose, and scale.

제품은 브랜드에 민감한 세부 요소를 불변 항목으로 나열합니다.

Place the same bottle on a marble counter.
Preserve the exact bottle shape, logo placement, label text, material, proportions, and camera angle.
Change only the environment and surrounding lighting.

이러한 프롬프트는 변형을 줄이지만 사람의 검수를 대체하지는 못합니다. 상업용 제품 이미지는 파일마다 로고, 텍스트, 비율, 패키지 정보, 재질을 확인해야 합니다. 실제 인물 이미지는 직접 소유하거나 사용 허가를 받은 자료만 사용합니다.

Dev, Pro, Max, FP8, GGUF 선택 방법

옵션접근 방식적합한 상황주의 사항
Kontext Dev로컬 open weights연구, 맞춤화, 로컬 개인정보 보호, 잦은 실험가중치에 Non-Commercial License 적용
Kontext ProAPI / Partner Nodes상업용 편집과 빠른 반복가격과 이용 약관은 현재 플랫폼 기준
Kontext MaxAPI / Partner Nodes더 강한 지시 이행과 텍스트 편집로컬 Dev 가중치와 동일하지 않음
FP8 scaledComfyUI 공식 튜토리얼의 기본 경로기본 노드로 빠르게 실행필요한 메모리는 환경과 해상도에 따라 달라짐
GGUF / Nunchaku커뮤니티 또는 특정 구현VRAM 사용량 절감 또는 속도 향상노드, 양자화 품질, 호환성을 직접 시험해야 함

“12GB면 항상 실행된다”거나 “16GB면 항상 빠르다”는 식으로 고정 기준을 두지 마십시오. 메모리 사용량은 T5, 해상도, VAE, 미리보기, offload, 추가 노드에도 영향을 받습니다. 자세한 내용은 ComfyUI 저사양 VRAM 및 속도 개선 가이드를 참고하십시오.

Guidance는 예제 값부터 시험하기

Hugging Face 모델 카드의 Diffusers 예제는 guidance_scale=2.5를 사용합니다. 시작점으로 쓸 수 있지만 ComfyUI 노드, 입력 이미지, 편집 범위가 다르므로 “1.5–2.5가 항상 최적”이라고 단정해서는 안 됩니다. 입력과 seed를 고정하고 한 번에 한 가지 파라미터만 조정해야 변화의 원인을 알 수 있습니다.

자주 발생하는 실패의 점검 순서

증상먼저 확인할 항목다음 단계
모델 목록에 파일이 없음폴더, 파일 이름, 다운로드 완전성모델 목록을 새로 고치고 재시작
프롬프트 효과가 거의 없음영어 사용 여부와 대상의 구체성change/replace로 변경 항목 명시
배경을 바꾼 뒤 얼굴도 변함여러 차원을 한 번에 바꿨는지 확인face, hairstyle, pose를 유지 항목에 추가
여러 번 편집할수록 흐려짐이미 변형된 출력을 계속 사용하는지 확인직전의 깨끗한 중간 이미지로 되돌리기
제품 로고가 바뀜logo와 label을 불변으로 지정했는지 확인편집 영역을 줄이고 사람이 검수
구도나 포즈가 제어되지 않음강한 구조 제어가 필요한지 판단ControlNet을 사용하거나 함께 적용
VRAM 부족FP8, T5, 해상도, 추가 노드GGUF, offload 또는 API 재검토

문제를 점검할 때는 입력 이미지와 seed를 고정하고 프롬프트 또는 파라미터 하나만 바꿉니다. 모델, 양자화, 해상도, 프롬프트를 한꺼번에 바꾸면 결과의 원인을 찾을 수 없습니다.

라이선스, 규정 준수, 최종 선택

FLUX.1 Kontext Dev 모델 가중치는 현재 FLUX.1 dev Non-Commercial License의 적용을 받습니다. 모델 카드는 생성 출력을 개인, 연구, 상업 목적으로 사용할 수 있다고 설명하지만, 이것이 Dev 가중치를 유료 서비스에 직접 통합해도 된다는 뜻은 아닙니다. 상업 배포 전에는 BFL의 현재 licensing을 확인해야 합니다. Pro와 Max는 API 제품이며 사용하는 플랫폼의 약관을 따릅니다.

최종 방식은 목표에 따라 선택할 수 있습니다.

  • 배경, 의상, 일부 영역을 단기간 바꾸고 개념을 탐색한다면 Kontext로 시작합니다.
  • 독창적인 캐릭터나 화풍을 장기간 안정적으로 재사용한다면 LoRA로 전환합니다.
  • 같은 얼굴 유지가 주된 목표라면 FaceID 계열 방식을 검토하고 초상권 사용 허가를 처리합니다.
  • 포즈, 윤곽, 구도를 엄격하게 유지해야 한다면 ControlNet을 사용합니다.
  • 참조 이미지의 스타일이나 피사체 조건을 새 생성에 주입하려는 목적이라면 IPAdapter를 검토합니다.

첫 라운드를 실행한 뒤 기준 이미지를 저장하고 “배경 → 의상 → 가벼운 동작 → 조명 또는 스타일” 순서로 진행합니다. Kontext의 장점은 변형이 전혀 없다고 보장하는 데 있지 않습니다. 각 변경에 명확한 맥락을 제공하고 문제가 생겼을 때 가장 가까운 깨끗한 버전으로 돌아갈 수 있다는 점에 있습니다.

ComfyUI에서 되돌릴 수 있는 Kontext 다단계 편집 수행하기

먼저 공식 Dev 템플릿을 실행한 뒤 한 라운드에 한 변수만 바꾸고 캐릭터, 제품, 구도에서 유지할 요소를 명확히 작성합니다.

  1. 1

    Step 1: 업데이트하고 템플릿 열기

    ComfyUI를 업데이트하고 Workflow Templates에서 Flux.1 Kontext Dev를 찾습니다. 템플릿이 없으면 설치 버전을 먼저 확인합니다.
  2. 2

    Step 2: 모델 파일 배치하기

    diffusion model, VAE, CLIP/T5 text encoders를 해당 폴더에 넣고 새로 고침하거나 재시작한 뒤 로더에서 파일을 찾는지 확인합니다.
  3. 3

    Step 3: 기준 이미지 불러오기

    Load Image(from output)에서 직접 소유하거나 사용 허가를 받은 이미지를 열고 편집하지 않은 기준 이미지를 따로 저장합니다.
  4. 4

    Step 4: 한 가지 변수부터 수정하기

    CLIP Text Encode에서 변경할 대상을 영어로 설명하고 얼굴, 포즈, 비율 또는 구도처럼 그대로 유지할 항목을 나열합니다.
  5. 5

    Step 5: 첫 라운드 출력 저장하기

    얼굴, 머리, 로고, 재질, 위치, 선명도를 확인합니다. 통과한 출력만 다음 라운드의 입력으로 사용합니다.
  6. 6

    Step 6: 변경 사항을 단계적으로 추가하기

    배경, 의상 또는 액세서리, 가벼운 동작, 조명 또는 스타일 순서로 진행하며 한 라운드에 한 가지 주요 차원만 바꿉니다.
  7. 7

    Step 7: 변형이 보이면 즉시 되돌리기

    얼굴, 제품 비율, 로고 또는 선명도가 뚜렷하게 나빠지면 직전의 깨끗한 출력으로 돌아가 변경 범위를 줄여 다시 시도합니다.
  8. 8

    Step 8: 다른 방법이 필요한지 판단하기

    캐릭터를 장기간 재사용하거나 얼굴을 엄격히 고정하거나 포즈를 정밀하게 제어해야 한다면 LoRA, FaceID 계열 방식 또는 ControlNet을 검토합니다.

FAQ

FLUX.1 Kontext와 LoRA는 어떻게 다른가요?
Kontext는 사전 학습 없이 입력 이미지와 텍스트 지시로 바로 편집합니다. LoRA는 준비하거나 학습한 가중치가 필요하지만 고정된 캐릭터, 제품 또는 화풍을 장기간 재사용하는 데 더 적합합니다.
ComfyUI에서 Kontext Dev 모델 파일은 어디에 넣나요?
diffusion model은 models/diffusion_models/, ae.safetensors는 models/vae/, clip_l과 t5xxl text encoders는 models/text_encoders/에 넣습니다.
FLUX Kontext에서 캐릭터 얼굴이 바뀌는 현상을 줄이려면 어떻게 하나요?
한 라운드에 한 가지 차원만 수정하고 facial features, hairstyle, expression, pose, scale을 유지하라고 명시합니다. 이미 정체성이 달라졌다면 이전 중간 이미지로 돌아갑니다.
Kontext Dev 프롬프트를 한국어로 작성해도 되나요?
현재 ComfyUI 공식 Kontext Dev 워크플로 문서는 CLIP Text Encode가 영어 프롬프트만 지원한다고 안내합니다. 이 기본 워크플로에서는 간결한 영어 지시를 사용합니다.
여러 번 편집하면 이미지가 흐려지는 이유는 무엇인가요?
각 라운드는 이전 출력의 오차도 다음 단계로 가져가며 긴 편집 과정에서는 아티팩트가 생길 수 있습니다. 중간 버전을 저장하고 한 번의 변경 범위를 줄이며 변형이 보이면 되돌립니다.
FLUX.1 Kontext Dev를 상업적으로 사용할 수 있나요?
모델 가중치는 FLUX.1 dev Non-Commercial License의 적용을 받습니다. 상업 배포 전에는 BFL의 현재 라이선스를 확인해야 하며 생성 출력의 권리와 가중치 사용 권한은 별개의 문제입니다.

2분 읽기 · 게시일: 2026년 8월 21일 · 수정일: 2026년 8월 21일

댓글

GitHub로 로그인하여 댓글을 남기세요

Easton BlogEaston Blog