【Mac】ComfyUI 部署

PC:Mac M1

一、ComfyUI 部署

未安装 Homebrew 的移步: 【Mac】Homebrew

未安装 Conda 的移步: 【Mac】安装 Python3 二、2、通过 conda 安装管理 Python

安装 ComfyUI:

bash 复制代码
# 启用虚拟环境
conda create -y -n comfyui python=3.12
conda activate comfyui

# 安装pytorch
conda install pytorch torchvision torchaudio -c pytorch-nightly -y

# 克隆 ComfyUI 项目
git clone https://github.com/comfyanonymous/ComfyUI

# 进入安装目录
cd ComfyUI

# 修改配置文件,使 ComfyUI 与 Stable Diffusion 公用模型文件
# 未安装SD的忽略这两条命令
cp extra_model_paths.yaml.example extra_model_paths.yaml
sed -i '' 's#path/to/stable-diffusion-webui#../stable-diffusion-webui#g' extra_model_paths.yaml

# 安装依赖
pip install -r requirements.txt

# 启动 ComfyUI
python main.py

注意 :ComfyUI不会像Stable Diffusion自动弹出浏览器界面,需手动在浏览器输入终端出现的地址,一般是:http://127.0.0.1:8188

如需安装SD的移步【Mac】 Stable Diffusion 部署

可能出现的警告或报错:

  • Reason: tried: '/opt/miniconda3/envs/comfyui/lib/python3.12/site-packages/torchvision/../../../libjpeg.9.dylib' (no such file), '/opt/miniconda3/envs/comfyui/lib/python3.12/site-packages/torchvision/../../../libjpeg.9.dylib' (no such file), '/opt/miniconda3/envs/comfyui/lib/python3.12/lib-dynload/../../libjpeg.9.dylib' (no such file), '/opt/miniconda3/envs/comfyui/bin/../lib/libjpeg.9.dylib' (no such file)'If you don't plan on using image functionality from torchvision.io, you can ignore this warning. Otherwise, there might be something wrong with your environment. Did you have libjpeg or libpng installed before building torchvision from source?

    先检查是否安装 libjpeg:

    bash 复制代码
    (comfyui) zs@Mac ComfyUI % brew install libjpeg
    Warning: jpeg 9f is already installed and up-to-date.
    To reinstall 9f, run:
      brew reinstall jpeg

    libjpeg 即 jpeg 已安装,并且是最新版本,设置环境变量:

    bash 复制代码
    export DYLD_LIBRARY_PATH=/opt/homebrew/Cellar/jpeg/9f/lib

    此时再去重启 ComfyUI 就没有对应的信息。

二、插件

1、插件安装

  • 方式一:进入 ComfyUI/custom_nodes 目录,使用 git clone 拉取项目代码,启动 ComfyUI 即可,例:

    bash 复制代码
    cd ComfyUI/custom_nodes
    git clone https://github.com/ltdrdata/ComfyUI-Manager.git
    python ../main.py
  • 方式二:在 Github 上下载对应的项目zip压缩包,解压到 ComfyUI/custom_nodes 目录下,记得把后缀分支名称去掉,然后重启ComfyUI。

2、ComfyUI-Manager

项目地址:https://github.com/ltdrdata/ComfyUI-Manager.git

ComfyUI管理器是一个旨在增强ComfyUI可用性的扩展。它提供了安装、删除、禁用和启用ComfyUI各种自定义节点的管理功能。此外,此扩展提供了一个中心功能和便利功能,可以在ComfyUI中访问各种信息。

三、使用 ComfyUI Reactor Node 实现视频换脸

1、项目说明

ComfyUI Reactor Node 是一个快速且简单的面部交换扩展节点,专为 ComfyUI 设计。该项目基于 ReActor SD-WebUI 面部交换扩展,旨在提供一个无需 NSFW 过滤器(未经审查)的面部交换功能。用户可以自行承担使用该节点的责任。

项目地址:https://gitcode.com/gh_mirrors/co/comfyui-reactor-node

关键技术和框架:

  • ComfyUI: 一个用于图像处理和生成的用户界面框架。
  • ReActor SD-WebUI: 一个基于 Stable Diffusion 的面部交换扩展。
  • Insightface: 一个用于面部识别和分析的开源库。
  • ONNX Runtime: 一个用于加速深度学习模型推理的运行时。
  • GPEN: 一个用于面部修复的模型。

2、插件安装

  • 第一步,点击 Manager ⇒ 点击 Custom Nodes Manager

  • 第二步,搜索 reactor ⇒ 安装 comfyui-reactor-node

  • 第三步,重启 ComfyUI,刷新浏览器

  • 第四步,下载模型 inswapper_128.onnx 放到 ComfyUI/models/insightface 目录下

    模型下载地址:Hugging FaceGoogleCloudPlusCSDN百度网盘

