🧩 它和“重抽一张图”有什么不同

Flux Kontext 是 Black Forest Labs 推出的上下文图像编辑模型家族,底层用的是 flow matching 架构,而不是传统的扩散路线。这个架构差异带来的实际体验是:它更像一个听得懂需求的修图师,而不是一个靠抽卡碰运气的画师。

传统图像模型的工作方式是“你描述整张画面,我重新画一张”。Flux Kontext 的工作方式是“你上传一张图,告诉我改哪里、保哪里,我只动你指定的部分”。这个区别听起来不大,但在实际修图场景里完全是两种体验——你不需要为了改一个背景颜色而把整张图重抽一遍,结果主角的脸又变了。

它最擅长的几件事:

  • 像素级局部编辑——只动你圈定的区域,其余部分保持原样。移除照片角落的杂物、调产品包装上某一处颜色,不会影响画面其他位置。
  • 角色一致性保持——保留图像中的独特元素(参考角色或物体),让它在多个场景和环境之间保持一致。做漫画分镜、角色设定图、多张品牌物料时特别有用。
  • 风格迁移——把照片转成油画、3D、草图或动漫风格,同时保留原始构图和主体结构。
  • 文字编辑——直接修改图片中已有的文字内容,支持字符一致性编辑。

它目前有两个版本:Flux-Kontext-ProFlux-Kontext-Max。Pro 更快更便宜,适合日常编辑;Max 质量更高,适合对细节要求苛刻的场景。

📦 三种安装路线,按你的工具选

路线一:Claude Code Skill(推荐给 Claude Code 用户)

如果你用 Claude Code 做开发,安装 flux-kontext skill 是最顺手的路径。在项目根目录执行:

npx skills add https://github.com/agentspace-so/runcomfy-agent-skills/tree/main/skills/flux-kontext

这个 skill 本质上是把 Flux Kontext Pro 的官方 prompting 模式打包成了 Claude 能读的指令文件。它调用的底层命令是 runcomfy run blackforestlabs/flux-1-kontext/pro/edit,通过本地 RunComfy CLI 执行。

装好之后不需要额外配置。Claude 检测到“flux kontext”“kontext”“BFL kontext”或任何明确要求用这个模型编辑图片的表述时,会自动触发。

路线二:MCP Server(推荐给 Cursor / Windsurf / VS Code 用户)

如果你用的不是 Claude Code,而是 Cursor、Windsurf、VS Code 或 Codex,可以通过 MCP 协议接入。在终端执行:

claude mcp add flux-kontext -s user -- npx -y @runapi.ai/flux-kontext-mcp

或者在你的 MCP 配置文件中手动添加:

{
  "mcpServers": {
    "flux-kontext": {
      "command": "npx",
      "args": ["-y", "@runapi.ai/flux-kontext-mcp"],
      "env": { "RUNAPI_API_KEY": "${RUNAPI_API_KEY}" }
    }
  }
}

这个 MCP server 暴露了三个工具:text_to_image(创建生成任务)、get_task(查询任务状态)和 check_pricing(查价格,无需密钥)。

你需要先在 runapi.ai 注册一个 API key,配置为环境变量 RUNAPI_API_KEY。支持 flux-kontext-maxflux-kontext-pro 两个模型。

路线三:ComfyUI 自定义节点(推荐给本地工作流用户)

如果你在 ComfyUI 里工作,社区有现成的节点包可以装。推荐 ComfyUI-TuZi-Flux-Kontext,支持文生图、单图编辑和多图融合三种模式:

cd ComfyUI/custom_nodes/
git clone https://github.com/LKbaba/ComfyUI-TuZi-Flux-Kontext.git
cd ComfyUI-TuZi-Flux-Kontext
pip install -r requirements.txt

第一次重启安装完成后,关闭 ComfyUI,填写 .env 文件中的 API key,再重启一次即可运行。Pro 模型约 0.14 元/次,Max 约 0.28 元/次。

另外,ComfyUI 官方模板库也已原生支持 Flux.1 Kontext Dev 版本,更新 ComfyUI 后在 Workflow → Browse Templates → Flux 里就能找到。

🛠️ 装好之后怎么用

