“开源双轨架构+40亿参数扩散Transformer——ComfyUI-OmniGen2本地部署教程:重塑多模态生成的效率边界!

一、简介

OmniGen2 是由北京智源研究院最新推出的一个强大、高效的开源多模态生成模型。与 OmniGen v1 不同,OmniGen2 具有两种不同的文本和图像模态解码路径,利用非共享参数和解耦的图像分词器。OmniGen2 在四个主要功能方面具有竞争力的性能:

  • 视觉理解 :继承了 Qwen-VL-2.5 基础的强大图像内容解释和分析能力。
  • 文本到图像生成 :从文本提示创建高保真且美观的图像。
  • 指令导向的图像编辑 :以高精度执行复杂的、基于指令的图像修改,在开源模型中实现最先进的性能。
  • 上下文生成 :一种多功能功能,可处理和灵活组合各种输入(包括人类、参考对象和场景),以产生新颖且连贯的视觉输出。

OmniGen2 的一些好案例:

1751440588759_teaser.jpg

示范*

1751440595928_examples_edit.png

OmniGen2 图像编辑功能的良好演示。*

1751440602057_examples_subject.png

OmniGen2 的上下文生成功能的良好演示。

二、本地部署

注意:本文主要介绍部署到ComfyUI中使用

环境版本号
Python=3.12
PyTorch=2.5.1
cuda=12.4
Ubtuntu22.4.0

1.安装 Miniconda

步骤 1:更新系统
首先,更新您的系统软件包:

sudo apt update
sudo apt upgrade -y

步骤 2:下载 Miniconda 安装脚本
访问 Miniconda 的官方网站或使用以下命令直接下载最新版本的安装脚本(以 Python 3 为例):

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

步骤 3:验证安装脚本的完整性(可选)
下载 SHA256 校验和文件并验证安装包的完整性:

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh.sha256
sha256sum Miniconda3-latest-Linux-x86_64.sh

比较输出的校验和与.sha256 文件中的值是否一致,确保文件未被篡改。

步骤 4:运行安装脚本
为安装脚本添加执行权限:

chmod +x Miniconda3-latest-Linux-x86_64.sh

运行安装脚本:

./Miniconda3-latest-Linux-x86_64.sh

步骤 5:按照提示完成安装
安装过程中,您需要:

阅读许可协议 :按 Enter 键逐页阅读,或者按 Q 退出阅读。
接受许可协议 :输入 yes 并按 Enter。
选择安装路径 :默认路径为/home/您的用户名/miniconda3,直接按 Enter 即可,或输入自定义路径。
是否初始化 Miniconda :输入 yes 将 Miniconda 添加到您的 PATH 环境变量中。
步骤 6:激活 Miniconda 环境
安装完成后,使环境变量生效:

source ~/.bashrc

步骤 7:验证安装是否成功
检查 conda 版本:

conda --version

步骤 8:更新 conda(推荐)
为了获得最新功能和修复,更新 conda:

conda update conda

2.部署 ComfyUI

2.1 克隆代码仓库

git clone https://github.com/comfyanonymous/ComfyUI.git

2.2 安装依赖

  • 创建 conda 虚拟环境
conda create -n comfyenv python==3.12
conda activate comfyenv
  • 安装 PyTorch
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia
  • 安装依赖
cd ComfyUI
pip install -r requirements.txt
  • 安装 ComfyUI Manager
#进入插件的文件
cd /ComfyUI/custom_nodes/
#下载ComfyUI Manager
git clone https://github.com/Comfy-Org/ComfyUI-Manager.git

3.下载模型

推荐在魔搭社区中下载模型

#启动虚拟环境
conda activate comfyenv
#进入项目文件
cd ComfyUI
#下载modelscope
pip install modelscope
#下载模型文件到指定文件夹
modelscope download --model Comfy-Org/Omnigen2_ComfyUI_repackaged split_files/diffusion_models/omnigen2_fp16.safetensors --local_dir /models/diffusion_models/
#下载vae模型
modelscope download --model Comfy-Org/Omnigen2_ComfyUI_repackaged split_files/vae/ae.safetensors --local_dir /models/vae/
#下载text_encoders模型
modelscope download --model Comfy-Org/Omnigen2_ComfyUI_repackaged split_files/text_encoders/qwen_2.5_vl_fp16.safetensors --local_dir /models/text_encoders/

