当前位置: 首页 > news >正文

Ollama + ComfyUI 本地 AI 工作流实战:从 0 搭建到 API 批量出图(附代码)

Ollama + ComfyUI 本地 AI 工作流实战:从 0 搭建到 API 批量出图(附代码)

本地部署大模型与绘图,是降低 API 成本的关键。本文基于个人实测,展示如何用 Ollama 调度 LLM,结合 ComfyUI 实现自动化批量出图。数据均为个人实测,非官方标准,仅供参考。

一、环境搭建:LLM 推理 + 绘图引擎

硬件选择决定上限。本人实测环境:RTX 5090 / 32G 显存。

  1. Ollama 部署:拉取qwen3.5:35b。该模型参数量大,适合复杂指令理解。个人实测,加载耗时约 45 秒,占用显存约 24G。
  2. ComfyUI 部署:安装“大炮版”(Turbo 模式)。相比标准版,Turbo 推理步数更少,速度提升 3 倍。个人实测,单张图生成耗时从 10 秒降至 3 秒。
  3. 显存分配:两者同时运行时,需确保总显存不超过 28G,预留 4G 给系统。

二、API 调用:Python 批量生成脚本

通过 HTTP 协议调用 ComfyUI 内部接口,可实现无感批量出图。

importurllib.request,json# ComfyUI /prompt 接口:payload 是「完整节点图(workflow)」,不是模型名字符串。# 下方为最小骨架,真实可跑版本见配套脚本 comfy_gen_ai.py(z-image-turbo 工作流)。defsubmit_workflow(workflow:dict)->str:url="http://127.0.0.1:8878/prompt"req=urllib.request.Request(url,data=json.dumps({"prompt":workflow}).encode(),headers={"Content-Type":"application/json"})returnjson.loads(urllib.request.urlopen(req,timeout=60).read())["prompt_id"]# 提交后轮询 /history/{prompt_id} 取结果,再经 /view?filename=... 下载图片

代码逻辑简单:urllib直连127.0.0.1:8878,不依赖外部库。

  1. Workflow 指定prompt字段需对应 ComfyUI 中的工作流名称,此处为z-image-turbo
  2. 画面控制:提示词中必须包含“无文字”、“无水印”约束,确保画面干净。
  3. 返回处理:返回 JSON 包含图片 ID,后续可下载至本地。

实际运行中,需处理并发请求。若并发过高,ComfyUI 可能返回 503 错误。建议设置循环间隔 0.5 秒,避免服务阻塞。

三、调度策略:显存管理与错峰

Ollama 和 ComfyUI 同时驻留显存,极易导致 OOM(显存溢出)。

  1. 关闭常驻内存:设置环境变量OLLAMA_KEEP_ALIVE=0
  2. 错峰调度:仅当需要生成图像时,才启动 LLM 推理服务。
  3. 显存监控:使用nvidia-smi监控,若显存占用超过 29G,立即终止 Ollama 进程。

相比云端 API,单次生成成本降低 90%(个人实测),但需承担硬件折旧风险。

通过上述配置,可实现低成本、高隐私的本地 AI 生产流。

关键结论:本地化部署虽需前期硬件投入,但长期批量产出时,ROI 远高于云端 API。

http://www.jsqmd.com/news/1365008/

相关文章:

  • 国内开发者如何绕过OpenRouter三大障碍?AI聚合平台与API中转站选型指南
  • PIAS1与SUMO化修饰在细胞迁移中的调控机制
  • 深入解析ncmdump:解密网易云音乐NCM加密格式的技术实现与应用指南
  • C++编程入门:从基础语法到现代特性全解析
  • 2026.8月南宁防水修缮品牌盘点,潮湿多雨环境下房屋渗漏如何科学解决 - 国麟测评
  • 罗技鼠标宏终极指南:PUBG无后坐力脚本完整配置教程
  • 2026年北京靠谱GEO公司推荐:泛海明心为何更负责任? - GrowthUME
  • 泰州这家少儿综合艺术美育机构,凭什么让家长都主动推荐? - GrowthUME
  • 奇偶校验、循环冗余校验码、海明码详细介绍
  • 2026年8月比较好的物理实验室设备制造厂家找哪家测评,教学仪器供应商分析 - 海棠依旧大
  • 一个企业文件管理工具的七次蜕变:从存文件到智能知识底座
  • 全民健身日,挥拍在天山!CPC-1000新疆温宿站启幕 - 资讯综合
  • 中国矿山建设网站:深耕行业十余年,我们如何重新定义矿山工程服务的信任与价值
  • Python 实现错题归因:OCR 识别 + 错因分类,从 0 到 1
  • Linux fork函数与父子进程管理深度解析
  • ESP32 WiFi安全审计:Marauder工具实践与防护方案
  • 容度原理终极推演:月球上的“反物质矿藏”及其千万亿美元级价值
  • 免费投票链接制作平台,众选星+云帆投票+圈投票2026实测评比 - 优企甄选
  • Python开发环境搭建与PyCharm社区版使用全指南
  • 从“大数据许愿”到工程化社交:技术匹配的边界与实用指南
  • 邯郸诚信车行|本地买中高端二手车怎么选?选购避坑实用指南 - 国麟测评
  • 从 POSIX API 到网络协议栈:一条 TCP 连接的一生
  • 我研究了七次架构重构,发现企业文件管理系统的终局是「底座」
  • 【Python实时盯盘与预警 #09】涨了3%就报警太吵?4个条件任意组合的异动雷达
  • Unity 3D电子围栏:动态生成、Shader交互与性能优化全解析
  • 智慧楼宇多时间尺度能源调度与Matlab实现
  • Demo惊艳全场,上线全线拉胯:AI项目90%落地失败,FDE视角拆解从Demo到交付的死亡之谷
  • Unity复刻Minecraft:体素世界构建与性能优化实践指南
  • Python爬虫代理配置与优化实战指南
  • 创新项目验收测试:方法论与实战陷阱解析