ComfyUI-TITrain 插件保姆级教程
1. 插件简介
插件原地址: https://github.com/mbrostami/ComfyUI-TITrain
ComfyUI-TITrain 是一个专门用来训练文本嵌入(就是让 AI 学会认识你自己的图片风格或者物体)的插件。简单来说,它就像一个"私人教练",可以教会 AI 认识你提供的图片内容,比如你的脸、你的宠物、你喜欢的艺术风格等。
能给我们带来什么效果:
- 让 AI 学会你的独特风格或物体
- 创造个性化的图片生成效果
- 不需要复杂的训练步骤,直接在 ComfyUI 里就能完成
- 比传统方法更简单,像搭积木一样操作
2. 如何安装
方法一:ComfyUI-Manager 安装(推荐)
- 打开 ComfyUI,点击右侧的 "Manager" 按钮
- 点击 "Install Custom Nodes"
- 在搜索框输入 "TITrain"
- 找到 "ComfyUI-TITrain" 点击安装
- 重启 ComfyUI
方法二:手动安装
- 找到你的 ComfyUI 安装目录
- 进入
custom_nodes文件夹 - 在这里打开命令行窗口
- 输入:
git clone https://github.com/mbrostami/ComfyUI-TITrain.git - 进入插件目录:
cd ComfyUI-TITrain - 安装依赖:
pip install -r requirements.txt - 重启 ComfyUI
3. 节点逐一解析
3.1 TextualInversionTraining 节点 - 标准版训练器
这个节点就像一个"学习机器",它会看你给它的图片,然后学会这些图片的特征,最后生成一个"记忆文件",以后 AI 就能根据这个记忆文件来生成类似风格的图片。
3.2 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 训练图片 | images | 图片数据 | 5-20张图片 | 就像给老师看教材,这些图片是AI要学习的内容 | 输入的训练图像数据集 | 连接Load Image节点,提供要学习的图片 |
| 保存文件夹 | output_dir | 文件夹路径 | "output/my_training" | 就像给学习成果找个保存的地方 | 训练结果的输出目录 | 填写你想保存训练文件的文件夹名 |
| 学习名称 | placeholder_token | 文本 | "myface" | 给你要学习的东西起个名字,以后生成图片时就用这个名字 | 文本嵌入的占位符标记 | 起个简单好记的名字,比如"mycat"、"mystyle" |
| 学习步数 | max_train_steps | 数字 | 3000 | 就像练习题的数量,做得越多学得越好,但也不能太多 | 训练的最大步数 | 初学者用3000,效果不好可以增加到5000 |
| 学习速度 | learning_rate | 小数 | 0.005 | 就像学习的快慢,太快可能学错,太慢学不会 | 模型训练的学习率 | 默认0.005就好,有经验可以调0.001-0.01 |
| 批次大小 | train_batch_size | 数字 | 1 | 每次给AI看几张图片,就像每次上课看几页书 | 每个训练批次的大小 | 显存小用1,显存大可以用2-4 |
| 保存间隔 | save_steps | 数字 | 500 | 每学多少步保存一次,就像每写几页作业保存一次 | 模型保存的间隔步数 | 500或1000都可以 |
| 随机种子 | seed | 数字 | 42 | 就像抽签的号码,同样的号码结果是一样的 | 随机数生成器的种子 | 想要相同结果就用相同数字 |
| 额外提示词 | additional_prompts | 文本 | "white background" | 一些不想让AI学习的描述,比如背景颜色 | 训练时的额外提示词 | 写一些环境描述,每行一个 |
3.3 TextualInversionTrainingSDXL 节点 - 高级版训练器
这个节点就像TextualInversionTraining的"升级版",专门用来训练更高质量的SDXL模型。就像从小学升到了高中,能学会更复杂更精细的内容。
3.4 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 训练图片 | images | 图片数据 | 5-20张图片 | 和普通版一样,给AI看的教材图片 | 输入的训练图像数据集 | 连接Load Image节点,提供要学习的图片 |
| 保存文件夹 | output_dir | 文件夹路径 | "output/my_sdxl_training" | 保存学习成果的地方 | 训练结果的输出目录 | 填写你想保存训练文件的文件夹名 |
| 学习名称 | placeholder_token | 文本 | "myface_sdxl" | 给学习内容起名字,建议加上sdxl区分 | 文本嵌入的占位符标记 | 起个简单好记的名字,比如"mycat_sdxl" |
| 学习步数 | max_train_steps | 数字 | 5000 | SDXL需要更多练习,所以步数要更多 | 训练的最大步数 | 建议5000起步,效果不好可以到10000 |
| 学习速度 | learning_rate | 小数 | 0.0001 | SDXL需要更小心地学习,所以速度要慢一点 | 模型训练的学习率 | 建议0.0001,比普通版慢一些 |
| 批次大小 | train_batch_size | 数字 | 1 | 每次学习的图片数量 | 每个训练批次的大小 | 显存小用1,显存大可以用2 |
| 保存间隔 | save_steps | 数字 | 1000 | 每学多少步保存一次,SDXL可以间隔长一点 | 模型保存的间隔步数 | 1000或2000都可以 |
| 随机种子 | seed | 数字 | 42 | 控制随机性的号码 | 随机数生成器的种子 | 想要相同结果就用相同数字 |
| 额外提示词 | additional_prompts | 文本 | "white background" | 不想让AI学习的环境描述 | 训练时的额外提示词 | 写一些环境描述,每行一个 |
| 分辨率 | resolution | 数字 | 1024 | SDXL专用,图片的清晰度大小 | 训练图像的分辨率 | SDXL一般用1024,也可以用512 |
| 混合精度 | mixed_precision | 选择 | "fp16" | 就像画画时用粗笔还是细笔,影响质量和速度 | 训练时的数值精度 | 一般选fp16节省显存 |
4. 使用技巧和建议
4.1 图片准备技巧
- 图片数量:5-20张最佳,太少学不好,太多容易"过拟合"(就像背书背得太死)
- 图片质量:选择清晰、光线好的图片
- 图片多样性:包含不同角度、不同光线的图片效果更好
- 图片大小:建议512x512或1024x1024
4.2 参数调整建议
- 新手建议:所有参数都用默认值,先跑一遍看效果
- 学习步数:效果不好就增加步数,但超过10000步通常没必要
- 学习速度:如果训练过程中损失值(loss)下降太快,可以降低学习速度
- 保存间隔:如果担心训练中断,可以设置更小的保存间隔
4.3 命名规范
- 学习名称要简短、英文、无空格
- 避免使用已有的词汇,比如"girl"、"man"
- 建议加上版本号,比如"myface_v1"
5. 常见问题解答
Q1: 训练时显存不够怎么办?
A:
- 降低批次大小(batch_size)改为1
- 如果是SDXL,可以把分辨率从1024改为512
- 关闭其他占用显存的程序
Q2: 训练完成后在哪里找到结果文件?
A:
- 在ComfyUI的output文件夹里,找你设置的文件夹名
- 文件通常以.pt或.safetensors结尾
- 把这个文件放到ComfyUI的embeddings文件夹里就能使用
Q3: 怎么知道训练效果好不好?
A:
- 训练过程中会显示loss值,这个数字越来越小说明在进步
- 训练完后用"你设置的学习名称"在提示词里测试
- 如果生成的图片和训练图片相似,说明效果不错
Q4: 训练时间大概多长?
A:
- 普通版(SD1.5):3000步大约30分钟到1小时
- SDXL版:5000步大约1-3小时
- 具体时间取决于你的显卡性能
Q5: 可以训练什么类型的内容?
A:
- 人脸和人物风格
- 动物(宠物等)
- 艺术风格
- 特定物体
- 不建议训练版权内容
6. 进阶应用
6.1 多概念训练
如果你想训练多个不同的概念,可以:
- 创建多个不同的训练节点
- 使用不同的学习名称
- 分别保存到不同的文件夹
6.2 训练效果优化
- 正则化图片:可以加入一些相关但不完全相同的图片来防止过拟合
- 提示词工程:在additional_prompts里写好的描述可以提高训练质量
- 循序渐进:先用少量步数测试,满意后再增加步数
6.3 与其他节点配合
- 配合ControlNet使用可以更好地控制生成效果
- 配合Lora训练可以获得更灵活的结果
- 配合图片预处理节点可以提高训练图片质量
这个插件让文本嵌入训练变得像搭积木一样简单,不需要复杂的命令行操作,新手也能轻松上手。记住,好的训练效果需要耐心和多次尝试,每次调整一个参数,观察效果变化,慢慢就能找到最适合你的设置!