模型网址:

Omnigen2_ComfyUI_repackaged · 模型库

模型名称:

omnigen2_fp16.safetensors

模型放置路径:ComfyUI/models/omnigen2_fp16.safetensors

qwen_2.5_vl_fp16.safetensors

模型放置路径:ComfyUI/models/text_encoders

ae.safetensors
模型放置路径:ComfyUI/models/vae

4.启动 ComfyUI

python main.py

输入网址进入 ComfyUI:

http://127.0.0.1:8188

1751440632220_41d0afad_10553073.png

5.使用OmniGen2工作流

1751440638247_45861f40_10553073.png


点击如图所示的文件图标,然后选取想使用的OmniGen2工作流

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/87350.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/87350.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java的SpringAI+Deepseek大模型实战之会话记忆

文章目录 背景项目环境实现步骤第一步、定义会话存储方式方式一、定义记忆存储ChatMemory方式二、注入记忆存储ChatMemory 第二步、配置会话记忆方式一、老版本实现方式二、新版本实现 第三步、存储会话信息 异常处理1、InMemoryChatMemory 无法解析 背景 前两期【环境搭建】和…

RDS MySQL vs. Aurora MySQL:高需求工作负载的终极迁移指南

在 AWS 上,开发团队最常见且关键的决策之一就是选择合适的关系型数据库。通常,讨论会从 RDS for MySQL 这个可靠且熟悉的“老黄牛”开始。但很快,就会有人提到一个更强大、更云原生的选项:Aurora MySQL。 也许,就像最…

使用仓颉编程语言是一种怎样的体验?

2024年6月21日下午,华为终端BG软件部总裁龚体先生在华为开发者大会主题演讲《鸿蒙原生应用,全新出发!》中向全球开发者介绍了华为自研仓颉编程语言,并发布了HarmonyOS NEXT仓颉语言开发者预览版。这是华为首次公开仓颉编程语言。 …

Qt Creator自定义控件开发流程

