AIREITER

FLUX 3 Image API:4K 与多参考图实战指南

最后更新: 2026-10-02 00:31:19

FLUX 3 Image 已通过 Black Forest Labs 自有的 Replicate 模型和多个合作伙伴端点上线,支持 4K 输出,以及基于最多 10 张参考图进行编辑。不过,BFL 的原生文档目前仍主要介绍 FLUX 3 Video;在图像服务商这里,接口结构、输入限制和计费方式各不相同。

FLUX 3 Image API 到底能不能用?

FLUX 3 Image API 确实已经可用,但“官方”这个说法需要先定义清楚。最有力的证据,是 Replicate 上由 Black Forest Labs 持有的在线模型页面 black-forest-labs/flux-3-image。它既支持文生图,也会在传入图像后切换到编辑模式,同时提供 4k 分辨率选项。

截至 2026 年 10 月 2 日核查的入口当前可用内容能够证明什么
Replicate 上的 BFL 模型black-forest-labs/flux-3-imageBFL 持有的模型;支持文生图、编辑、4K 和最多 10 张参考图
fal 合作伙伴端点blackforestlabs/flux-3/edit-image商业编辑端点,支持 1-10 张参考图、排队式 API,以及按分辨率计费
Layer API 文档bfl-flux-3-image通过异步工作区 API 支持 1K、2K、4K 生成和编辑
BFL 原生 API 文档文档中介绍了 FLUX 3 Video核查时未列出对应的原生 FLUX 3 Image 路由
flux3api.com 及社区封装独立的第三方服务名称相似,并不能证明其由 BFL 持有,也不能证明当前能访问 FLUX 3 Image
Replicate 上的 Black Forest Labs FLUX 3 Image 模型页面

BFL 关于 FLUX 3 的帮助文章目前只介绍视频模型;而独立的 BFL 持有的 Replicate 模型页面和合作伙伴端点,则验证了图像编辑能力确实存在。

在这个端点出现之前,Reddit 用户 u/rerri 曾预测它会以 API 优先的方式发布:

“如果 API-only 的 Flux 3 Image 先发布,我一点也不会惊讶。”——u/rerri,发布于 r/StableDiffusion

如今的发布路径确实符合这一判断,但能调用 API,并不意味着开放权重已经公开。

4K 和多参考图编辑,实际意味着什么?

FLUX 3 Image 提供 4k 输出选项,也最多接受 10 张参考图。但这两个参数都不能保证生成结果完整保留人物身份、产品细节或小字号文字。服务商页面目前提供的是参数说明和示例,并没有独立的质量评分。

BFL 持有的 Replicate README 列出了 768sq、1k、1.5k、2k 和 4k。参考文件支持 JPEG、PNG、GIF 或 WebP,尺寸至少为 256×256 像素,大小不得超过 16 megapixels。将 aspect_ratio 设为 auto 时,第一张参考图会决定编辑结果的宽高比。

fal 的编辑接口定义与此类似,但并不完全相同。它支持 1-10 个 URL 或 data URI,每张输入图上限为 4 megapixels,输出范围从 512sq 到 4k,并提示 4K 任务可能需要几分钟。参考图的顺序具有语义:image 1 指的是 image_urls 中的第一项。

控制项Replicatefal对生产环境的影响
最多参考图数量1010在提示词中明确写出每张输入图的编号
输入尺寸上限16 MP每张图 4 MP路由到服务商前先完成校验
输出选项768sq、1K、1.5K、2K、4K512sq、768sq、1K、2K、4K不要未经校验就让多个服务商共用同一套枚举值
自动宽高比由第一张参考图引导由第一张参考图引导把负责构图的参考图放在第一位
输出格式WebP、JPG、PNGJPEG、PNG下游文件处理需要统一格式逻辑
4K 延迟说明未公布实测延迟可能需要几分钟不要把 4K 放进交互式预览链路

处理多参考图编辑时,最好为每个输入明确分工:基础构图、主体身份、产品或风格。fal 自己的建议是每次请求只做一次编辑。比如,“以图 1 为基础,只将其中的瓶子替换为图 2 中的产品,保留拍摄角度、手部、光线和背景”,就比同时修改服装、字体和地点的复杂请求更容易检查。

一套适合生产环境的排队式 API 工作流

在生产环境中使用 FLUX 3 Image API,应当把生成任务当作异步作业处理。应用先上传稳定可访问的输入 URL,提交范围明确的请求,保存服务商返回的请求 ID,再通过退避策略轮询状态,最后把生成结果复制到自己的存储中。

下面的示例使用 fal 文档中的端点标识和请求字段。它是一个集成模板,并不表示本文核查期间实际执行过这段请求。

import os
import time
import requests

ENDPOINT = "https://queue.fal.run/blackforestlabs/flux-3/edit-image"
headers = {
    "Authorization": f"Key {os.environ['FAL_KEY']}",
    "Content-Type": "application/json",
}
payload = {
    "prompt": (
        "Use image 1 as the base. Replace only its package with the product "
        "from image 2. Preserve the hands, camera angle, shadows, and background."
    ),
    "image_urls": [
        "https://cdn.example.com/base.jpg",
        "https://cdn.example.com/product.png",
    ],
    "resolution": "1k",
    "aspect_ratio": "auto",
    "output_format": "png",
    "safety_tolerance": 2,
}

submitted = requests.post(ENDPOINT, headers=headers, json=payload, timeout=30)
submitted.raise_for_status()
job = submitted.json()

