ComfyUI-Ollama 插件完整教程
插件简介
插件地址: https://github.com/stavsap/comfyui-ollama
这个插件就像给你的 ComfyUI 装上了一个超级聪明的本地 AI 助手!它能让你:
- 和本地运行的 AI 模型聊天对话(就像和朋友聊天一样,但这个朋友超级博学)
- 让 AI 看图说话,描述图片内容(就像有个专业解说员)
- 用中文或任何语言和 AI 交流(不用担心语言障碍)
- 完全在本地运行,保护你的隐私(不用担心数据泄露)
- 支持各种开源 AI 模型(免费使用各种强大的 AI)
简单来说,这就是一个让你在 ComfyUI 里直接使用本地 AI 大模型的神器,完全免费且保护隐私!
如何安装
- 首先需要安装 Ollama(本地 AI 运行环境)
- 访问 https://ollama.ai 下载安装
- 安装后运行
ollama pull llama2下载一个模型
- 打开你的 ComfyUI 文件夹
- 进入
custom_nodes文件夹 - 用 git 下载:
git clone https://github.com/stavsap/comfyui-ollama.git - 安装依赖:在插件文件夹里运行
pip install -r requirements.txt - 重启 ComfyUI
节点详细解析
3.1 Ollama Vision 节点 - AI 看图说话专家
这个节点就像一个专业的图片解说员,能看懂图片并用文字详细描述。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 图片 | images | 连接输入 | 必需 | 要让 AI 看的图片 | 输入图像数据 | 连接任何图片,AI 会描述看到的内容 |
| 询问内容 | query | 文本框 | "describe the image" | 你想问 AI 关于图片的什么问题 | 图像查询提示文本 | "这张图片里有什么动物?"或"描述这个人的表情" |
| 调试模式 | debug | 下拉选择 | disable | 是否显示详细的运行信息 | 调试信息开关 | enable 会显示详细过程,disable 只显示结果 |
| 服务器地址 | url | 文本 | "http://127.0.0.1:11434" | Ollama 服务运行的网址 | Ollama 服务器 URL | 本地运行用默认地址,远程服务器改成对应地址 |
| AI 模型 | model | 下拉选择 | 自动获取 | 选择用哪个 AI 模型来看图 | 视觉语言模型选择 | llava 适合看图,其他模型各有特长 |
| 保持时间 | keep_alive | 数字 | 5 | AI 模型在内存中保持多久(分钟) | 模型保活时间 | 5 表示 5 分钟后自动释放内存 |
| 输出格式 | format | 下拉选择 | text | AI 回答的格式 | 响应格式类型 | text 是普通文字,json 是结构化数据 |
| 随机种子 | seed | 数字 | 随机 | 控制 AI 回答的随机性 | 随机数种子 | 相同种子会得到相似的回答 |
3.2 Ollama Generate 节点 - AI 文本对话器
这个节点就像一个博学的聊天机器人,能回答各种问题和进行对话。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 提示词 | prompt | 文本框 | "What is Art?" | 你想问 AI 的问题或要求 | 文本生成提示 | "请解释什么是人工智能"或"写一首关于春天的诗" |
| 调试模式 | debug | 下拉选择 | disable | 是否显示详细的运行信息 | 调试信息开关 | enable 显示请求和响应详情 |
| 服务器地址 | url | 文本 | "http://127.0.0.1:11434" | Ollama 服务运行的网址 | Ollama 服务器 URL | 本地运行用默认地址 |
| AI 模型 | model | 下拉选择 | 自动获取 | 选择用哪个 AI 模型对话 | 语言模型选择 | llama2 适合对话,codellama 适合编程 |
| 保持时间 | keep_alive | 数字 | 5 | AI 模型在内存中保持多久(分钟) | 模型保活时间 | 设置更长时间避免重复加载 |
| 输出格式 | format | 下拉选择 | text | AI 回答的格式 | 响应格式类型 | text 普通文字,json 结构化数据 |
| 过滤思考过程 | filter_thinking | 开关 | True | 是否隐藏 AI 的思考过程 | 思考过程过滤开关 | 开启后只显示最终答案,不显示推理过程 |
3.3 Ollama Generate Advance 节点 - 高级 AI 对话器
这个节点是对话器的专业版,提供更多精细控制选项。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 提示词 | prompt | 文本框 | "What is Art?" | 你想问 AI 的问题 | 用户输入提示 | 输入任何你想问的问题 |
| 调试模式 | debug | 开关 | False | 是否显示详细信息 | 调试模式开关 | 开启后显示所有请求响应细节 |
| 服务器地址 | url | 文本 | "http://127.0.0.1:11434" | Ollama 服务地址 | 服务器连接地址 | 本地默认地址 |
| AI 模型 | model | 下拉选择 | 自动获取 | 选择 AI 模型 | 模型选择器 | 不同模型有不同特长 |
| 系统角色 | system | 文本框 | "You are an art expert..." | 告诉 AI 扮演什么角色 | 系统提示设置 | "你是一个专业的摄影师"让 AI 从摄影角度回答 |
| 随机种子 | seed | 数字 | 随机 | 控制回答的随机性 | 随机数种子 | 固定种子得到一致结果 |
| Top K | top_k | 数字 | 40 | 控制词汇选择的范围 | 词汇采样参数 | 数值越小回答越保守,越大越有创意 |
| Top P | top_p | 小数 | 0.9 | 控制回答的多样性 | 核采样参数 | 0.9 平衡创意和准确性 |
| 温度 | temperature | 小数 | 0.8 | 控制回答的创造性 | 生成温度参数 | 0.1 很保守,1.0 很有创意 |
| 预测数量 | num_predict | 数字 | -1 | 限制回答的长度 | 最大生成令牌数 | -1 不限制,128 短回答,512 长回答 |
| TFS Z | tfs_z | 小数 | 1.0 | 控制文本流畅度 | 尾部自由采样参数 | 通常保持默认值 |
| 保持时间 | keep_alive | 数字 | 5 | 模型保持活跃时间 | 模型保活分钟数 | 频繁使用设置更长时间 |
| 保持上下文 | keep_context | 开关 | False | 是否记住之前的对话 | 上下文保持开关 | 开启后 AI 会记住对话历史 |
| 输出格式 | format | 下拉选择 | text | 回答格式 | 输出格式选择 | text 或 json 格式 |
| 过滤思考 | filter_thinking | 开关 | True | 过滤思考过程 | 思考过程过滤 | 只显示最终答案 |
| 上下文 | context | 连接输入 | 可选 | 外部提供的对话上下文 | 上下文数据输入 | 连接之前保存的对话记录 |
3.4 Ollama Options V2 节点 - AI 参数配置器
这个节点就像一个专业的调音台,让你精细调节 AI 的各种行为参数。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 启用 Mirostat | enable_mirostat | 开关 | False | 是否启用智能采样控制 | Mirostat 采样开关 | 开启后 AI 回答更稳定 |
| Mirostat 模式 | mirostat | 数字 | 0 | 智能采样的模式 | Mirostat 算法版本 | 0 关闭,1 或 2 是不同算法 |
| 启用 Mirostat Eta | enable_mirostat_eta | 开关 | False | 是否启用学习率控制 | Mirostat Eta 开关 | 控制采样学习速度 |
| Mirostat Eta | mirostat_eta | 小数 | 0.1 | 学习率数值 | 学习率参数 | 影响采样适应速度 |
| 启用 Mirostat Tau | enable_mirostat_tau | 开关 | False | 是否启用目标熵控制 | Mirostat Tau 开关 | 控制输出的随机程度 |
| Mirostat Tau | mirostat_tau | 小数 | 5.0 | 目标熵数值 | 目标熵参数 | 影响输出的一致性 |
| 启用上下文长度 | enable_num_ctx | 开关 | False | 是否限制记忆长度 | 上下文长度开关 | 控制 AI 能记住多少内容 |
| 上下文长度 | num_ctx | 数字 | 2048 | AI 能记住的最大内容量 | 上下文窗口大小 | 2048 适合一般对话,4096 适合长文档 |
| 启用重复控制 | enable_repeat_last_n | 开关 | False | 是否控制重复内容 | 重复检测开关 | 避免 AI 重复说同样的话 |
| 重复检查范围 | repeat_last_n | 数字 | 64 | 检查最近多少个词的重复 | 重复检测范围 | 数值越大检测范围越广 |
| 启用重复惩罚 | enable_repeat_penalty | 开关 | False | 是否惩罚重复内容 | 重复惩罚开关 | 让 AI 避免重复表达 |
| 重复惩罚强度 | repeat_penalty | 小数 | 1.1 | 惩罚重复的强度 | 重复惩罚系数 | 1.0 不惩罚,1.5 强烈惩罚 |
| 启用温度控制 | enable_temperature | 开关 | False | 是否控制创造性 | 温度控制开关 | 控制回答的随机性 |
| 温度 | temperature | 小数 | 0.8 | 创造性程度 | 生成温度 | 0.1 保守,1.0 有创意 |
| 启用随机种子 | enable_seed | 开关 | False | 是否固定随机性 | 种子控制开关 | 固定种子得到一致结果 |
| 随机种子 | seed | 数字 | 随机 | 随机数种子 | 随机种子值 | 相同种子产生相同结果 |
| 启用停止词 | enable_stop | 开关 | False | 是否设置停止词 | 停止词开关 | 遇到特定词汇就停止生成 |
| 停止词 | stop | 文本 | "" | 让 AI 停止的词汇 | 停止词列表 | 输入"结束"让 AI 遇到就停止 |
| 启用 TFS Z | enable_tfs_z | 开关 | False | 是否启用尾部采样 | TFS Z 开关 | 控制文本流畅度 |
| TFS Z | tfs_z | 小数 | 1.0 | 尾部采样参数 | 尾部自由采样值 | 影响生成质量 |
| 启用预测数量 | enable_num_predict | 开关 | False | 是否限制回答长度 | 预测数量开关 | 控制生成文本长度 |
| 预测数量 | num_predict | 数字 | -1 | 最大生成词数 | 最大预测令牌数 | -1 不限制,128 短回答 |
| 启用 Top K | enable_top_k | 开关 | False | 是否启用词汇筛选 | Top K 采样开关 | 限制词汇选择范围 |
| Top K | top_k | 数字 | 40 | 词汇选择范围 | Top K 采样值 | 40 平衡质量和多样性 |
| 启用 Top P | enable_top_p | 开关 | False | 是否启用概率筛选 | Top P 采样开关 | 基于概率选择词汇 |
| Top P | top_p | 小数 | 0.9 | 概率筛选阈值 | Top P 采样值 | 0.9 平衡准确性和创意 |
| 启用 Min P | enable_min_p | 开关 | False | 是否设置最小概率 | Min P 采样开关 | 设置词汇选择的最低概率 |
| Min P | min_p | 小数 | 0.0 | 最小概率阈值 | 最小概率值 | 过滤低概率词汇 |
| 调试模式 | debug | 开关 | False | 显示参数详情 | 调试信息开关 | 查看所有参数设置 |
3.5 Ollama Connectivity V2 节点 - 连接配置器
这个节点就像一个网络设置面板,配置如何连接到 AI 服务。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 服务器地址 | url | 文本 | "http://127.0.0.1:11434" | Ollama 服务的网址 | 服务器连接地址 | 本地用默认地址,远程改成实际地址 |
| AI 模型 | model | 下拉选择 | 自动获取 | 要使用的 AI 模型 | 模型名称选择 | llama2、codellama 等不同模型 |
| 保持时间 | keep_alive | 数字 | 5 | 模型保持活跃的时间 | 模型保活时长 | 频繁使用设置更长时间节省加载时间 |
| 时间单位 | keep_alive_unit | 下拉选择 | minutes | 时间的单位 | 时间单位选择 | minutes 分钟,hours 小时 |
3.6 Ollama Generate V2 节点 - 新版 AI 生成器
这个节点是最新版的 AI 对话生成器,整合了所有功能并支持模块化配置。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 系统角色 | system | 文本框 | "You are an AI artist." | 设定 AI 的身份角色 | 系统提示设置 | "你是一个专业摄影师"让 AI 从摄影角度回答 |
| 提示词 | prompt | 文本框 | "What is art?" | 你要问 AI 的问题 | 用户提示输入 | 输入任何想问的问题或要求 |
| 过滤思考 | filter_thinking | 开关 | True | 是否隐藏思考过程 | 思考过程过滤 | 只显示最终答案,不显示推理 |
| 保持上下文 | keep_context | 开关 | False | 是否记住对话历史 | 上下文保持开关 | 开启后 AI 记住之前的对话 |
| 输出格式 | format | 下拉选择 | text | 回答的格式 | 输出格式选择 | text 普通文字,json 结构化数据 |
| 连接配置 | connectivity | 连接输入 | 可选 | 连接服务器配置 | 连接配置输入 | 从 Connectivity V2 节点连线 |
| 选项配置 | options | 连接输入 | 可选 | 连接参数配置 | 选项配置输入 | 从 Options V2 节点连线 |
| 图片 | images | 连接输入 | 可选 | 要让 AI 分析的图片 | 图像输入 | 连接图片让 AI 看图说话 |
| 上下文 | context | 连接输入 | 可选 | 之前的对话上下文 | 上下文数据输入 | 连接保存的对话记录 |
| 元数据 | meta | 连接输入 | 可选 | 包含配置的元数据 | 元数据输入 | 包含连接和选项的综合配置 |
3.7 Ollama Save Context 节点 - 对话记录保存器
这个节点就像一个对话记录本,能把 AI 的对话历史保存到文件里。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 上下文 | context | 连接输入 | 必需 | 要保存的对话记录 | 上下文数据输入 | 连接 Generate 节点的 context 输出 |
| 文件名 | filename | 文本 | "context" | 保存文件的名称 | 文件名设置 | "我的对话记录"会保存为对应文件 |
3.8 Ollama Load Context 节点 - 对话记录加载器
这个节点就像一个对话记录播放器,能读取之前保存的对话历史。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 上下文文件 | context_file | 下拉选择 | 根据文件 | 选择要加载的对话记录文件 | 上下文文件选择 | 选择之前保存的对话记录文件 |
3.9 前端扩展 - 智能模型选择器
这个前端扩展就像一个智能助手,能自动获取可用的 AI 模型列表并更新界面。
功能说明
| 功能 | 作用 | 通俗解释 | 专业解释 | 使用效果 |
|---|---|---|---|---|
| 自动获取模型 | 连接 Ollama 服务获取模型列表 | 自动发现你安装了哪些 AI 模型 | 动态获取可用模型列表 | 下拉菜单自动显示所有可用模型 |
| 智能更新 | URL 改变时自动刷新模型列表 | 换了服务器地址会自动更新模型选项 | 响应连接配置变化 | 切换服务器后模型列表自动更新 |
| 记忆功能 | 记住之前选择的模型 | 换服务器后还记得你之前用的模型 | 保持用户选择状态 | 如果新服务器有相同模型会自动选中 |
使用技巧和建议
-
新手入门路线:
- 先用 Ollama Generate 节点熟悉基本对话
- 然后尝试 Ollama Vision 让 AI 看图说话
- 最后用 Generate V2 配合 Options V2 进行高级控制
-
模型选择建议:
- llama2: 适合一般对话和问答
- llava: 专门用于图像理解和描述
- codellama: 适合编程相关问题
- mistral: 速度快,适合简单任务
-
参数调优技巧:
- 温度 0.1-0.3: 需要准确答案时(如数学题)
- 温度 0.7-0.9: 需要创意内容时(如写作)
- Top P 0.9: 平衡准确性和多样性的最佳值
- Top K 40: 大多数情况下的最佳选择
-
性能优化:
- 频繁使用时设置较长的 keep_alive 时间
- 不需要时设置较短时间释放内存
- 使用 V2 版本节点获得更好的性能和功能
-
上下文管理:
- 长对话时启用 keep_context 保持连贯性
- 定期保存重要对话记录
- 使用 Save/Load Context 节点管理对话历史
常见问题解答
Q: 为什么连接不上 Ollama 服务?
A: 确保 Ollama 已经安装并运行,检查服务地址是否正确(默认是 http://127.0.0.1:11434)。
Q: 模型列表为空怎么办?
A: 需要先用 ollama pull 模型名 下载模型,比如 ollama pull llama2。
Q: AI 回答很慢怎么办?
A: 检查电脑配置,考虑使用更小的模型,或者调整 num_predict 参数限制回答长度。
Q: 如何让 AI 记住之前的对话?
A: 在 Generate Advance 或 Generate V2 中开启 keep_context 选项。
Q: Vision 节点看不懂图片?
A: 确保使用支持视觉的模型如 llava,普通的文本模型无法处理图片。
Q: 如何让 AI 扮演特定角色?
A: 在 system 参数中设置角色,比如"你是一个专业的摄影师"。
Q: 输出格式选择 json 但得到普通文字?
A: 在提示词中明确要求 JSON 格式,比如"请用 JSON 格式回答"。
Q: 如何控制回答的创意程度?
A: 调整 temperature 参数,0.1 很保守,1.0 很有创意。
高级应用示例
智能图片描述工作流:
- 加载图片 → Ollama Vision
- 设置 query 为"详细描述这张图片的内容、风格和情感"
- 选择 llava 模型
- 获得专业的图片分析
连续对话工作流:
- Ollama Connectivity V2 → Ollama Generate V2
- 开启 keep_context
- 每次对话的 context 输出连接到下次的 context 输入
- 实现连续对话记忆
参数化创作工作流:
- Ollama Options V2 → Ollama Generate V2
- 调整 temperature 和 top_p 参数
- 设置不同的 system 角色
- 生成不同风格的创作内容
总结
ComfyUI-Ollama 插件包含 9 个强大的节点,为用户提供了完整的本地 AI 对话和图像理解解决方案。从简单的文本生成到复杂的多模态交互,从基础对话到高级参数控制,这个插件都能满足。
插件特点:
- ✅ 完全本地运行,保护隐私
- ✅ 支持多种开源模型
- ✅ 提供图像理解能力
- ✅ 支持连续对话记忆
- ✅ 丰富的参数控制选项
- ✅ 模块化设计便于组合使用
节点分类统计:
- 基础对话类:2个(Generate、Generate Advance)
- 图像理解类:1个(Vision)
- 新版本类:3个(Generate V2、Options V2、Connectivity V2)
- 数据管理类:2个(Save Context、Load Context)
- 前端扩展类:1个(智能模型选择器)
对于想要在 ComfyUI 中使用本地 AI 大模型的用户来说,这是一个功能完整、易于使用的专业工具包。无论是简单的问答还是复杂的多模态应用,都能在这个插件中找到合适的解决方案。