ru-dalle入门指南 - 从文本生成图像的强大工具
ru-dalle是一个由Sber AI等机构开发的开源文本到图像生成模型,能够根据俄语文本描述生成高质量图像。本文将介绍ru-dalle的基本信息、使用方法和相关资源,帮助读者快速入门这个强大的AI创作工具。
什么是ru-dalle?
ru-dalle是一个基于Transformer架构的文本到图像生成模型,主要特点包括:
- 支持俄语文本输入
- 开源,可在GitHub上获取代码
- 有XL(13亿参数)和XXL(120亿参数)两个版本
- 能生成256x256分辨率的图像
ru-dalle的名字来源于OpenAI的DALL-E模型,但实际上是一个独立开发的项目。
如何使用ru-dalle?
使用ru-dalle生成图像的基本步骤如下:
- 安装ru-dalle:
pip install rudalle==1.1.3
- 导入必要的库:
import ruclip
from rudalle import get_rudalle_model, get_tokenizer, get_vae, get_realesrgan
from rudalle.pipelines import generate_images, show, super_resolution, cherry_pick_by_ruclip
- 加载模型:
device = 'cuda'
dalle = get_rudalle_model('Malevich', pretrained=True, fp16=True, device=device)
tokenizer = get_tokenizer()
vae = get_vae(dwt=True).to(device)
- 生成图像:
text = 'радуга на фоне ночного города' # "夜空中的彩虹"
pil_images, _ = generate_images(text, tokenizer, dalle, vae, top_k=1024, top_p=0.99, images_num=24)
show(pil_images, 6)
- 使用ruCLIP筛选最佳图像:
ruclip, ruclip_processor = get_ruclip('ruclip-vit-base-patch32-384', device=device)
top_images, _ = cherry_pick_by_ruclip(pil_images, text, ruclip, ruclip_processor, device=device, count=6)
show(top_images, 3)
- 应用超分辨率:
realesrgan = get_realesrgan('x2', device=device)
sr_images = super_resolution(top_images, realesrgan)
show(sr_images, 3)
ru-dalle相关资源
-
GitHub仓库: https://github.com/ai-forever/ru-dalle
-
HuggingFace模型:
-
在线演示:
- 官方demo: https://rudalle.ru/en/
- Telegram机器人: @sber_rudalle_xl_bot
-
Colab notebooks:
-
相关文章:
ru-dalle生成示例
以下是一些使用ru-dalle生成的图像示例:
提示词: "радуга на фоне ночного города" (夜空中的彩虹)
提示词: "красивая тян из аниме" (美丽的动漫少女)
提示词: "роботы акварелью в стиле ван гога" (梵高风格的水彩机器人)
结语
ru-dalle为俄语用户提供了一个强大的文本到图像生成工具,也为研究人员提供了宝贵的开源资源。尽管目前主要支持俄语输入,但其架构和训练方法对其他语言的类似项目也有重要参考价值。随着技术的不断发展,相信会有更多类似ru-dalle的多语言文本到图像生成模型涌现,让AI辅助创作变得更加普及和便捷。