上述第二步,reactor 安装失败的,参照以下步骤:

  • 第一步,Github上边下载 项目代码 放到 ComfyUI/custom_nodes 目录下

  • 第二步,下载模型 codeformer-v0.1.0.pth 和 GFPGANv1.4.pth 放到 ComfyUI/facerestore_models 目录下

  • 第三步,重启ComfyUI,再次来到这个界面,点击 Fix,修复终端报错,可能出现的报错:

    • ModuleNotFoundError: No module named 'torch'

      通过 pip list | grep torch 发现是有 torch的,怀疑是版本不匹配,直接升级:

      bash 复制代码
      pip install --upgrade torch torchvision torchvision
    • ModuleNotFoundError: No module named 'insightface'

      通过 pip list | grep insightface 发现确实没有,直接用pip安装:

      bash 复制代码
      pip install insightface
    • fastapi 0.94.0 requires pydantic!=1.7,!=1.7.1,!=1.7.2,!=1.7.3,!=1.8,!=1.8.1,<2.0.0,>=1.6.2, but you have pydantic 2.10.5 which is incompatible.

      fastapi 0.94.0 需要 pydantic 的版本在 1.6.2 到 2.0.0 之间,但不包括 1.7.x 和 1.8.x 的任何版本。然而,你安装的是 pydantic 2.10.5,这超出了 fastapi 所要求的版本范围。

      要么降低 pydantic 版本,要么升级 fastapi 版本,以下命令选择一条执行即可:

      bash 复制代码
      pip install pydantic==1.6.2  # 选择一个与 fastapi 兼容的 1.6.x 版本
      pip install --upgrade fastapi
    • open-clip-torch 2.20.0 requires protobuf<4, but you have protobuf 5.29.3 which is incompatible.

      open-clip-torch 2.20.0 需要 protobuf 的版本小于 4.0.0,但你安装的是 protobuf 5.29.3,这同样超出了 open-clip-torch 所要求的版本范围。

      要么降低 protobuf 版本,要么升级 open-clip-torch 版本,以下命令选择一条执行即可:

      bash 复制代码
      pip install protobuf==3.19.4  # 选择一个与 open-clip-torch 兼容的 3.x 版本
      pip install --upgrade open-clip-torch
    • A new version of Albumentations is available: 2.0.0 (you have 1.4.10). Upgrade using: pip install --upgrade albumentations

      升级即可:

      bash 复制代码
      pip install --upgrade albumentations

3、视频换脸

  • 第一步,下载工作流,将 json 文件拉入ComfyUI

  • 第二步,安装缺失的插件:

    • 关掉提示窗口

    • 点击 Manager,点击 Install Missing Custom Nodes

    • 勾选全部,点击 install
      如果有节点安装失败的,就到 ComfyUI/custom_nodes 目录下手动 git clone,例:

      bash 复制代码
      git clone -v --recursive --progress -- https://github.com/Suzie1/ComfyUI_Comfyroll_CustomNodes /Users/zs/App/ComfyUI/custom_nodes/ComfyUI_Comfyroll_CustomNodes

      因为网络问题可能会出现拉取失败,多试几次就好。

  • 第三步,重启 ComfyUI

    终端 ctrl + c 终止程序,再重新启动程序:

    bash 复制代码
    python main.py
  • 第四步,上传图片与视频,点击执行

    可能出现的报错:

    • onnxruntime.capi.onnxruntime_pybind11_state.Fail: 【ONNXRuntimeError】 : 1 : FAIL : Non-zero status code returned while running CoreML_13099565872608237799_6 node. Name:'CoreMLExecutionProvider_CoreML_13099565872608237799_6_6' Status Message: Exception: /Users/runner/work/1/s/onnxruntime/core/providers/coreml/model/model.mm:71 InlinedVector<int64_t> (anonymous namespace)::GetStaticOutputShape(gsl::span<const int64_t>, gsl::span<const int64_t>, const logging::Logger &) inferred_shape.size() == coreml_static_shape.size() was false. CoreML static output shape ({1,1,1,800,1}) and inferred shape ({3200,1}) have different ranks.

四、说明

若有其他更好用的工作流,求分享!

相关推荐
一个人旅程~26 分钟前
macOS装进移动硬盘成为双系统的操作方法
linux·经验分享·macos·电脑
mCell34 分钟前
MacOS 下实现 AI 操控电脑(Computer Use)的思考
macos·agent·swift
一个人旅程~39 分钟前
在M系列的macbook上如何使用VMware安装ARM版的Win11以及注意哪些问题?
linux·windows·经验分享·macos·电脑
小宋加油啊2 小时前
Mac vscode安装PCL
ide·vscode·macos
秋雨梧桐叶落莳3 小时前
【iOS】 AutoLayout初步学习
学习·macos·ios·objective-c·cocoa·xcode
UnicornDev3 小时前
从零开始学iOS开发(第六篇):协议与扩展 —— 写出灵活可复用的Swift代码
macos·objective-c·cocoa
还在忙碌的吴小二3 小时前
在 Mac 上安装并通过端口调用 Chrome DevTools MCP Server(谷歌官方 MCP 服务器)
服务器·前端·chrome·macos·chrome devtools
sysinside21 小时前
macOS Tahoe 26.4.1 (25E253) 正式版 ISO、IPSW、PKG 下载
macos·tahoe
遥不可及zzz21 小时前
[特殊字符] Android AAB 一键安装工具配置指南
android·macos
踏着七彩祥云的小丑2 天前
Mac——已安装工具查找
macos