ComfyUI_1Prompt1Story 插件完全保姆级教程
1. 插件简介
插件地址: https://github.com/leeguandong/ComfyUI_1Prompt1Story
这个插件简单来说,就是一个"故事画册生成器"!想象一下,你只需要写一句话描述你想要的故事,这个插件就能自动帮你生成一连串相关的图片,就像翻页的故事书一样。
比如你写"一只红色的狐狸",它就能生成狐狸在草地上玩耍、在雪地里奔跑、在村庄边休息等等一系列有故事性的图片。最厉害的是,这些图片里的狐狸都是同一只,保持了角色的一致性!
这个插件特别适合: - 想要制作连环画的朋友 - 需要做故事板的创作者 - 想要给孩子讲故事配图的家长 - 喜欢创作视觉小说的作者
2. 如何安装
方法一:使用管理器安装(推荐)
- 打开 ComfyUI
- 找到 ComfyUI Manager(管理器)
- 搜索 "1Prompt1Story"
- 点击安装
- 重启 ComfyUI
方法二:手动安装
- 找到你的 ComfyUI 文件夹
- 进入
custom_nodes文件夹 - 在这里打开命令行(就是黑色的窗口)
- 输入:
git clone https://github.com/leeguandong/ComfyUI_1Prompt1Story.git - 等待下载完成
- 重启 ComfyUI
3. 节点详解
3.1 GenerateStoryImage 节点(故事图片生成器)
这个节点就像一个智能的故事插画师,你告诉它故事的主题和情节,它就能画出一系列连贯的图片。
3.2 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 故事模型 | story_model | 模型对象 | 加载的模型 | 就像选择一个画家的风格,不同的模型画出来的效果不一样 | 包含预训练模型和控制器的配置对象 | 先用模型加载节点加载好模型,然后连接到这里 |
| 主题描述 | id_prompt | 文本字符串 | "一只红色的狐狸" | 这是故事的主角描述,告诉机器故事的核心是什么 | 定义故事主体对象或场景的核心提示词 | 写清楚主角的特征,比如"一个穿蓝色裙子的小女孩" |
| 情节描述 | frame_prompts | 多行文本 | "在花园里\n在学校里\n在家里" | 每一行就是故事的一个场景,用换行分开 | 按时间顺序排列的场景描述提示词序列 | 每行写一个场景,比如第一行"在公园玩耍",第二行"回家吃饭" |
| 随机种子 | seed | 数字 | 42 | 就像抽奖的号码,同样的号码每次生成的图片都一样 | 控制随机数生成的初始值,用于结果复现 | 想要同样效果就用相同数字,想要不同效果就改数字 |
| 图片数量 | window_length | 整数 | 10 | 想要生成多少张图片,就像故事书有多少页 | 指定生成图像序列的总帧数 | 根据你的故事长度来定,短故事用5-8张,长故事用10-20张 |
| 保存位置 | save_dir | 文件路径 | "" | 图片保存到哪个文件夹,空着就保存到默认位置 | 指定输出图像文件的存储目录路径 | 可以写"D:/我的图片/"这样的路径,或者留空使用默认 |
3.3 StoryModel 节点(故事模型加载器)
这个节点负责加载专门用于故事生成的模型,就像给故事插画师准备好画笔和颜料。
3.4 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 基础模型 | model | 模型对象 | SD1.5/SDXL模型 | 就像选择一个画家的基本技能,决定了画画的基础质量 | 用于图像生成的基础扩散模型 | 从模型加载节点连接一个训练好的模型 |
| 控制器 | controlnet | 控制器对象 | ControlNet | 就像给画家一个参考样本,让它按照特定的风格或结构来画 | 用于控制图像生成过程的神经网络控制器 | 通常使用 ControlNet 来保持角色一致性 |
| 配置文件 | config_path | 文件路径 | "config.yaml" | 就像给画家一份详细的作画指南,告诉它怎么画 | 包含模型配置参数的文件路径 | 指向包含模型设置的配置文件 |
3.5 PromptScheduler 节点(提示词调度器)
这个节点就像一个故事导演,负责安排每个场景的描述词在什么时候出现。
3.6 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 提示词列表 | prompts | 文本数组 | ["场景1", "场景2"] | 就像电影剧本,每个场景的描述按顺序排列 | 按时间顺序排列的提示词序列 | 把每个场景的描述写成一个列表 |
| 切换时间 | switch_time | 数字数组 | [5, 10, 15] | 告诉系统什么时候切换到下一个场景 | 指定提示词切换的时间点或帧数 | 如果第5帧切换场景,就写5 |
| 混合强度 | blend_strength | 小数 | 0.5 | 场景之间的过渡有多平滑,就像电影的淡入淡出 | 控制不同提示词之间的混合程度 | 0是突然切换,1是缓慢过渡,0.5是中等 |
3.7 ImageSaver 节点(图片保存器)
这个节点就像一个自动相册整理员,把生成的图片按顺序保存好。
3.8 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 图片数据 | images | 图片张量 | 从生成节点输出 | 就像一摞照片,需要整理保存 | 包含图像数据的张量对象 | 从GenerateStoryImage节点连接过来 |
| 保存路径 | save_path | 文件路径 | "D:/故事图片/" | 图片要保存到哪个文件夹 | 指定图像文件的存储目录 | 选择一个你容易找到的文件夹 |
| 文件名前缀 | filename_prefix | 文本 | "story_" | 给每张图片起名字的开头部分 | 图像文件名的前缀字符串 | 比如"story_",最终文件名就是"story_001.png" |
| 图片格式 | image_format | 选择 | "PNG" | 保存成什么格式的图片文件 | 指定输出图像的文件格式 | PNG质量高但文件大,JPG文件小但质量稍差 |
4. 使用技巧和建议
4.1 写好主题描述的技巧
- 要具体不要抽象:写"一只戴红帽子的白兔"比写"一只兔子"效果更好
- 包含关键特征:颜色、服装、表情这些特征要写清楚
- 避免太复杂:一句话说清楚主要角色就行,不要写太长
4.2 安排故事情节的技巧
- 按时间顺序:早上→中午→晚上,或者第一天→第二天→第三天
- 场景变化要合理:不要从北极突然跳到沙漠,要有逻辑性
- 每个场景简洁:每行就写一个场景,不要写太多细节
4.3 参数调整建议
- 新手建议:先用默认参数试试,熟悉了再调整
- 随机种子的使用:喜欢某次的效果就记住那个数字,下次还能用
- 图片数量控制:第一次尝试建议用5-8张,太多了处理时间长
5. 常见问题解答
Q1:生成的图片角色不一致怎么办?
A: 这通常是因为主题描述不够具体。试试在主题描述里加入更多细节,比如"一个有雀斑的金发小女孩"比"一个小女孩"效果更好。
Q2:图片保存失败怎么办?
A: 检查一下保存路径是否正确,确保那个文件夹存在并且有写入权限。如果不确定,可以先留空用默认路径。
Q3:生成速度很慢怎么办?
A: 减少图片数量,或者使用更轻量的模型。如果电脑配置不高,建议一次生成5张以内的图片。
Q4:生成的图片质量不好怎么办?
A: 检查使用的基础模型质量,推荐使用经过充分训练的模型。同时,提示词要写得更加详细和准确。
Q5:怎样让故事更连贯?
A: 在情节描述中保持场景的逻辑性,比如"在家里→出门→到达公园→在公园玩耍→回家"这样的顺序。
6. 实际应用案例
案例1:制作儿童睡前故事
主题描述: "一只穿黄色睡衣的小熊" 情节描述:
刷牙准备睡觉
躺在床上看书
关灯准备睡觉
做美梦
早上起床
案例2:制作旅行日记
主题描述: "一个背红色背包的女孩" 情节描述:
在机场等待
在飞机上看云
到达海边城市
在沙滩上玩耍
看日落
案例3:制作小动物成长记录
主题描述: "一只小橘猫" 情节描述:
刚出生的小猫
开始学走路
第一次喝奶
学会爬树
长大后的样子
7. 结语
这个插件真的是创作故事的好帮手!虽然刚开始可能需要一些时间来熟悉,但是一旦掌握了,你就能轻松创作出连贯的故事图片了。
记住最重要的几点: 1. 主题描述要具体详细 2. 情节安排要有逻辑 3. 新手先用默认参数 4. 遇到问题多尝试不同的设置
祝你创作愉快!如果有任何问题,可以到ComfyUI的相关论坛或社区寻求帮助。