Qt Creator自定义控件开发流程 在 Qt 5.9 Creator 中开发自定义控件的完整流程如下,分为设计、实现、集成和测试四个阶段: 1. 创建自定义控件类 (1) 新建类文件 右键项目 → 添加新文件 → C Class基类选择 QWidget 或现有控件(如 QPushBu…

翻译《The Old New Thing》- 如何创建一个与屏幕大小相同的窗口,而不会被当作全屏窗口处理?

How can I create a window the size of the screen without it being treated as a fullscreen window? - The Old New Thinghttps://devblogs.microsoft.com/oldnewthing/20250522-00/?p111211 问题描述 任务栏允许全屏窗口覆盖它。这样,当你在放映幻灯片或进行…

深分页末日救星:MySQL延迟关联原理与实战手册

MySQL 深分页(如 LIMIT 100000, 10)本质是 高代价的偏移量扫描,可通过以下方案优化,附核心原理和实操示例: 一、深分页为什么慢? SELECT * FROM orders ORDER BY id DESC LIMIT 100000, 10; 执行过程&…

前端技术栈 —— HTML、CSS和JavaScirpt执行环境

以下内容由GLM回答生成,不保证正确性。 前端技术栈 —— HTML、CSS和JavaScirpt执行环境 JavaScript 的执行环境HTML 和 CSS 的执行环境HTML 和 CSS 是否可以在其他环境中执行?总结 JavaScript 是一种 解释型语言,但它也可以被编译。JavaScr…

多项式带余除法——线性代数题目为例

一、多项式带余除法的定义 二、例题 使用方法将在例题中展示:

学习日记-spring-day40-7.3

知识点: 1.自动装配Resource(3) 知识点 核心内容 重点 Autowired与Resource注入规则 默认注入逻辑:未指定参数时,Resource优先按属性名匹配(by name),失败后按类型匹配&#xf…

重新认识JNIEnv

引言 抛开一堆概念,我们从本质出发。 java 调用c 我们开发移动端或者后端服务 ,都是用的java 或者kotlin 语言。有时候我们需要用c的一些库(ocr识别/导航的算法/ 等) 因为一些跟硬件相关的接口或者系统的api 都是c写的。 C调用J…

人工智能训练师——智能语音识别ASR

人机对话——ASR 概念 ASR(Automatic Speech Recognition,自动语音识别)是一种将人类语音转换为文本的技术。它使得计算机能够“听”懂人类的语音指令或对话,并将其转换成可读、可编辑的文本形式。ASR技术是人机交互领域中的一个…

Compose 常用命令详解——AI教你学Docker

3.3 Compose 常用命令详解 Docker Compose 通过一系列命令高效管理多容器应用。理解这些命令,可以让你灵活地启动、停止、查看、调试、扩缩容和配置 Compose 项目。 一、核心命令详解 1. docker compose up 功能:启动并构建所有服务,生成网…

Mausezahn - 网络流量生成与测试工具(支持从链路层到应用层的协议模拟)

Mausezahn 是一个 网络流量生成与测试工具,主要用于模拟各种网络协议行为、测试网络设备性能、验证安全策略或进行故障排查。它支持从底层链路层(如 Ethernet、VLAN)到高层应用层(如 HTTP、DNS)的协议模拟,…

08-three.js Textures

Three.js Journey — Learn WebGL with Three.jsThe ultimate Three.js course whether you are a beginner or a more advanced developerhttps://threejs-journey.com/?c=p3 使用原生 JavaScript 首先是静态页面的放置位置,如果使用Vite模版配置,可以直接放在 /static/ …

git 仓库取消合并的分支

要取消 Git 仓库中某次特定的分支合并(例如第一次合并),同时保留其他分支的合并,需要通过 Git 的版本控制功能来操作。以下是具体的步骤和方法,假设你想撤销某次合并(例如某个提交),并确保其他合并不受影响: 背景假设 你有一个 Git 仓库,主分支(例如 main)上已经合…

【从历史数据分析英特尔该如何摆脱困境】

与大多数其他分析师不同,自2013年以来,笔者就一直在积极强调英特尔未来将遭遇冰山,最终我们预测英特尔将在试图执行其之前的战略时破产。尽管我们更愿意采用与英特尔不同的代工厂方法(即与台积电成立合资企业)&#xf…

【PyTorch】PyTorch中张量(Tensor)微分操作

PyTorch深度学习总结 第六章 PyTorch中张量(Tensor)微分操作 文章目录 PyTorch深度学习总结前言一、torch.autograd模块二、主要功能和使用方法1. 张量的 requires_grad 属性2. backward() 方法3. torch.no_grad() 上下文管理器三、函数总结前言 上文介绍了PyTorch中张量(Ten…

Rust 项目实战:Flappy Bird 游戏

Rust 项目实战:Flappy Bird 游戏 Rust 项目实战:Flappy Bird 游戏理解 Game loop开发库:bracket-libbracket-terminalCodepage 437导入 bracket-lib 创建游戏游戏的模式添加玩家添加障碍最终效果项目源码 Rust 项目实战:Flappy Bi…

Gin 中间件详解与实践

一、中间件的核心概念 定义 中间件是Web开发中非常重要的概念,它可以在请求到达最终处理函数之前或响应返回客户端之前执行一系列操作。Gin 框架支持自定义和使用内置的中间件,让你在请求到达路由处理函数前进行一系列预处理操作。 它是介于请求与响应处…

非接触式DIC测量系统:助力汽车研发与测试的创新技术应用

近年来,随着新能源汽车品牌的快速崛起,新车发布的节奏加快,层出不穷的新产品,给消费者带来了全新的使用体验。与此同时,变革的产品体验也让一些过往的汽车测试和评价标准变得不再适用,尤其是与过往燃油车型…