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

【字节拥抱开源】 UXO 团队开源 USO: 通过解耦与奖励学习实现的统一风格与主题驱动生成

在这里插入图片描述

🔥 新闻

  • 2025.08.28 🔥 发布了USO的演示版,现在就来体验吧!⚡️
  • 2025.08.28 🔥 将fp8模式更新为主要低显存使用支持(请向下滚动)。这是送给消费级GPU用户的礼物。现在峰值显存使用量约为16GB。
  • 2025.08.27 🔥 发布了USO的推理代码和模型。
  • 2025.08.27 🔥 创建了USO的项目主页。
  • 2025.08.27 🔥 发布了USO的技术报告。

📖 引言

现有文献通常将风格驱动与主体驱动生成视为两项独立任务:前者强调风格相似性,而后者则坚持主体一致性,导致二者形成明显对立。我们认为这两个目标可以在统一框架下实现协同,因为它们本质上都涉及"内容"与"风格"的解耦与重组——这正是风格驱动研究中经久不衰的核心命题。为此,我们提出USO框架(风格驱动与主体驱动生成的统一框架)。首先,我们构建了包含内容图像、风格图像及其对应风格化内容图像的大规模三元组数据集;其次,通过风格对齐训练和内容-风格解耦训练这两个互补目标,提出能同时实现风格特征对齐与内容风格解耦的分离式学习方案;最后,引入风格奖励学习范式以进一步提升模型表现。

⚡️ 快速开始

🔧 需求与安装

安装所需依赖

## create a virtual environment with python >= 3.10 <= 3.12, like
python -m venv uso_env
source uso_env/bin/activate
## or
conda create -n uso_env python=3.10 -y
conda activate uso_env## install torch
## recommended version:
pip install torch==2.4.0 torchvision==0.19.0 --index-url https://download.pytorch.org/whl/cu124 ## then install the requirements by you need
pip install -r requirements.txt # legacy installation command

然后下载检查点:

# 1. set up .env file
cp example.env .env# 2. set your huggingface token in .env (open the file and change this value to your token)
HF_TOKEN=your_huggingface_token_here#3. download the necessary weights (comment any weights you don't need)
pip install huggingface_hub
python ./weights/downloader.py
  • 如果你有权重文件,请注释掉./weights/downloader.py中不需要的内容

✍️ 推理

  • 从以下示例开始探索并激发您的创造力。✨
# the first image is a content reference, and the rest are style references.# for subject-driven generation
python inference.py --prompt "The man in flower shops carefully match bouquets, conveying beautiful emotions and blessings with flowers. " --image_paths "assets/gradio_examples/identity1.jpg" --width 1024 --height 1024
# for style-driven generation
# please keep the first image path empty
python inference.py --prompt "A cat sleeping on a chair." --image_paths "" "assets/gradio_examples/style1.webp" --width 1024 --height 1024
# for style-subject driven generation (or set the prompt to empty for layout-preserved generation)
python inference.py --prompt "The woman gave an impassioned speech on the podium." --image_paths "assets/gradio_examples/identity2.webp" "assets/gradio_examples/style2.webp" --width 1024 --height 1024
# for multi-style generation
# please keep the first image path empty
python inference.py --prompt "A handsome man." --image_paths "" "assets/gradio_examples/style3.webp" "assets/gradio_examples/style4.webp" --width 1024 --height 1024# for low vram:
python inference.py --prompt "your propmt" --image_paths "your_image.jpg" --width 1024 --height 1024 --offload --model_type flux-dev-fp8 
  • 您还可以将您的结果与assets/gradio_examples文件夹中的结果进行比较。

  • 更多示例,请访问我们的项目页面或尝试在线demo。

🌟 Gradio演示

python app.py

为降低显存占用,请传递 --offload--name flux-dev-fp8 参数。峰值显存占用将在16GB(单参考)至18GB(多参考)之间。

# please use FLUX_DEV_FP8 replace FLUX_DEV
export FLUX_DEV_FP8="YOUR_FLUX_DEV_PATH"# FLUX_DEV_FP8=/path/to/flux/FLUX.1-dev/flux1-dev.safetensors 即可python app.py --offload --name flux-dev-fp8

🌈 更多示例

我们提供一些提示词和结果以帮助您更好地理解模型。您可以查看我们的论文或项目主页获取更多可视化案例。

主题/身份驱动生成

若需将主体置入新场景,请使用自然语言描述,如“一只狗/男人/女人正在……”。若仅需转换风格而保持布局,请使用指令式提示,如“将风格转换为……风格”。对于人像保留生成,USO擅长呈现高皮肤细节的图像。实用建议:半身特写适用于半身提示词,当姿势或构图发生显著变化时则使用全身图像。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

