Fooocus-API 项目介绍
引言
Fooocus-API 是一款由 FastAPI 提供支持的 API 项目,其目的是为 Fooocus 提供 REST API 功能。Fooocus 本身是一款基于 Gradio 的图像生成软件,它应用了 Stable Diffusion 和 Midjourney 的设计理念,强调用户体验的简化和图像质量的优化。
Fooocus
Fooocus 是一个图像生成软件,汲取了 Stable Diffusion 和 Midjourney 的设计哲学:
- 从 Stable Diffusion 学习:软件在离线状态下运行、开源且免费。
- 从 Midjourney 学习:不需要手动调整参数,用户只需专注于输入提示词和图像。
Fooocus 通过优化和提高内部质量改善了用户体验,使得用户可以忘却繁杂的技术参数,专注于探索和扩展人类想象力。
Fooocus-API
Fooocus-API 旨在解决尝试使用 Gradio 客户端 调用 Fooocus 时的困难。通过使用 FastAPI,Fooocus-API 提供使用任意编程语言访问 Fooocus 的能力。此外,项目提供了详细的文档和示例代码供开发者使用。
使用指南
使用 Replicate 运行
开发者可以通过 Replicate 使用 Fooocus-API,目前模型已在 konieshadow/fooocus-api 上可用,包括 anime 和 realistic 的预设模型。这是利用 Fooocus 生成图像的最简单方式。
自托管部署
用户可以选择自托管部署,只需要 Python 版本大于等于 3.10,或者利用 conda 创建新的环境。以下是不同的启动方式:
使用 Conda
通过 Conda 创建环境并启动应用:
conda env create -f environment.yaml
conda activate fooocus-api
python main.py
服务器默认在 http://127.0.0.1:8888
监听。
使用 Venv
创建虚拟环境并启动应用:
# Windows
python -m venv venv
.\venv\Scripts\Activate
# Linux
python -m venv venv
source venv/bin/activate
然后运行 python main.py
。
手动下载和安装依赖
如果想手动处理环境问题并提前下载模型,可以按照以下步骤进行:
- 安装依赖:
pip install -r requirements.txt
- 安装具有 CUDA 支持的 PyTorch:
pip install torch==2.1.0 torchvision==0.16.0 torchaudio==2.1.0 --index-url https://download.pytorch.org/whl/cu121
- 下载模型并放置到指定目录。
已安装的 Fooocus
如果已经安装了 Fooocus,可以复用现有的模型,只需将本地 Fooocus 目录中的 config.txt
复制到 Fooocus-API 的根目录即可。
使用 Docker 启动
首先确保已安装 NVIDIA Container Toolkit,然后运行以下命令启动 Docker:
docker run -d --gpus=all \
-e NVIDIA_DRIVER_CAPABILITIES=compute,utility \
-e NVIDIA_VISIBLE_DEVICES=all \
-p 8888:8888 konieshadow/fooocus-api
其他信息
命令行标识
Fooocus-API 提供了多个命令行标识选项,用于配置监听端口、日志级别等,支持的命令行标识包括 --port
、--host
、--log-level
等。
更新日志
项目的更新日志可在 CHANGELOG 查看。
开放 API 文档
有关 API 的详细信息可在项目文档中找到。
感谢
感谢所有为 Fooocus-API 贡献和努力的参与者!我们感谢您成为我们社区的一员!