ComfyUI-oshtz-nodes 插件完整使用教程
1. 插件简介
ComfyUI-oshtz-nodes 是一个专为 ComfyUI 设计的自定义节点插件包,GitHub 原地址:https://github.com/oshtz/ComfyUI-oshtz-nodes
这个插件就像是给你的 ComfyUI 工具箱添加了一堆新工具,主要能帮你做这些事情:
- 和 ChatGPT、Claude 聊天:就像在手机上用微信聊天一样,可以直接在 ComfyUI 里问 AI 问题
- 图片生成和编辑:用 OpenAI 的视觉模型来生成和修改图片,就像用 AI 版的美图秀秀
- 快速调整画面比例:一键设置各种常见的画面比例,比如正方形、宽屏、超宽屏等
- 文字分割器:把一段长文字拆分成多个小段,就像把一根长面条掰成几段
- LoRA 模型快速切换:在多个 AI 模型之间快速切换,就像遥控器换台一样方便
- 图片合成工具:把多张图片组合在一起,就像拼图一样
2. 如何安装
方法一:使用 ComfyUI Manager(推荐)
- 打开 ComfyUI,点击右侧的"Manager"按钮
- 在弹出的窗口中点击"Install Custom Nodes"
- 搜索"oshtz"或"ComfyUI-oshtz-nodes"
- 找到后点击"Install"按钮
- 安装完成后重启 ComfyUI
方法二:手动安装
- 找到你的 ComfyUI 安装目录下的
custom_nodes文件夹 - 打开命令行(Windows 按 Win+R,输入 cmd)
- 输入以下命令:
git clone https://github.com/oshtz/ComfyUI-oshtz-nodes.git - 进入插件目录并安装依赖:
cd ComfyUI-oshtz-nodes pip install -r requirements.txt - 重启 ComfyUI
3. 节点详细解析
3.1 OpenAI Chat 节点 - AI 聊天助手
这个节点就像是在 ComfyUI 里内置了一个 ChatGPT,你可以直接和它对话。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| API Key | api_key | 文本输入 | 你的 OpenAI API 密钥 | 这就像你的会员卡号,用来证明你有权限使用 ChatGPT | OpenAI API 认证密钥 | 去 OpenAI 官网申请,格式像 sk-xxxxxx |
| Model | model | 下拉选择 | gpt-4o | 选择要使用的 AI 大脑版本 | 指定使用的 GPT 模型版本 | gpt-4o 最聪明但贵,gpt-3.5-turbo 便宜但稍逊 |
| System Prompt | system_prompt | 文本输入 | 空白 | 告诉 AI 它应该扮演什么角色 | 系统级提示词,定义 AI 行为 | 比如"你是一个专业的摄影师" |
| User Message | user_message | 文本输入 | 必填 | 你想问 AI 的问题 | 用户输入的对话内容 | "帮我写一个关于猫的故事" |
| Temperature | temperature | 数值滑块 | 0.7 | 控制 AI 回答的创意程度,像调节想象力旋钮 | 控制生成文本的随机性 | 0.1 很保守,0.9 很有创意 |
| Max Tokens | max_tokens | 数值输入 | 2048 | 限制 AI 回答的长度,像设置字数限制 | 控制生成文本的最大长度 | 1000 = 大约 750 个中文字 |
3.2 Anthropic Chat 节点 - Claude 聊天助手
这个节点让你能和 Claude(另一个 AI 助手)对话,就像有了两个不同性格的朋友可以聊天。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| API Key | api_key | 文本输入 | 你的 Anthropic API 密钥 | 这是你使用 Claude 的门票 | Anthropic API 认证密钥 | 去 Anthropic 官网申请 |
| Model | model | 下拉选择 | claude-3-opus | 选择 Claude 的版本 | 指定使用的 Claude 模型 | opus 最强,sonnet 平衡,haiku 最快 |
| System Prompt | system_prompt | 文本输入 | 空白 | 设置 Claude 的角色和行为 | 系统提示词 | "你是一个创意写作导师" |
| User Message | user_message | 文本输入 | 必填 | 你想和 Claude 说的话 | 用户对话内容 | "帮我分析这张图片" |
| Temperature | temperature | 数值滑块 | 0.7 | 控制回答的创意程度 | 控制生成随机性 | 0.1 很严谨,0.9 很发散 |
| Max Tokens | max_tokens | 数值输入 | 4096 | 限制回答长度 | 最大生成长度 | Claude 能写更长的文章 |
3.3 OpenAI Vision 节点 - 图片生成和编辑
这个节点就像是一个 AI 画家,能根据你的描述生成或修改图片。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| API Key | api_key | 文本输入 | 你的 OpenAI API 密钥 | 使用 OpenAI 图片服务的凭证 | OpenAI API 认证 | 同上面的 API Key |
| Prompt | prompt | 文本输入 | 必填 | 告诉 AI 你想要什么样的图片 | 图片生成提示词 | "一只穿着西装的猫在办公室" |
| Size | size | 下拉选择 | 1024x1024 | 选择图片的尺寸大小 | 生成图片的像素尺寸 | 1024x1024 适合社交媒体 |
| Quality | quality | 下拉选择 | standard | 选择图片质量,就像选择相机的清晰度 | 图片生成质量等级 | hd 更清晰但更贵 |
| Style | style | 下拉选择 | vivid | 选择图片风格 | 图片生成风格 | vivid 鲜艳,natural 自然 |
| Transparent Background | transparent_bg | 复选框 | false | 是否要透明背景,就像 PNG 图片 | 是否生成透明背景 | 做 logo 时很有用 |
| Input Image | input_image | 图片输入 | 可选 | 提供一张参考图片 | 用于图片编辑的输入图像 | 上传你想修改的图片 |
| Mask | mask | 图片输入 | 可选 | 蒙版,标记要修改的区域 | 编辑时的蒙版图像 | 黑色保留,白色修改 |
3.4 Aspect Ratio 节点 - 画面比例设置器
这个节点就像一个智能的画框调整器,能快速设置各种标准的画面比例。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Aspect Ratio | aspect_ratio | 下拉选择 | 16:9 | 选择画面的长宽比例 | 设置图像的宽高比 | 16:9 看电影,1:1 发朋友圈 |
| Base Size | base_size | 数值输入 | 512 | 设置基础尺寸,就像设置画布大小 | 计算实际尺寸的基数 | 512 适合快速测试 |
| Orientation | orientation | 下拉选择 | landscape | 选择横屏还是竖屏 | 图像方向设置 | landscape 横屏,portrait 竖屏 |
3.5 Text Splitter 节点 - 文字分割器
这个节点就像一把智能剪刀,能把一段长文字按照你的要求切分成多个小段。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Text | text | 文本输入 | 必填 | 要分割的文字内容 | 输入的文本数据 | "苹果,香蕉,橙子,葡萄" |
| Separator | separator | 文本输入 | , | 分割符号,就像切菜的刀线 | 文本分割标识符 | 逗号、分号、换行符等 |
| Max Outputs | max_outputs | 数值输入 | 10 | 最多能分割出多少段 | 最大输出数量 | 最多支持 10 个输出 |
| Strip Whitespace | strip_whitespace | 复选框 | true | 是否去掉每段文字前后的空格 | 是否清理空白字符 | 通常建议开启 |
3.6 LoRA Switcher 节点 - 模型快速切换器
这个节点就像一个智能的模型管理器,能让你快速在多个 LoRA 模型之间切换。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Model Input | model_input | 模型输入 | 必填 | 基础模型,就像原始画笔 | 输入的基础模型 | 通常连接主模型 |
| Switch Mode | switch_mode | 下拉选择 | single | 选择切换模式 | LoRA 切换方式 | single 单选,multiple 多选 |
| LoRA 1 | lora_1 | 下拉选择 | None | 第一个 LoRA 模型 | 第一个 LoRA 文件 | 选择你下载的 LoRA 文件 |
| Strength 1 | strength_1 | 数值滑块 | 1.0 | 第一个 LoRA 的强度 | LoRA 影响强度 | 0.5 温和,1.0 标准,1.5 强烈 |
| LoRA 2 | lora_2 | 下拉选择 | None | 第二个 LoRA 模型 | 第二个 LoRA 文件 | 可以组合多个风格 |
| Strength 2 | strength_2 | 数值滑块 | 1.0 | 第二个 LoRA 的强度 | 第二个 LoRA 影响强度 | 根据需要调整 |
| Active Index | active_index | 数值输入 | 0 | 当前激活的 LoRA 编号 | 当前使用的 LoRA 索引 | 0 是第一个,1 是第二个 |
3.7 Image Combiner 节点 - 图片合成器
这个节点就像一个智能的图片拼接工具,能把多张图片合成在一起。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Base Image | base_image | 图片输入 | 必填 | 底图,就像画布 | 作为基础的图像 | 上传你的背景图片 |
| Overlay Image | overlay_image | 图片输入 | 必填 | 要叠加的图片 | 叠加在基础图像上的图片 | 上传要合成的图片 |
| X Position | x_position | 数值输入 | 0 | 叠加图片的水平位置 | 叠加图像的 X 轴坐标 | 0 是最左边,正数向右移 |
| Y Position | y_position | 数值输入 | 0 | 叠加图片的垂直位置 | 叠加图像的 Y 轴坐标 | 0 是最上面,正数向下移 |
| Opacity | opacity | 数值滑块 | 1.0 | 叠加图片的透明度 | 叠加图像的不透明度 | 1.0 完全不透明,0.5 半透明 |
| Blend Mode | blend_mode | 下拉选择 | normal | 图片混合模式 | 图像混合算法 | normal 正常,multiply 正片叠底 |
| Auto Resize | auto_resize | 复选框 | true | 是否自动调整图片大小 | 是否自动匹配图像尺寸 | 建议开启以避免尺寸问题 |
4. 使用技巧和建议
4.1 API 密钥管理
- 建议将 API 密钥保存在环境变量中,避免直接写在工作流里
- 可以使用 ComfyUI 的设置文件来统一管理密钥
- 不要在公开的工作流中包含真实的 API 密钥
4.2 模型选择建议
- OpenAI 聊天:日常对话用 gpt-3.5-turbo,复杂任务用 gpt-4o
- Claude 聊天:创意写作用 opus,一般任务用 sonnet
- 图片生成:追求质量选 hd,节省成本选 standard
4.3 性能优化
- 合理设置 max_tokens 避免不必要的费用
- 使用适当的 temperature 值,不要总是用最高创意度
- 图片生成时选择合适的尺寸,避免过大导致费用增加
4.4 工作流组合建议
- 可以将 Text Splitter 和 Chat 节点组合,批量处理多个文本
- LoRA Switcher 配合 Image Combiner 能创造出有趣的风格混合效果
- Aspect Ratio 节点很适合放在工作流的前端,统一管理图片尺寸
5. 常见问题解答
Q1: API 密钥无效怎么办?
A: 检查密钥是否正确复制,确保没有多余的空格。OpenAI 密钥以 sk- 开头,Anthropic 密钥格式不同。
Q2: 图片生成失败怎么办?
A: 检查提示词是否包含违禁内容,确保 API 余额充足,网络连接正常。
Q3: LoRA 模型无法加载?
A: 确保 LoRA 文件放在正确的目录,文件名没有特殊字符,格式正确。
Q4: 文字分割结果不对?
A: 检查分割符是否正确,确保文本编码没有问题,尝试不同的分割符。
Q5: 图片合成位置不对?
A: 注意坐标系统,X 轴向右为正,Y 轴向下为正,可以使用负数值。
6. 进阶使用技巧
6.1 创建智能工作流
你可以组合多个节点创建智能化的工作流:
- 使用 Chat 节点生成图片描述
- 用 Aspect Ratio 节点设置合适的尺寸
- 通过 Vision 节点生成基础图片
- 用 LoRA Switcher 应用不同风格
- 最后用 Image Combiner 进行精细调整
6.2 批量处理技巧
- 使用 Text Splitter 将多个任务分离
- 结合循环节点实现批量处理
- 设置合适的延迟避免 API 限制
6.3 成本控制
- 监控 API 使用情况
- 在测试阶段使用较便宜的模型
- 合理设置 max_tokens 和图片尺寸
这个插件为 ComfyUI 用户提供了强大的 AI 集成能力,让你能够在图片生成工作流中轻松融入文本生成和图像编辑功能。通过合理组合这些节点,你可以创建出非常强大和自动化的创作工作流。