不管走哪条路线,使用逻辑都是一样的:上传一张图 + 写一句编辑指令。模型只认这两个输入。

在 Claude Code 里,你直接这样说:

用 flux-kontext 把这张产品图背景换成纯白摄影棚,产品本身不要动。输出用 Pro 模型。

在 Cursor 或其他支持 MCP 的工具里,你可以先让 Agent 查一下价格再决定用哪个版本:

先帮我查一下 flux-kontext-pro 和 max 的价格,然后用便宜的版本改这张图:把天空换成阴天。

在 ComfyUI 里,用 Flux.1 Kontext - Editing 节点,连上输入图片,在 prompt 输入框里写编辑指令,选好 Pro 或 Max 模型,就可以跑。

几个典型的应用场景:

  • 电商产品图。换背景、调色、移除瑕疵,产品外观和 Logo 保持不变。
  • 漫画分镜和角色设定。同一个角色出现在不同场景里,脸型、发型、服装颜色保持一致。这是它区别于通用图像模型最明显的能力。
  • 品牌物料批量生产。一套产品图需要适配不同渠道的尺寸和风格,局部编辑比重新生成整张图更可控。
  • 老照片修复。去划痕、补缺失区域、调色,同时保留照片原有的年代感和人物特征。

💡 几个让出图更稳的提示词技巧

Flux Kontext 的提示词写法和很多图像模型不一样。它不需要堆画质词——“beautiful”“better”“make it different”这类词对它没有意义,因为它没有编辑边界的概念。它需要的是明确的对象、动作和不变量

  • 同时说明“改什么”和“保什么”。这是最核心的写法。不要只说“换背景”,要说“change the background to a snowy mountain landscape, keep the subject the same”。模型需要知道哪些东西你不想它碰。
  • 用具体名词,不用代词。写“the woman with short black hair”比写“她”有效得多。模型没有“刚才提到的那个她”这种上下文记忆,每次编辑都要重新点名。
  • 复杂编辑拆成多步。先改背景,确认效果后再改服装,最后调光线。一次只做一件事,成功率远高于一口气写一大段。
  • 在 ComfyUI 里用 Inpainting 节点可以大幅简化提示词。当你用 Kontext Inpainting Conditioning 节点圈定了遮罩区域之后,工作流只对遮罩区域生效,提示词可以简化到“turn hair silver”这种程度就够。
  • 颜色描述要精确。不要写“改成暖色调”,写“将主色调改为 #D4A574 的暖棕色”。模糊的颜色词是出图不稳定的主要原因之一。

🔀 什么时候用它,什么时候换别的

Flux Kontext 不是万能的。了解它的边界,比把它用在错误的场景里更省时间。

它的核心优势是单图、精准、可控。当你手里已经有一张满意的图,只想改其中一小块时,它是最顺手的工具。角色一致性保持也是它的强项——同一角色在多张图里保持脸型和特征。

但如果你需要的是多图融合(把好几张参考图合成一张新画面),Nano Banana 2 的 14 张参考图能力更合适。如果你需要在图片里渲染大量精确文字(海报、广告图),Nano Banana 2 的文本渲染管线更可靠——Flux Kontext 能处理文字编辑,但它不是为这个场景专门优化的。如果你需要从零生成一张全新的创意图,那应该用文生图模型,而不是编辑模型。

🤖 适合哪些 AI 工具

Flux Kontext 不绑定任何单一平台。只要工具能调用 Flux Kontext 的 API 或 MCP 接口,就能用上它的编辑能力。

目前经过验证的兼容方式包括:Claude Code(通过 skill 或 MCP server)、CursorWindsurfVS CodeCodex CLIRoo Code,以及任何支持 MCP 协议的宿主。在 ComfyUI 中则通过自定义节点或官方模板使用。

需要留意的是,Flux Kontext 的 Pro 和 Max 版本都是云端 API 调用,不是本地模型。如果你需要完全本地运行,可以关注 Flux.1 Kontext Dev 版本,它可以在自己的 GPU 上跑,但效果和 Pro/Max 有差距,且对提示词更敏感——有些提示词下 Dev 版本可能完全不做任何编辑。