📌 项目地址: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,使用schnell或dev模型 - 填充和扩图:看
docs/fill.md,使用FLUX.1 Fill [dev] - 结构条件生成(边缘/深度):看
docs/structural-conditioning.md,使用Canny [dev]或Depth [dev]
这些文档里给出了具体的 Python 调用示例,例如传入模型权重路径和 prompt。权重文件需要先从 HuggingFace 下载:schnell 约 34GB,dev 约 53GB。下载命令一般在文档里有写,或者你可以用 huggingface-cli 下载。
实际运行时的坑
- 显存占用:schnell 在 24GB 显存上生成 1024×1024 图 OK,dev 系列需要更多。24GB 跑 dev 文本生成会 OOM,至少需要 40GB 以上。如果你只有 12GB 显存,schnell 也只能生成较小尺寸。
- 模型下载超时:HuggingFace 国内访问慢。设置
export HF_ENDPOINT=https://hf-mirror.com可以加速。 - Python 版本:强制 3.10,不要用 conda 的 3.11,否则
pip install时 torch 版本不兼容。 - TensorRT 安装失败:只有 NVIDIA 官方 PyTorch 镜像才能成功装
.[tensorrt],普通系统上直接用pip install会报缺少 CUDA 库。老老实实用 enroot 容器,或者干脆放弃 TensorRT。
总结
Flux 是目前开源图像生成模型里质量最高的之一,但门槛在显存和许可证。我的路线:标准安装 + schnell 模型先跑通文本生成,确认性能满足需求后,再考虑要不要折腾 TensorRT 或 dev 模型。别一上来就装 TensorRT,很可能白花时间。记得去 docs/ 里找具体运行脚本,别指望 README 给你所有答案。