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

自动化生成工作流?英伟达提出ComfyGen:通过LLM来匹配给定的文本提示与合适的工作流程

ComfyGen的核心在于通过LLM来匹配给定的文本提示与合适的工作流程。该方法从500个来自用户的多样化提示生成图像,随后使用一系列美学预测模型对生成结果进行评分。这些评分与相应的工作流程形成了一个训练集,包含提示、工作流程及其得分的三元组。

然后提出了两种方法来生成提示特定的工作流程:一种是基于调优的方法,利用用户偏好数据进行学习;另一种是无训练的方法,利用LLM从现有工作流程中选择合适的流程。这两种方法均显示出相较于传统模型和通用工作流程在图像质量上的显著提升。

方法可以在不同的领域和风格中生成更高质量的图像。

相关链接

论文阅读:http://arxiv.org/abs/2410.01731v1

项目主页:https://comfygen-paper.github.io/

论文阅读

摘要

文本到图像生成的实际用途已从简单的单片模型发展为结合多个专用组件的复杂工作流。虽然基于工作流的方法可以提高图像质量,但由于可用组件数量众多、它们之间复杂的相互依赖性以及对生成提示的依赖性,制定有效的工作流需要大量专业知识。

在这里,我们介绍了一种新颖的提示自适应工作流生成任务,其目标是自动根据每个用户提示定制工作流。我们提出了两种基于 LLM 的方法来解决此任务:一种基于调整的方法,从用户偏好数据中学习,以及一种使用 LLM 选择现有流程的无训练方法。与单片模型或通用的、独立于提示的工作流相比,这两种方法都可以提高图像质量。我们的工作表明,依赖提示的流预测为提高文本到图像生成质量提供了一条新途径,补充了该领域现有的研究方向。

方法

标准文本到图像生成流程(顶部)采用单个整体模型将提示转换为图像。然而,用户社区通常依赖于复杂的多模型工作流程,这些工作流程由专家用户为不同场景手工制作。我们利用 LLM 自动合成此类工作流程,以用户的提示为条件(底部)。通过选择与提示更匹配的组件,LLM 可以提高生成图像的质量。

(a) 一个简单的 ComfyUI 管道,使用基础模型和面部恢复块,以及正向和负向提示。(b) 我们训练集中提示、流对的分数分布。(c) 具有不同分数的流针对同一提示生成的示例图像。分数越高,结果越详细、越生动,伪影越少。

实验

GenEval 提示的定性结果。ComfyGen 在多主题提示、着色和属性绑定方面表现更佳,但定位方面可能存在困难。

HPS V2.0 和用户研究胜率。我们将每条基线与 ComfyGenFT(绿色)和 ComfyGen-IC(蓝绿色)进行比较。ComfyGen 变体优于所有基线。

CivitAI提示的定性结果。模型与两类基线进行了比较:整体模型(SDXL,最流行的微调版本和 DPO 优化基线)和固定的与提示无关的流程。我们的方法在人类偏好指标和即时对齐基准方面都优于所有方法。

GenEval 基准测试结果

结论

本文介绍了提示自适应工作流生成任务并介绍了 ComfyGen - 一组解决此任务的两种方法。实验表明这种依赖于提示的流程可以胜过单片模型或固定的用户创建流程,从某种意义上提供了改善下游图像质量的新途径。

http://www.lryc.cn/news/460588.html

相关文章:

  • indicatorTree-v10练习(有问题)
  • python源码:指定麦克风/音响播放歌曲
  • 基于华为云智慧生活生态链设计的智能鱼缸
  • OJ-1015图像物体的边界
  • RAG 入门实践:从文档拆分到向量数据库与问答构建
  • 445: 选择问题
  • IP地址类型选择指南:动态IP、静态IP还是数据中心IP?
  • 基于Python flask的豆瓣电影可视化系统,豆瓣电影爬虫系统
  • 面试不是一场遭遇战
  • 【力扣 | SQL题 | 每日3题】力扣1795,1907,1398,602
  • centos7.9升级rockylinux8.8
  • C++初阶(三)---C++入门(下)
  • Linux--多路转接之epoll
  • 自动化工具Nico,从零开始干掉Appium,移动端自动化测试框架实现
  • Fast CRC32
  • 生成一个带有二维数据和对应标签的螺旋形数据集(非线性可分数据集)的代码解析
  • PHP unset() 函数的作用
  • 长篇故事可视化方法Story-Adapter:能够生成更高质量、更具细腻交互的故事图像,确保每一帧都能准确地传达故事情节。
  • C++基础面试题 | 什么是C++中的运算符重载?
  • 深入 IDEA 字节码世界:如何轻松查看 .class 文件?
  • NodeJS 利用代码生成工具编写GRPC
  • uni-app基础语法(一)
  • Linux:进程控制(三)——进程程序替换
  • LeetCode279:完全平方数
  • python爬虫--某动漫信息采集
  • 使用Rollup.js快速开始构建一个前端项目
  • 10.15学习
  • mongodb-7.0.14分片副本集超详细部署
  • C++运算出现整型溢出
  • LeetCode岛屿数量