基础模型:THUDM/CogVideoX-5b
数据集:finetrainers/3dgs-dissolve
库名称:diffusers
许可证:其他
许可证链接:https://huggingface.co/THUDM/CogVideoX-5b/blob/main/LICENSE
实例提示:3D溶解效果 一只身着彩色冬季服装的小老虎以3D形态出现,周围环绕着动态迸发的红色火花。火花围绕企鹅旋转,随着逐渐蒸发成红色火花群,营造出戏剧性效果,最终留下纯黑背景。
示例:
- 文本:3D溶解效果 一只身着彩色冬季服装的小老虎以3D形态出现,周围环绕着动态迸发的红色火花。火花围绕企鹅旋转,随着逐渐蒸发成红色火花群,营造出戏剧性效果,最终留下纯黑背景。
输出:
url: "./assets/output_0.mp4"
- 文本:3D溶解效果 一辆以3D形态呈现的小车穿行于旋转的炽热粒子漩涡中。随着前进,周围环境逐渐转化为动态的红色火花群,最终蒸发成红色火花爆发,在暗色背景下形成迷人的视觉效果。
输出:
url: "./assets/output_1.mp4"
标签:
- 文本生成视频
- diffusers训练
- diffusers
- cogvideox
- cogvideox-diffusers
- 模板:sd-lora
这是基于THUDM/CogVideoX-5b模型在finetrainers/3dgs-dissolve数据集上的微调版本。我们还提供了参数的LoRA变体,详情参见此处。
代码仓库:https://github.com/a-r-r-o-w/finetrainers
[!重要]
此为实验性检查点,其泛化能力不足是已知问题。
推理代码:
from diffusers import CogVideoXTransformer3DModel, DiffusionPipeline
from diffusers.utils import export_to_video
import torch
transformer = CogVideoXTransformer3DModel.from_pretrained(
"finetrainers/3dgs-v0", torch_dtype=torch.bfloat16
)
pipeline = DiffusionPipeline.from_pretrained(
"THUDM/CogVideoX-5b", transformer=transformer, torch_dtype=torch.bfloat16
).to("cuda")
prompt = """
3D溶解效果 以3D形态呈现的书架被红色火花群包围,在黑色背景下形成戏剧性的爆发效果。
"""
负面提示 = "动作不连贯, 模糊运动, 低质量, 退化输出, 畸形输出"
video = pipeline(
prompt=prompt,
negative_prompt=负面提示,
num_frames=81,
height=512,
width=768,
num_inference_steps=50
).frames[0]
export_to_video(video, "output.mp4", fps=25)
训练日志可在WandB平台查看。
LoRA
我们从微调检查点提取了64秩的LoRA(提取脚本见此)。此LoRA可用于模拟同类效果:
代码
from diffusers import DiffusionPipeline
from diffusers.utils import export_to_video
import torch
pipeline = DiffusionPipeline.from_pretrained("THUDM/CogVideoX-5b", torch_dtype=torch.bfloat16).to("cuda")
pipeline.load_lora_weights("/fsx/sayak/finetrainers/cogvideox-crush/extracted_crush_smol_lora_64.safetensors", adapter_name="crush")
pipeline.load_lora_weights("/fsx/sayak/finetrainers/cogvideox-3dgs/extracted_3dgs_lora_64.safetensors", adapter_name="3dgs")
pipeline
prompts = ["""
以3D形态呈现的小自行车被炽热火包围,在暗色背景下形成强烈而戏剧性的视觉效果。
视频展示了3D形态下炽热粒子的动态爆炸,火花与余烬在纯黑背景前四散飞溅。
""",
"""
以3D形态呈现的书架被红色火花群包围,在黑色背景下形成戏剧性的爆发效果。
""",
]
负面提示 = "动作不连贯, 模糊运动, 低质量, 退化输出, 畸形输出, 物理失真"
标识词 = "3D溶解效果"
for i, prompt in enumerate(prompts):
video = pipeline(
prompt=f"{标识词} {prompt}",
negative_prompt=负面提示,
num_frames=81,
height=512,
width=768,
num_inference_steps=50,
generator=torch.manual_seed(0)
).frames[0]
export_to_video(video, f"output_{i}.mp4", fps=25)