风格驱动生成

只需上传一两张风格图片,用自然语言描述你的需求。USO将根据你的提示生成图像,并匹配你上传的风格。

在这里插入图片描述
在这里插入图片描述

风格主题驱动生成

USO可以利用一个或两个风格参考对单个内容参考进行风格化处理。若需保持布局不变的生成,只需将提示语设为空即可。

布局保留生成

在这里插入图片描述
布局偏移生成

在这里插入图片描述

📄 免责声明

本项目开源仅供学术研究使用。项目中使用的大部分图片均为生成内容或来自开源数据集。如有任何疑虑,请联系我们,我们将及时删除不恰当内容。本项目基于 Apache 2.0 许可证发布。若应用于其他基础模型,请确保遵守原始许可条款。

本研究旨在推动生成式AI领域发展。用户可自由使用该工具创作图像,但须遵守当地法律并承担使用责任。开发者对用户滥用工具的行为概不负责。

https://github.com/bytedance/USO


文章转载自:

http://Sj0aef9y.thnpj.cn
http://xTJs13n2.thnpj.cn
http://dQ851L9v.thnpj.cn
http://wnWRfL5Y.thnpj.cn
http://zKkiUPym.thnpj.cn
http://k8B3TDoS.thnpj.cn
http://JW1ez3Jg.thnpj.cn
http://vn0EKX0w.thnpj.cn
http://qERADs0r.thnpj.cn
http://h8INrniw.thnpj.cn
http://8KZUMB6D.thnpj.cn
http://YWORwiED.thnpj.cn
http://PIl5Ikof.thnpj.cn
http://ZBJTJ8Ia.thnpj.cn
http://HxZKpuyx.thnpj.cn
http://COirJsRQ.thnpj.cn
http://u3akdSjp.thnpj.cn
http://pMoTZmWZ.thnpj.cn
http://uL6PGFHt.thnpj.cn
http://4QHiSnoH.thnpj.cn
http://TzqieBdk.thnpj.cn
http://mlkn3dcH.thnpj.cn
http://JRdSK8E2.thnpj.cn
http://uZshfGT0.thnpj.cn
http://UGW2F8fn.thnpj.cn
http://0sUlEDDC.thnpj.cn
http://8LD0wG3v.thnpj.cn
http://ZnymD8NQ.thnpj.cn
http://KbXyCSlu.thnpj.cn
http://xoLTl5VA.thnpj.cn
http://www.dtcms.com/a/362575.html

相关文章:

  • 2025最新“Java 面试八股文 + 各大厂的面试真题”限时开源
  • 美团 LongCat 开源大模型60 亿参数 MoE 架构,赋能开发者加速 AI 应用落地
  • 本地搭建并使用 Redmine 详细教程
  • CICD 持续集成与持续交付
  • SGLang推理引擎--高效的开源部署方案
  • 【第四章:大模型(LLM)】09.最强开源大模型:Llama3 原理介绍与实现-(6)Llama2 Llama3代码实现
  • Wifi开发上层学习1:实现一个wifi搜索以及打开的app
  • 零依赖每月工作计划备忘录:高效管理你的每一天
  • Qt 创建的C++ 桌面程序 学习笔记1
  • Elasticsearch创建索引分片和副本大小建议
  • iOS XML 处理利器:CNXMLParser 与 CNXMLDocument 深度解析
  • iOS15如何绕过MDM锁?详细图文教程教你搞定
  • 数据结构:基数排序 (Radix Sort)
  • uni-app iOS 性能监控与调试全流程:多工具协作的实战案例
  • Qt中QSettings的键值使用QDataStream进行存储
  • 【Vue2 ✨】Vue2 入门之旅(七):事件处理
  • 从spring MVC角度理解HTTP协议及Request-Response模式
  • 自学嵌入式第三十二天:网络编程-UDP
  • 基于单片机醉酒驾驶检测系统/酒精检测/防疲劳驾驶设计
  • Angular事件处理全攻略:从基础到进阶的完整指南
  • GEO 应用实践研讨会:探索行业新路径,激发企业新活力
  • IoT Power软件 -- 每次开启强制升级解决方法
  • DVWA靶场通关笔记-DOM型XSS(Impossible级别)
  • CentOS7.6
  • 基于Force-closure评估的抓取计算流程
  • gitlab中回退代码,CI / CD 联系运维同事处理
  • RAGFlow——知识库检索系统开发实战指南(包含聊天和Agent模式)
  • 微信小程序备忘
  • ResponseBodyEmitter介绍
  • HarmonyOS 鸿蒙系统自带的 SymbolGlyph 图标组件详解