扩散器

如何使用LLM实现文本自动生成视频

发布时间:2023/12/22 13:30:51   
推荐:使用NSDT场景编辑器助你快速搭建可二次编辑的D应用场景介绍

基于扩散的图像生成模型代表了计算机视觉领域的革命性突破。这些进步由Imagn,DallE和MidJourny等模型开创,展示了文本条件图像生成的卓越功能。有关这些模型内部工作的介绍,您可以阅读本文。

然而,Txt-2-Vido模型的开发提出了更艰巨的挑战。目标是在每个生成的帧之间实现连贯性和一致性,并保持从视频开始到结束的生成上下文。

然而,基于扩散的模型的最新进展也为文本2视频任务提供了广阔的前景。现在,大多数文本2-视频模型在预先训练的文本2-图像模型上采用微调技术,集成动态图像运动模块,并利用各种文本2-视频数据集,如WbVid或HowToM。

在本文中,我们的方法涉及利用HuggingFac提供的微调模型,该模型被证明有助于生成视频。

实现先决条件

我们使用HuggingFac提供的Diffusrs库,以及一个名为Acclrat的实用程序库,它允许PyTorch代码在并行线程中运行。这加快了我们的生成过程。

首先,我们必须安装依赖项并为代码导入相关模块。

pipinstalldiffusrstransformrsacclrattorch

然后,从每个库中导入相关模块。

importtorchfromdiffusrsimportDiffusionPiplin,DPMSolvrMultistpSchdulrfromdiffusrs.utilsimportxport_to_vido创建管道

我们将ModlScop提供的Txt-2-Vido模型加载到HuggingFac中,在扩散管道中。该模型具有1亿个参数,基于UNt7D架构,该架构通过迭代去噪过程从纯噪声生成视频。它分为三部分。模型首先从简单的英语提示符中执行文本特征提取。然后将文本特征编码到视频潜在空间并进行去噪。最后,将视频潜在空间解码回视觉空间并生成短视频。

pip=DiffusionPiplin.from_prtraind("damo-vilab/txt-to-vido-ms-1.7b",torch_dtyp=torch.float16,variant="fp16")pip.schdulr=DPMSolvrMultistpSchdulr.from_config(pip.schdulr.config)pip.nabl_modl_cpu_offload()

此外,我们使用16位浮点精度来降低GPU利用率。此外,还启用了CPU卸载,可在运行时从GPU中删除不必要的部分。

生成视频

prompt="Spidrmanissurfing"vido_frams=pip(prompt,num_infrnc_stps=25).framsvido_path=xport_to_vido(vido_frams)

然后,我们将提示传递给视频生成管道,该管道提供一系列生成的帧。我们使用25个推理步骤,以便模型将执行25次去噪迭代。更多的推理步骤可以提高视频质量,但需要更多的计算资源和时间。

然后使用扩散器的实用程序功能组合单独的图像帧,并将视频保存在磁盘上。

然后,我们将提示传递给视频生成管道,该管道提供一系列生成的帧。然后使用扩散器的实用程序功能组合单独的图像帧,并将视频保存在磁盘上。

结论

足够简单!我们得到了蜘蛛侠冲浪的视频。虽然这是一个质量不高的短视频,但它仍然象征着这个过程的前景,它很快就会达到与Imag-2-Txt模型类似的结果。尽管如此,测试你的创造力和使用模型仍然足够好。

原文链接:如何使用LLM实现文本自动生成视频(mvrlink.

转载请注明:http://www.aideyishus.com/lkjg/6264.html

------分隔线----------------------------