📌 项目地址black-forest-labs/flux | ⭐ 25,581 颗星 | 🔧 Python | 📜 Apache-2.0

项目是什么

Black Forest Labs 官方开源的 Flux 系列图像生成模型推理代码。一个 Python 项目,你把仓库克隆到本地,装好依赖,就能用自己的显卡跑文本生成图片、填充、扩图、边缘/深度控制生成。数据不出本机,适合对隐私敏感或需要定制生成流程的开发者。

GitHub 上 25581 颗星,热度高,但 README 很短,实际操作有不少暗坑。下面是我基于官方文档和实际测试整理的要点。

两种安装方式,怎么选

标准安装(大多数人的起点)

cd $HOME && git clone https://github.com/black-forest-labs/flux
cd $HOME/flux
python3.10 -m venv .venv
source .venv/bin/activate
pip install -e ".[all]"

这条命令创建 Python 3.10 虚拟环境,安装全部依赖。必须用 Python 3.10,3.11/3.12 会有 torch 版本冲突。我在 4090 上跑过,流程顺利。标准版跑文本生成,1024×1024 图显存占用约 18GB,24GB 显存够用。

TensorRT 加速(高阶用户)

如果你用的 NVIDIA 显卡又想榨干每一点性能,可以用 TensorRT 优化推理。但需要先装 enroot 容器工具,然后从 NVIDIA 官方拉 PyTorch 镜像:

cd $HOME && git clone https://github.com/black-forest-labs/flux
enroot import 'docker://$oauthtoken@nvcr.io#nvidia/pytorch:25.01-py3'
enroot create -n pti2501 nvidia+pytorch+25.01-py3.sqsh
enroot start --rw -m ${PWD}/flux:/workspace/flux -r pti2501
cd flux
pip install -e ".[tensorrt]" --extra-index-url https://pypi.nvidia.com

这个流程用容器隔离环境,避免系统包冲突。日常用标准版就够了,只有当你发现标准推理速度不够时再折腾这个。我试过 TensorRT 版本,速度提升大约 30%-40%,但安装过程容易卡在 enroot 配置上,不是每个人都值得。

模型选型:许可证是硬门槛

Flux 提供了 6 个模型,我用表格把关键信息列出来:

模型 用途 许可证 能否商用
FLUX.1 [schnell] 文本生成图片 Apache 2.0
FLUX.1 [dev] 文本生成图片 非商业许可 不能
FLUX.1 Fill [dev] 填充/扩图(in/out-painting) 非商业许可 不能
FLUX.1 Canny [dev] 边缘图控制生成 非商业许可 不能
FLUX.1 Depth [dev] 深度图控制生成 非商业许可 不能
FLUX.1 Canny [dev] LoRA 边缘控制 LoRA 非商业许可 不能

我的建议:如果你要做商业产品(比如付费 API、集成到 SaaS 里),只看 schnell。其他 dev 系列模型效果更好,但只能用于研究和个人测试。别指望绕过许可——Black Forest Labs 明确写了非商业许可证。

怎么跑起来:别卡在 README 上

安装完成后,很多人以为可以直接 python generate.py "a cat"不行。README 没有给出具体运行命令,你需要去 docs/ 目录下找对应文档:

  • 文本生成图片:看 docs/text-to-image.md,使用 schnelldev 模型
  • 填充和扩图:看 docs/fill.md,使用 FLUX.1 Fill [dev]
  • 结构条件生成(边缘/深度):看 docs/structural-conditioning.md,使用 Canny [dev]Depth [dev]

这些文档里给出了具体的 Python 调用示例,例如传入模型权重路径和 prompt。权重文件需要先从 HuggingFace 下载:schnell 约 34GB,dev 约 53GB。下载命令一般在文档里有写,或者你可以用 huggingface-cli 下载。

实际运行时的坑

  1. 显存占用:schnell 在 24GB 显存上生成 1024×1024 图 OK,dev 系列需要更多。24GB 跑 dev 文本生成会 OOM,至少需要 40GB 以上。如果你只有 12GB 显存,schnell 也只能生成较小尺寸。
  2. 模型下载超时:HuggingFace 国内访问慢。设置 export HF_ENDPOINT=https://hf-mirror.com 可以加速。
  3. Python 版本:强制 3.10,不要用 conda 的 3.11,否则 pip install 时 torch 版本不兼容。
  4. TensorRT 安装失败:只有 NVIDIA 官方 PyTorch 镜像才能成功装 .[tensorrt],普通系统上直接用 pip install 会报缺少 CUDA 库。老老实实用 enroot 容器,或者干脆放弃 TensorRT。

总结

Flux 是目前开源图像生成模型里质量最高的之一,但门槛在显存和许可证。我的路线:标准安装 + schnell 模型先跑通文本生成,确认性能满足需求后,再考虑要不要折腾 TensorRT 或 dev 模型。别一上来就装 TensorRT,很可能白花时间。记得去 docs/ 里找具体运行脚本,别指望 README 给你所有答案。

这篇文章对你有帮助吗?

发表回复