diffsynth/text_to_image.py)创建了完整的文生图生成器类 TextToImageGenerator,包含以下功能:
load_model(): 加载指定类型的模型generate(): 生成单张图像batch_generate(): 批量生成图像unload_model(): 卸载模型释放内存generate_image(): 一键生成图像get_generator(): 获取全局生成器实例controllers/text_to_image.py)创建了完整的 FastAPI REST API 端点:
gradio_app.py)在现有的 Gradio 界面中添加了”文生图”标签页:
controllers/route.py)将文生图 API 端点注册到主路由中,使其可以通过 FastAPI 应用访问。
diffsynth/__init__.py)导出了文生图相关的类和函数,方便其他模块使用。
创建了完整的文档:
test/test_text_to_image.py)创建了测试脚本,包含:
aduib-diffsynth/
├── diffsynth/
│ ├── __init__.py # ✅ 已更新:导出文生图功能
│ ├── text_to_image.py # ✅ 新增:文生图核心实现
│ ├── diffsynth.py # 已存在:PDF处理
│ ├── aduib_ai.py # 已存在:AduibAI客户端
│ └── mineru.py # 已存在:PDF解析
│
├── controllers/
│ ├── __init__.py
│ ├── route.py # ✅ 已更新:注册文生图路由
│ ├── text_to_image.py # ✅ 新增:文生图API端点
│ └── auth/
│
├── gradio_app.py # ✅ 已更新:添加文生图UI
│
├── docs/
│ └── TEXT_TO_IMAGE.md # ✅ 新增:完整使用文档
│
├── test/
│ ├── test_text_to_image.py # ✅ 新增:测试脚本
│ └── ...
│
└── outputs/
└── text_to_image/ # 自动创建:图像输出目录
python gradio_app.py
# 访问 http://localhost:7860
# 选择"文生图"标签页
from diffsynths.text_to_image import generate_image
image_path = generate_image(
prompt="a beautiful sunset over mountains",
model_type="sd",
width=512,
height=512,
)
curl -X POST "http://localhost:8000/api/text-to-image/generate" \
-H "Content-Type: application/json" \
-d '{"prompt": "a beautiful sunset", "model_type": "sd"}'
diffsynth-engine: 核心生成引擎torch: PyTorch(建议使用CUDA版本)fastapi: API框架gradio: Web UI框架pydantic: 数据验证在 pyproject.toml 中已配置:
[project.optional-dependencies]
diffsynth=["diffsynth-engine"]
cuda=["torch==2.7.1","torchvision==0.22.1"]
安装命令:
uv sync --extra diffsynth --extra cuda
✅ 文生图功能已完整实现并集成到项目中:
用户现在可以通过三种方式使用文生图功能:
所有代码都遵循项目现有的架构和编码规范。