Fooocus 是一款图像生成软件(基于 Gradio )。
Fooocus 重新思考了图像生成器的设计。该软件是离线、开源且免费的,同时,它类似于 Midjourney 等许多在线图像生成器,无需手动调整参数,用户只需专注于提示词和图像。Fooocus 也简化了安装过程:从点击“下载”到生成第一张图像,所需的鼠标点击次数严格限制在 3 次以内。最低 GPU 内存要求为 4GB(Nvidia)。
近期在谷歌搜索“fooocus”时会出现许多虚假网站。请不要相信这些——这里是 Fooocus 唯一的官方来源。
Fooocus 项目完全基于 Stable Diffusion XL 架构,现已进入有限长期支持(LTS)状态,仅进行错误修复。由于现有功能被认为几乎没有程序性错误(感谢 mashb1t 的巨大努力),未来的更新将只专注于解决可能出现的任何错误。
目前没有计划迁移或整合更新的模型架构。 然而,随着开源社区的发展,这种情况可能会改变。例如,如果社区收敛到一种占主导地位的图像生成方法(鉴于当前状况,这可能在未来半年或一年内发生),Fooocus 也可能会迁移到该方法。
对于那些有兴趣使用 Flux 等较新模型的用户,我们建议探索其他平台,例如 WebUI Forge(同样来自我们)、ComfyUI/SwarmUI。此外,还有一些优秀的 Fooocus 分支可供实验。
再次提醒,近期在谷歌搜索“fooocus”时会出现许多虚假网站。不要从那些网站获取 Fooocus——本页面是 Fooocus 唯一的官方来源。我们从未拥有过诸如“fooocus.com”、“fooocus.net”、“fooocus.co”、“fooocus.ai”、“fooocus.org”、“fooocus.pro”、“fooocus.one”之类的网站。这些网站全都是假的。它们与我们绝对没有任何关系。Fooocus 是一个 100% 非商业、离线、开源软件。
以下是与 Midjourney 功能对比的快速列表:
| Midjourney | Fooocus |
|---|---|
| 无需大量提示词工程或参数调整即可生成高质量文生图。 (方法未知) |
无需大量提示词工程或参数调整即可生成高质量文生图。 (Fooocus 拥有基于离线 GPT-2 的提示词处理引擎和大量采样改进,因此无论你的提示词短如“花园中的房子”还是长达 1000 字,结果总是很美观。) |
| V1 V2 V3 V4 | 输入图像 -> 放大或变体 -> 微调变体 / 强变体 |
| U1 U2 U3 U4 | 输入图像 -> 放大或变体 -> 放大 (1.5倍) / 放大 (2倍) |
| 局部重绘 / 上 / 下 / 左 / 右(平移) | 输入图像 -> 局部重绘或扩图 -> 局部重绘 / 上 / 下 / 左 / 右 (Fooocus 使用其自有的局部重绘算法和模型,因此结果比所有使用标准 SDXL 局部重绘方法/模型的其他软件更令人满意。) |
| 图像提示 | 输入图像 -> 图像提示 (Fooocus 使用其自有的图像提示算法,因此在结果质量和提示词理解方面,比所有使用标准 SDXL 方法(如标准 IP-Adapter 或 Revisions)的其他软件更令人满意。) |
| --style | 高级 -> 风格 |
| --stylize | 高级 -> 高级 -> 引导强度 |
| --niji | 多个启动器:"run.bat"、"run_anime.bat" 和 "run_realistic.bat"。 Fooocus 支持 Civitai 上的 SDXL 模型 (如果你不知道 Civitai,可以谷歌搜索一下。) |
| --quality | 高级 -> 质量 |
| --repeat | 高级 -> 图像数量 |
| 多提示词 (::) | 只需使用多行提示词 |
| 提示词权重 | 你可以使用 " I am (happy:1.5)"。 Fooocus 使用 A1111 的权重调整算法,因此如果用户直接从 Civitai 复制提示词,结果会比 ComfyUI 更好。(因为如果提示词是用 ComfyUI 的权重调整语法编写的,用户更倾向于拖拽文件而不是复制文本。) 要使用嵌入模型,可以使用 "(embedding:file_name:1.1)" |
| --no | 高级 -> 负面提示词 |
| --ar | 高级 -> 宽高比 |
| InsightFace | 输入图像 -> 图像提示 -> 高级 -> 换脸 |
| Describe | 输入图像 -> 描述 |
以下是与 LeonardoAI 功能对比的快速列表:
| LeonardoAI | Fooocus |
|---|---|
| Prompt Magic | 高级 -> 风格 -> Fooocus V2 |
| 高级采样器参数(如对比度/锐度等) | 高级 -> 高级 -> 采样锐度 / 等 |
| 用户友好的 ControlNets | 输入图像 -> 图像提示 -> 高级 |
此外,点击此处浏览高级功能。
你可以直接下载 Fooocus:
下载文件后,请解压缩并运行 "run.bat"。
首次启动软件时,它会自动下载模型:
Fooocus 2.1.60 之后,你还会看到 run_anime.bat 和 run_realistic.bat。它们是不同的模型预设(并且需要不同的模型,但会自动下载)。点击此处查看更多详情。
Fooocus 2.3.0 之后,你也可以直接在浏览器中切换预设。如果你想改变默认行为,请记住添加这些参数:
* 使用 --disable-preset-selection 来禁用浏览器中的预设选择。
* 使用 --always-download-new-model 在切换预设时下载缺失的模型。默认行为是回退到对应预设中定义的 previous_default_models,也可以查看终端输出。
如果你已经有这些文件,可以将它们复制到上述位置以加快安装速度。
请注意,如果你看到 "MetadataIncompleteBuffer" 或 "PytorchStreamReader",那么你的模型文件已损坏。请重新下载模型。
以下是在一台系统内存 16GB 和显存 6GB(Nvidia 3060 笔记本)的相对低端笔记本电脑上的测试。在这台机器上的速度大约是每次迭代 1.35 秒。相当令人印象深刻——如今配备 3060 的笔记本电脑通常价格非常合理。
此外,最近许多其他软件报告称,Nvidia 532 以上的驱动程序有时比 Nvidia 531 驱动程序慢 10 倍。如果你的生成时间非常长,可以考虑下载 Nvidia 531 笔记本驱动 或 Nvidia 531 桌面驱动。
请注意,最低要求是 4GB Nvidia GPU 显存(4GB VRAM) 和 8GB 系统内存(8GB RAM)。这需要使用微软的虚拟交换技术,在大多数情况下,你的 Windows 安装会自动启用它,所以你通常不需要做任何事情。但是,如果你不确定,或者你手动关闭了它(真的有人会这么做吗?),或者如果你看到任何 "RuntimeError: CPUAllocator",你可以在这里启用它:
如果你使用类似的设备但仍然无法获得可接受的性能,请提交问题。
请注意,不同平台的最低要求是不同的。
另请参阅常见问题和故障排除此处。
(最后测试 - 2024年8月12日,由 mashb1t 进行)
| Colab | 信息 |
|---|---|
| Fooocus 官方 |
在 Colab 中,你可以将最后一行修改为 !python entry_with_update.py --share --always-high-vram 或 !python entry_with_update.py --share --always-high-vram --preset anime 或 !python entry_with_update.py --share --always-high-vram --preset realistic 来分别使用 Fooocus 默认/动漫/写实版本。
你也可以在 UI 中更改预设。请注意,这可能会导致 60 秒后超时。如果发生这种情况,请等待下载完成,将预设更改为初始值,然后再改回你选择的预设,或者重新加载页面。
请注意,此 Colab 默认会禁用精炼器,因为 Colab 免费版的资源相对有限(并且一些“大型”功能如图像提示可能会导致免费版 Colab 断开连接)。我们确保基本的文生图功能在免费版 Colab 上始终可用。
使用 --always-high-vram 会将资源分配从 RAM 转移到 VRAM,并在默认的 T4 实例上实现性能、灵活性和稳定性之间的最佳平衡。请在此处查找更多信息此处。
感谢 camenduru 提供的模板!
如果你想使用 Anaconda/Miniconda,可以
git clone https://github.com/lllyasviel/Fooocus.git
cd Fooocus
conda env create -f environment.yaml
conda activate fooocus
pip install -r requirements_versions.txt
然后下载模型:将默认模型下载到文件夹 "Fooocus\models\checkpoints"。或者让 Fooocus 自动下载模型,使用启动器:
conda activate fooocus
python entry_with_update.py
或者,如果你想打开远程端口,使用
conda activate fooocus
python entry_with_update.py --listen
使用 python entry_with_update.py --preset anime 或 python entry_with_update.py --preset realistic 来运行 Fooocus 动漫/写实版本。
你的 Linux 需要安装 Python 3.10,并且假设你的 Python 可以通过命令 python3 调用,且你的 venv 系统正常工作;你可以
git clone https://github.com/lllyasviel/Fooocus.git
cd Fooocus
python3 -m venv fooocus_env
source fooocus_env/bin/activate
pip install -r requirements_versions.txt
模型下载请参阅以上部分。你可以通过以下方式启动软件:
source fooocus_env/bin/activate
python entry_with_update.py
或者,如果你想打开远程端口,使用
source fooocus_env/bin/activate
python entry_with_update.py --listen
使用 python entry_with_update.py --preset anime 或 python entry_with_update.py --preset realistic 来运行 Fooocus 动漫/写实版本。
如果你知道你在做什么,并且你的 Linux 已经安装了 Python 3.10,并且你的 Python 可以通过命令 python3 调用(Pip 通过 pip3 调用),你可以
git clone https://github.com/lllyasviel/Fooocus.git
cd Fooocus
pip3 install -r requirements_versions.txt
模型下载请参阅以上部分。你可以通过以下方式启动软件:
python3 entry_with_update.py
或者,如果你想打开远程端口,使用
python3 entry_with_update.py --listen
使用 python entry_with_update.py --preset anime 或 python entry_with_update.py --preset realistic 来运行 Fooocus 动漫/写实版本。
请注意,不同平台的最低要求是不同的。
与上述说明相同。你需要将 torch 更改为 AMD 版本
pip uninstall torch torchvision torchaudio torchtext functorch xformers
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/rocm5.6
然而,AMD 并未经过深入测试。AMD 支持处于测试阶段。
使用 python entry_with_update.py --preset anime 或 python entry_with_update.py --preset realistic 来运行 Fooocus 动漫/写实版本。
请注意,不同平台的最低要求是不同的。
与 Windows 相同。下载软件并编辑 run.bat 的内容如下:
.\python_embeded\python.exe -m pip uninstall torch torchvision torchaudio torchtext functorch xformers -y
.\python_embeded\python.exe -m pip install torch-directml
.\python_embeded\python.exe -s Fooocus\entry_with_update.py --directml
pause
然后运行 run.bat。
然而,AMD 并未经过深入测试。AMD 支持处于测试阶段。
对于 AMD,使用 .\python_embeded\python.exe Fooocus\entry_with_update.py --directml --preset anime 或 .\python_embeded\python.exe Fooocus\entry_with_update.py --directml --preset realistic 来运行 Fooocus 动漫/写实版本。
请注意,不同平台的最低要求是不同的。
Mac 并未经过深入测试。以下是使用 Mac 的非官方指南。你可以在此处讨论问题此处。
你可以在 Apple Mac 硅芯片(M1 或 M2)上安装 Fooocus,系统要求 macOS 'Catalina' 或更高版本。Fooocus 通过 PyTorch MPS 设备加速在 Apple 硅芯片计算机上运行。Mac 硅芯片计算机没有专用显卡,因此图像处理时间比配备专用显卡的计算机要长得多。
git clone https://github.com/lllyasviel/Fooocus.git 克隆此仓库。cd Fooocus。conda env create -f environment.yaml。conda activate fooocus。pip install -r requirements_versions.txt。python entry_with_update.py 启动 Fooocus。(一些 Mac M2 用户可能需要 python entry_with_update.py --disable-offload-from-vram 来加速模型加载/卸载。)首次运行 Fooocus 时,它会自动下载 Stable Diffusion SDXL 模型,这将花费大量时间,具体取决于你的网络连接。使用 python entry_with_update.py --preset anime 或 python entry_with_update.py --preset realistic 来运行 Fooocus 动漫/写实版本。
参见 docker.md
参见指南此处。
以下是本地运行 Fooocus 的最低要求。如果你的设备性能低于此规格,你可能无法在本地使用