文章標題
- 一、Flux Kontext Dev
- 1.關于 FLUX.1 Kontext Dev
- 1.1 版本說明
- 1.2 工作流說明
- 1.3 模型下載
- 2.Flux.1 Kontext Dev 工作流
- 2.1 工作流及輸入圖片下載
- 2.2 按步驟完成工作流的運行
- 3.Flux Kontext 提示詞技巧
- 3.1 基礎修改
- 3.2 風格轉換
- 3.3 角色一致性
- 3.4 文本編輯
- 4.常見問題解決
- 4.1 角色變化過大
- 4.2 構圖位置改變
- 4.3 風格應用不準確
- 5.核心原則
- 6.最佳實踐模板
- 二、字節跳動 USO
- 1.字節跳動 USO ComfyUI 原生工作流
- 1.1 工作流和輸入
- 1.2 模型鏈接
- 1.3 工作流說明
- 1.4 補充說明
一、Flux Kontext Dev
ComfyUI Flux Kontext Dev 原生工作流示例。
1.關于 FLUX.1 Kontext Dev
FLUX.1 Kontext 是 Black Forest Labs 推出的突破性多模態圖像編輯模型,支持文本和圖像同時輸入,能夠智能理解圖像上下文并執行精確編輯。其開發版是一個擁有 120 億參數的開源擴散變壓器模型,具有出色的上下文理解能力和角色一致性保持,即使經過多次迭代編輯,也能確保人物特征、構圖布局等關鍵元素保持穩定。
與 FLUX.1 Kontext 套件具備相同的核心能力:
角色一致性:在多個場景和環境中保留圖像的獨特元素,例如圖片中的參考角色或物體。
局部編輯:對圖像中的特定元素進行有針對性的修改,而不影響其他部分。
風格參考:根據文本提示,在保留參考圖像獨特風格的同時生成新穎場景。
交互速度:圖像生成和編輯的延遲極小。
雖然之前發布的 API 版本提供了最高的保真度和速度,但 FLUX.1 Kontext [Dev] 完全在本地機器上運行,為希望進行實驗的開發者、研究人員和高級用戶提供了無與倫比的靈活性。
1.1 版本說明
- [FLUX.1 Kontext [pro] - 商業版本,專注快速迭代編輯
- FLUX.1 Kontext [max] - 實驗版本,更強的提示遵循能力
- FLUX.1 Kontext [dev] - 開源版本(本教程使用),12B參數,主要用于研究
目前在 ComfyUI 中,你可以使用所有的這些版本,其中 Pro 及 Max 版本 可以通過 API 節點來進行調用,而 Dev 版本開源版本請參考本篇指南中的說明。
1.2 工作流說明
目前在本篇教程中,我們涉及了兩類工作流,本質上他們其實是相同的,
- 使用了組節點 FLUX.1 Kontext Image Edit 的工作流,使得整個界面和工作流復用起來變得簡單
- 而另一個工作流沒有使用組節點,是完整的原始工作流。
使用組節點的主要優點是工作流簡潔,你可以復用組節點來實現復雜的工作流,快速復用節點組,另外在新版本的前端中,我們也為 Flux.1 Kontext Dev 增加了一個快速添加組節點的功能:
- ComfyUI 下載
- ComfyUI 更新教程
本指南里的工作流可以在 ComfyUI 的工作流模板中找到。如果找不到,可能是 ComfyUI 沒有更新。
如果加載工作流時有節點缺失,可能原因有:
- 你用的不是最新開發版(nightly)。
- 你用的是穩定版或桌面版(沒有包含最新的更新)。
- 啟動時有些節點導入失敗。
1.3 模型下載
為了使本篇指南的工作流能夠順利運行,你先需要下載下面的模型文件,你也可以直接加載對應工作流下直接獲取模型的下載鏈接,對應的工作流已經包含了模型文件的下載信息。
Diffusion Model
- flux1-dev-kontext_fp8_scaled.safetensors
VAE
- ae.safetensors
Text Encoder
- clip_l.safetensors
- t5xxl_fp16.safetensors 或 t5xxl_fp8_e4m3fn_scaled.safetensors
安裝aria2快速下載模型,幾乎能將我家1000M的寬帶跑滿,每秒80~90M
,接下來的介紹模型都會給出安裝命令。
apt install aria2
aria2c https://huggingface.co/comfyanonymous/flux_text_encoders/resolve/main/t5xxl_fp8_e4m3fn_scaled.safetensors -o SourceCode/ComfyUI/models/text_encoders/t5xxl_fp8_e4m3fn_scaled.safetensors auto-file-renaming=false --allow-overwrite=falsearia2c https://huggingface.co/Comfy-Org/flux1-kontext-dev_ComfyUI/resolve/main/split_files/diffusion_models/flux1-dev-kontext_fp8_scaled.safetensors -o SourceCode/ComfyUI/models/diffusion_models/flux1-dev-kontext_fp8_scaled.safetensors auto-file-renaming=false --allow-overwrite=false
小技巧:你要是打不開https://huggingface.co
,可以將其換成為https://hf-mirror.com/
試一試
模型保存位置
📂 ComfyUI/
├── 📂 models/
│ ├── 📂 diffusion_models/
│ │ └── flux1-dev-kontext_fp8_scaled.safetensors
│ ├── 📂 vae/
│ │ └── ae.safetensor
│ └── 📂 text_encoders/
│ ├── clip_l.safetensors
│ └── t5xxl_fp16.safetensors 或者 t5xxl_fp8_e4m3fn_scaled.safetensors
2.Flux.1 Kontext Dev 工作流
這個工作流是正常的工作流,不過使用了 Load Image(from output)
節點來加載需要編輯的圖像可以讓你更方便地獲取到編輯后的圖像,從而進行多輪次編輯
2.1 工作流及輸入圖片下載
下載下面的文件,并拖入 ComfyUI 中加載對應工作流
輸入圖片
2.2 按步驟完成工作流的運行
你可參考圖片中的序號來完成圖工作流的運行:
- 在
Load Diffusion Model
節點中加載flux1-dev-kontext_fp8_scaled.safetensors
模型 - 在
DualCLIP Load
節點中確保:clip_l.safetensors
及t5xxl_fp16.safetensors
或t5xxl_fp8_e4m3fn_scaled.safetensors
已經加載 - 在
Load VAE
節點中確保加載ae.safetensors
模型 - 在
Load Image(from output)
節點中加載提供的輸入圖像 - 在
CLIP Text Encode
節點中修改提示詞,僅支持英文 - 點擊
Queue
按鈕,或者使用快捷鍵Ctrl(cmd) + Enter(回車)
來運行工作流
3.Flux Kontext 提示詞技巧
3.1 基礎修改
- 簡單直接:
"Change the car color to red"
- 保持風格:
"Change to daytime while maintaining the same style of the painting"
3.2 風格轉換
原則:
- 明確命名風格:
"Transform to Bauhaus art style"
- 描述特征:
"Transform to oil painting with visible brushstrokes, thick paint texture"
- 保留構圖:
"Change to Bauhaus style while maintaining the original composition"
3.3 角色一致性
框架:
- 具體描述:
"The woman with short black hair"
而非"she"
- 保留特征:
"while maintaining the same facial features, hairstyle, and expression"
- 分步修改:先改背景,再改動作
3.4 文本編輯
- 使用引號:
"Replace 'joy' with 'BFL'"
- 保持格式:
"Replace text while maintaining the same font style"
4.常見問題解決
4.1 角色變化過大
? 錯誤:"Transform the person into a Viking"
? 正確:"Change the clothes to be a viking warrior while preserving facial features"
4.2 構圖位置改變
? 錯誤:"Put him on a beach"
? 正確:"Change the background to a beach while keeping the person in the exact same position, scale, and pose"
4.3 風格應用不準確
? 錯誤:"Make it a sketch"
? 正確:"Convert to pencil sketch with natural graphite lines, cross-hatching, and visible paper texture"
5.核心原則
- 具體明確 - 使用精確描述,避免模糊詞匯
- 分步編輯 - 復雜修改分為多個簡單步驟
- 明確保留 - 說明哪些要保持不變
- 動詞選擇 - 用"change"、“replace"而非"transform”
6.最佳實踐模板
對象修改:
"Change [object] to [new state], keep [content to preserve] unchanged"
風格轉換:
"Transform to [specific style], while maintaining [composition/character/other] unchanged"
背景替換:
"Change the background to [new background], keep the subject in the exact same position and pose"
文本編輯:
"Replace '[original text]' with '[new text]', maintain the same font style"
記住: 越具體越好,Kontext 擅長理解詳細指令并保持一致性。
二、字節跳動 USO
使用字節跳動 USO 模型實現統一風格和主體驅動生成
USO (Unified Style-Subject Optimized) 是字節跳動 UXO 團隊開發的模型,統一了風格驅動和主體驅動生成任務。
基于 FLUX.1-dev 架構構建,該模型通過解耦學習和風格獎勵學習 (SRL) 實現了風格相似性和主體一致性。
USO 支持三種主要方法:
- 主體驅動:將主體放置到新場景中,同時保持身份一致性
- 風格驅動:基于參考圖像將藝術風格應用于新內容
- 組合模式:同時使用主體和風格參考
相關鏈接
- 項目主頁
- GitHub
- 模型權重
1.字節跳動 USO ComfyUI 原生工作流
請確保你的 ComfyUI 已經更新。- ComfyUI 下載
- ComfyUI 更新教程
本指南里的工作流可以在 ComfyUI 的工作流模板中找到。如果找不到,可能是 ComfyUI 沒有更新。
如果加載工作流時有節點缺失,可能原因有:
- 你用的不是最新開發版(nightly)。
- 你用的是穩定版或桌面版(沒有包含最新的更新)。
- 啟動時有些節點導入失敗。
1.1 工作流和輸入
下載下方圖像并拖拽到 ComfyUI 中以加載對應的工作流。
使用下面的圖片作為輸入
1.2 模型鏈接
checkpoints
- flux1-dev-fp8.safetensors
loras
- uso-flux1-dit-lora-v1.safetensors
model_patches
- uso-flux1-projector-v1.safetensors
clip_visions
- sigclip_vision_patch14_384.safetensors
安裝aria2快速下載模型,幾乎能將我家1000M的寬帶跑滿,每秒80~90M
,接下來的介紹模型都會給出安裝命令。
apt install aria2
aria2c https://huggingface.co/Comfy-Org/USO_1.0_Repackaged/resolve/main/split_files/loras/uso-flux1-dit-lora-v1.safetensors -o SourceCode/ComfyUI/models/loras/uso-flux1-dit-lora-v1.safetensors --auto-file-renaming=false --allow-overwrite=falsearia2c https://huggingface.co/Comfy-Org/USO_1.0_Repackaged/resolve/main/split_files/model_patches/uso-flux1-projector-v1.safetensors -o SourceCode/ComfyUI/models/model_patches/uso-flux1-projector-v1.safetensors --auto-file-renaming=false --allow-overwrite=falsearia2c https://huggingface.co/Comfy-Org/sigclip_vision_384/resolve/main/sigclip_vision_patch14_384.safetensors -o SourceCode/ComfyUI/models/clip_vision/sigclip_vision_patch14_384.safetensors --auto-file-renaming=false --allow-overwrite=false
小技巧:你要是打不開https://huggingface.co
,可以將其換成為https://hf-mirror.com/
試一試
請下載所有模型并將它們放置在以下目錄中:
📂 ComfyUI/
├── 📂 models/
│ ├── 📂 checkpoints/
│ │ └── flux1-dev-fp8.safetensors
│ ├── 📂 loras/
│ │ └── uso-flux1-dit-lora-v1.safetensors
│ ├── 📂 model_patches/
│ │ └── uso-flux1-projector-v1.safetensors
│ ├── 📂 clip_visions/
│ │ └── sigclip_vision_patch14_384.safetensors
1.3 工作流說明
-
加載模型:
- 1.1 確保
Load Checkpoint
節點已加載flux1-dev-fp8.safetensors
- 1.2 確保
LoraLoaderModelOnly
節點已加載dit_lora.safetensors
- 1.3 確保
ModelPatchLoader
節點已加載projector.safetensors
- 1.4 確保
Load CLIP Vision
節點已加載sigclip_vision_patch14_384.safetensors
- 1.1 確保
-
上傳圖像:
- 2.1 點擊
Upload
上傳我們提供的輸入圖像 - 2.2
ImageScaleToMaxDimension
節點將會縮放你的輸入圖像用于內容參考,512px 會保留更多的角色特征,但如果你僅使用角色頭部作為輸入,最終輸出圖像往往會有角色占據太多空間的問題(或者結果很糟)。設置為 1024px 會得到更好的結果。
- 2.1 點擊
-
在示例中,我們只使用
content reference
圖像輸入。如果你想使用style reference
圖像輸入,可以使用Ctrl+B
繞過標記的節點組。 -
編寫你的提示詞或保持默認設置
-
如果需要調整輸出圖像尺寸
-
EasyCache 節點用于推理加速,但也會犧牲一些質量和細節。如果不需要使用,可以用
Ctrl+B
繞過它。 -
點擊
Run
按鈕,或使用快捷鍵Ctrl(Cmd) + Enter
運行工作流
1.4 補充說明
- 僅使用風格參考:
我們在同一個工作流中也提供了僅使用風格參考的版本
唯一的區別是我們替換了 content reference
節點,僅使用 Empty Latent Image
節點來創建一個我們需要的圖像大小
- 你也可以 繞過(Ctrl+B) 整個
Style Reference
組,將工作流用作文本到圖像的工作流,也就是這個文本存在 4 個變體
- 僅使用內容(主體)參考
- 僅使用風格參考
- 混合內容及風格參考
- 作為文生圖工作流