AI Toolkit

Ostris 开发的终极扩散模型微调训练工具包。

4.5k Stars 60 Watching 100 Issues 26 Pull Requests 505 Forks

安装指南

系统要求:Python 3.10+, Nvidia GPU (建议至少 8GB VRAM), Python 虚拟环境, Git。

Linux 安装步骤

git clone https://github.com/ostris/ai-toolkit.git
cd ai-toolkit
git submodule update --init --recursive
python3 -m venv venv
source venv/bin/activate
# install torch first
pip3 install --no-cache-dir torch==2.6.0 torchvision==0.21.0 --index-url https://download.pytorch.org/whl/cu126
pip3 install -r requirements.txt

Windows 安装步骤

git clone https://github.com/ostris/ai-toolkit.git
cd ai-toolkit
git submodule update --init --recursive
python -m venv venv
.\\venv\\Scripts\\activate
pip install --no-cache-dir torch==2.6.0 torchvision==0.21.0 --index-url https://download.pytorch.org/whl/cu126
pip install -r requirements.txt

AI Toolkit Web UI (网页界面)

提供直观的网页操作界面,让您轻松启动、监控和管理AI模型训练任务,无需编写复杂指令。

环境要求

  • Node.js 18+ (推荐最新LTS版本)
  • 已安装完成的AI Toolkit主程序

启动网页界面

cd ui
npm run build_and_start

启动后访问 http://localhost:8675 即可使用完整功能

安全设置 (可选)

设置环境变量 AI_TOOLKIT_AUTH 可增加密码保护,防止未授权访问。

Gradio 训练界面

提供更简易的Gradio图形界面,特别适合初学者快速上手模型训练、数据处理和LoRA发布。

主要功能

  • 一键上传和管理训练数据
  • 自动标注和数据预处理
  • 简化的训练参数设置
  • 直接发布到Hugging Face
# 安装 ai-toolkit 后
cd ai-toolkit
huggingface-cli login # 登录 HF
python flux_train_ui.py

FLUX.1 模型训练指南

支持最新的FLUX.1扩散模型训练,提供业界领先的图像生成质量。硬件要求:至少24GB VRAM的NVIDIA GPU。

FLUX.1-dev 版本

  • 非商业授权模式,仅限个人使用。
  • 需要Hugging Face授权访问及有效Token。
  • 提供最高质量的生成结果,适合专业作品。
  • 支持更多高级训练功能和参数调整。

FLUX.1-schnell 版本

  • Apache 2.0开源授权,可用于商业项目。
  • 无需Hugging Face Token,开箱即用。
  • 需搭配特定adapter进行训练优化。
  • 训练速度更快,资源需求较低。

训练流程指南

  1. 从示例配置文件开始 (config/examples/),根据需求修改参数。
  2. 准备高质量的训练数据集,建议每个概念至少20张图片。
  3. 执行训练命令:python run.py config/your_config_name.yml
  4. 训练过程中可实时查看生成样本,评估模型效果。
  5. 完成后的模型文件将保存在指定输出目录。

高级提示:调整学习率、训练步数和批次大小可显著影响训练结果,建议参考官方文档获取最佳实践。

数据集准备指南

高质量的训练数据是成功训练模型的关键,AI Toolkit支持多种数据格式:

  • 支持的图像格式:JPG、JPEG、PNG (推荐使用无损PNG)
  • 每张图片需配对同名的.txt文本文件作为描述标签
  • 文本文件应包含详细的图像描述,越精确越好
  • 支持自动替换和标准化触发词 (trigger word)
  • 内建智能裁剪和缩放功能,无需手动预处理图像
  • 支持数据增强和随机变换以增加训练样本多样性

数据集最佳实践

  • 每个概念建议使用20-50张高质量图像
  • 保持图像风格一致性以获得更好的训练效果
  • 使用一致的触发词可提高模型识别特定概念的能力
  • 避免在训练集中混合过多不同风格或主题

云端训练平台支持

AI Toolkit提供多种云端训练选项,适合没有高端GPU的用户或需要大规模训练的项目。

RunPod 云端训练

提供完整的RunPod模板和部署脚本,支持一键部署:

  • 预配置的Docker容器,无需复杂设置
  • 支持A100、H100等高性能GPU
  • 自动数据同步和模型保存
  • 按小时计费,经济实惠

Modal 云端服务

提供Modal平台的无服务器训练方案:

  • 零基础设施管理,全自动扩展
  • 按需付费,仅在训练时计费
  • 支持团队协作和版本控制
  • 内建数据缓存和模型存储

云端训练是大型模型和长时间训练的理想选择,详细配置请参考官方文档。

高级训练技术与优化

LoRA 层级精确训练

AI Toolkit提供精细的层级控制,可针对特定网络层进行优化训练:

network:
  type: "lora"
  # ... other params
  network_kwargs:
    only_if_contains: ["layer_name_suffix"]
    # or
    ignore_if_contains: ["layer_name_suffix"]

通过精确控制训练层,可以显著提高特定类型内容的生成质量,如人脸细节、材质或特定风格。

LoKr 高级训练方法

支持LoKr (Low-Rank Kronecker product)训练方法,提供更高效的参数利用率:

network:
  type: "lokr"
  lokr_full_rank: true
  lokr_factor: 8
  # ... other params

LoKr技术能在较小的参数量下实现更好的训练效果,特别适合复杂风格和细节丰富的概念。

混合精度训练

支持混合精度训练,在保持模型质量的同时显著降低VRAM需求:

  • 自动选择最佳精度配置(FP16/BF16)
  • 支持梯度累积,实现更大的有效批次大小
  • 优化的内存管理,减少训练中的OOM错误
  • 支持梯度检查点技术,进一步降低内存需求

更多高级训练技术和优化方法请参考 高级训练文档

需要更详细的使用指南或遇到问题?请访问 AI Toolkit GitHub 官方仓库 或加入 Discord 社区 获取帮助。