status_url = job["status_url"]
response_url = job["response_url"]
while True:
    status = requests.get(status_url, headers=headers, timeout=30)
    status.raise_for_status()
    state = status.json().get("status")
    if state == "COMPLETED":
        break
    if state in {"FAILED", "CANCELLED"}:
        raise RuntimeError(status.text)
    time.sleep(2)

result = requests.get(response_url, headers=headers, timeout=30)
result.raise_for_status()
print(result.json())

模型页面链接的 fal 队列文档还提供了 sync_mode,但对于 4K 任务,排队执行更稳妥,因为渲染时间可能超过普通 HTTP 请求的超时时间。Layer 则把这种异步契约写得更明确:提交请求后返回 HTTP 202、一个 inference_id 以及建议的轮询间隔。Layer 还支持可在 24 小时内重放的幂等键,有助于避免网络重试造成重复扣费。

正式接入流量前,至少要完成以下准备:

  1. 拒绝任一边小于 256 像素的图片,并执行所选服务商的 megapixel 上限校验。
  2. 保留数组顺序,并在提示词中使用 image 1、image 2 等编号。
  3. 服务商支持幂等键时,为每个任务使用唯一幂等键;否则,应在重试前先持久化请求。
  4. 限制轮询时长,向用户展示待处理状态,不要让应用请求一直保持打开。
  5. 将完成后的文件复制到受控存储中,因为托管结果 URL 的保留策略可能与应用要求不一致。
  6. 为每个任务记录模型 ID、服务商、分辨率、参考图数量、报价、耗时和审核结果。

成本与质量:需要正视的取舍

目前能够做出的成本比较很有限,因为核查到的页面没有公布完整的分辨率价格表。fal 展示的促销价是每张 1K 图片 $0.024,促销结束后上涨至 $0.048;页面还说明参考图数量不会改变收费。该模型页面没有列出确切的 2K 和 4K 价格,因此不能根据 1K 价格推算 4K 预算。

fal 上的 FLUX 3 Image Edit API 模型页面

与其默认 4K 永远更好,不如采用两阶段策略:

阶段分辨率目的升级规则
提示词与参考图验证1K检查构图、身份、产品形状和文字在生成高成本输出前拒绝或修改
最终素材2K 或 4K生成已经批准的交付文件只有目标渠道确实需要这些像素时才升级

更高分辨率带来的是更多像素,而不是更好的编辑保真度:一个糟糕的 1K 编辑结果,到了 4K 只会变成更大的失败。4K 更适合已经审核通过、要用于印刷、广告牌版式或大幅裁切的编辑结果。

应用启动时,可以发送一个最小有效测试任务,或查询服务商的价格接口,记录返回的报价;如果报价缺失,或超过任务预算,就禁用 4K。Layer 的初始响应可能包含 estimated_price_creative_units,但其公开模型页面没有提供 Creative Units 与美元之间的换算方式。Replicate 的模型页面记录了输入参数,却没有固定价格。这些都是上线前需要在账户后台确认的采购信息,不应该在代码里自行猜一个数字。

根据运营需求选择端点

服务商的选择,应该取决于应用真正需要的接口契约。模型归属相同,并不意味着不同服务商的参数结构可以直接互换。

  • Replicate:如果模型来源是首要考虑因素,而且现有技术栈已经使用 Replicate 的 prediction 工作流,可以选择这个 BFL 持有的模型页面。它在本文核查的选项中提供了更高的输入上限,达到 16 MP,并支持可选的网页/图像 grounding。
  • fal:如果你更看重清晰的图像编辑控制、排队式工作流和可见的 1K 价格,可以选择这个合作伙伴编辑端点。但它每张图 4 MP 的输入上限意味着需要提前缩小图片。
  • Layer:如果你需要工作区管理、正式的 HTTP 202 契约、轮询提示和 24 小时幂等能力,可以选择它。在制定预算前,务必确认 Creative Units 如何换算成美元。

不要因为服务商的域名或仓库名里出现“FLUX3”,就直接认定它属于官方渠道。应核对模型 ID、持有方或合作伙伴标识、当前枚举值、商业条款,以及一次成功的低成本请求。排名靠前的 Anil-matcha/Flux-3-Dev-API 封装在核查时仍将其图像路由标记为“coming soon”,而 BFL 持有的 Replicate 路由和 fal 合作伙伴路由已经可用。

上线前的生产验收门槛

FLUX 3 Image 适合用于受控的 API 测试,包括 4K 和最多 10 张参考图。正式上线前,应让选定的端点在 1K 和最终分辨率下,使用同一组有代表性的编辑任务完成验证。

检查项通过条件
来源确认是 BFL 持有的模型 ID,或已验证的合作伙伴模型 ID
可用性真实的低成本请求能够完成,而不只是文档中存在对应路由
参考图行为在代表性的 2 张、5 张和 10 张图片案例中,输入顺序和角色标注都能正确生效
质量身份、产品几何形状、文字和未修改区域达到既定审核标准
成本服务商能够为每一种启用的分辨率返回或展示可接受的价格
延迟实测排队和渲染时间符合预览与批处理服务的目标
可靠性重试不会产生无法追踪的重复任务或重复扣费
存储在服务商 URL 过期或策略变化前,完成结果文件复制

更稳妥的做法是先上线 1K 编辑,持续记录报价和延迟数据,再只为已批准的最终素材启用 2K 或 4K。这样既能用上新模型目前已经明确的核心能力,也不会对高分辨率质量或成本做未经验证的假设。

相关阅读