分享免费的编程资源和教程

网站首页 > 技术教程 正文

免费的本地AI视频生成,在ComfyUI中运行Mochi视频大模型

goqiw 2025-08-03 04:49:43 技术教程 4 ℃ 0 评论

现在我们在互联网上经常能看到AI生成的视频,从开始生成的破碎或者不完整的视频,到目前AI生成的视频已经有了很大的提升。

使用AI视频生成来辅助创作故事类短视频,已成为短视频创作者的重要工具,下面给大家介绍,如何在本地就能使用免费的ComfyUI工具,来使用Mochi视频大模型生成视频。


安装:

1.首先安装ComfyUI(如果你未安装,请下载官方提供的一键启动包即可)。已安装用户请记得更新至最新版本,如下步骤更新:

第一步:进入安装目录的 \update 目录里面。

第二步:分别执行更新脚本:

  • update_comfyui.bat
  • update_comfyui_and_python_dependencies.bat
  • update_comfyui_stable.bat


下载模型:

前面的步骤操作完成后,开始下载视频生成所需的模型。

  1. 下载 Mochi 基础模型,下载完成后的模型放入 :models/diffusion_models文件夹中。

mochi_preview_bf16.safetensors

mochi_preview_fp8_scaled.safetensors

  1. 下载文本编码器模型,下载完成后将其放入:models/clip 文件夹中。

t5xxl_fp16.safetensors

t5xxl_fp8_e4m3fn_scaled.safetensors

  1. 下载VAE模型,下载完成后将其放至: ComfyUI/models/vae

mochi_vae.safetensors


支持视频生成所需要的模型以及准备工作完成,下面开始可以启动ComfyUI导入工作流来生成视频了。

提醒:需要注意的是,如果你的电脑配置不高,请下载FP8精度的模型即可。FP16需要的VRAM内存需要至少32GB以上内存才可运行,否则会保存退出。

启动:

第一步:启动ComfyUI。

第二步:导入Mochi工作流,工作流如下。复制下面的内容保存为.json后缀的文件,在ComfyUI界面点击【Load】即可加载工作流:

{
  "last_node_id": 39,
  "last_link_id": 79,
  "nodes": [
    {
      "id": 7,
      "type": "CLIPTextEncode",
      "pos": {
        "0": 413,
        "1": 389
      },
      "size": {
        "0": 425.27801513671875,
        "1": 180.6060791015625
      },
      "flags": {},
      "order": 5,
      "mode": 0,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 75
        }
      ],
      "outputs": [
        {
          "name": "CONDITIONING",
          "type": "CONDITIONING",
          "links": [
            52
          ],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "CLIPTextEncode"
      },
      "widgets_values": [
        ""
      ]
    },
    {
      "id": 8,
      "type": "VAEDecode",
      "pos": {
        "0": 1210,
        "1": 190
      },
      "size": {
        "0": 210,
        "1": 46
      },
      "flags": {},
      "order": 7,
      "mode": 0,
      "inputs": [
        {
          "name": "samples",
          "type": "LATENT",
          "link": 35
        },
        {
          "name": "vae",
          "type": "VAE",
          "link": 76
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            56
          ],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "VAEDecode"
      },
      "widgets_values": []
    },
    {
      "id": 39,
      "type": "VAELoader",
      "pos": {
        "0": 890,
        "1": 500
      },
      "size": {
        "0": 278.68310546875,
        "1": 58
      },
      "flags": {},
      "order": 0,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "VAE",
          "type": "VAE",
          "links": [
            76
          ]
        }
      ],
      "properties": {
        "Node name for S&R": "VAELoader"
      },
      "widgets_values": [
        "mochi_vae.safetensors"
      ]
    },
    {
      "id": 3,
      "type": "KSampler",
      "pos": {
        "0": 863,
        "1": 187
      },
      "size": {
        "0": 315,
        "1": 262
      },
      "flags": {},
      "order": 6,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 79
        },
        {
          "name": "positive",
          "type": "CONDITIONING",
          "link": 46
        },
        {
          "name": "negative",
          "type": "CONDITIONING",
          "link": 52
        },
        {
          "name": "latent_image",
          "type": "LATENT",
          "link": 38
        }
      ],
      "outputs": [
        {
          "name": "LATENT",
          "type": "LATENT",
          "links": [
            35
          ],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "KSampler"
      },
      "widgets_values": [
        802933755486475,
        "randomize",
        30,
        4.5,
        "euler",
        "simple",
        1
      ]
    },
    {
      "id": 21,
      "type": "EmptyMochiLatentVideo",
      "pos": {
        "0": 520,
        "1": 620
      },
      "size": {
        "0": 315,
        "1": 130
      },
      "flags": {},
      "order": 1,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "LATENT",
          "type": "LATENT",
          "links": [
            38
          ],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "EmptyMochiLatentVideo"
      },
      "widgets_values": [
        848,
        480,
        37,
        1
      ]
    },
    {
      "id": 38,
      "type": "CLIPLoader",
      "pos": {
        "0": 40,
        "1": 270
      },
      "size": {
        "0": 315,
        "1": 82
      },
      "flags": {},
      "order": 2,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "CLIP",
          "type": "CLIP",
          "links": [
            74,
            75
          ],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "CLIPLoader"
      },
      "widgets_values": [
        "t5xxl_fp8_e4m3fn_scaled.safetensors",
        "mochi"
      ]
    },
    {
      "id": 37,
      "type": "UNETLoader",
      "pos": {
        "0": 420,
        "1": 40
      },
      "size": {
        "0": 315,
        "1": 82
      },
      "flags": {},
      "order": 3,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "MODEL",
          "type": "MODEL",
          "links": [
            79
          ],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "UNETLoader"
      },
      "widgets_values": [
        "mochi_preview_fp8_scaled.safetensors",
        "default"
      ]
    },
    {
      "id": 28,
      "type": "SaveAnimatedWEBP",
      "pos": {
        "0": 1460,
        "1": 190
      },
      "size": {
        "0": 847.3048706054688,
        "1": 602.0325317382812
      },
      "flags": {},
      "order": 8,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 56
        }
      ],
      "outputs": [],
      "properties": {},
      "widgets_values": [
        "ComfyUI",
        24,
        false,
        80,
        "default"
      ]
    },
    {
      "id": 6,
      "type": "CLIPTextEncode",
      "pos": {
        "0": 415,
        "1": 186
      },
      "size": {
        "0": 422.84503173828125,
        "1": 164.31304931640625
      },
      "flags": {},
      "order": 4,
      "mode": 0,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 74
        }
      ],
      "outputs": [
        {
          "name": "CONDITIONING",
          "type": "CONDITIONING",
          "links": [
            46
          ],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "CLIPTextEncode"
      },
      "widgets_values": [
        "The video shows an energetic 20-year-old girl in China riding a bicycle in an outdoor botanical garden."
      ]
    }
  ],
  "links": [
    [
      35,
      3,
      0,
      8,
      0,
      "LATENT"
    ],
    [
      38,
      21,
      0,
      3,
      3,
      "LATENT"
    ],
    [
      46,
      6,
      0,
      3,
      1,
      "CONDITIONING"
    ],
    [
      52,
      7,
      0,
      3,
      2,
      "CONDITIONING"
    ],
    [
      56,
      8,
      0,
      28,
      0,
      "IMAGE"
    ],
    [
      74,
      38,
      0,
      6,
      0,
      "CLIP"
    ],
    [
      75,
      38,
      0,
      7,
      0,
      "CLIP"
    ],
    [
      76,
      39,
      0,
      8,
      1,
      "VAE"
    ],
    [
      79,
      37,
      0,
      3,
      0,
      "MODEL"
    ]
  ],
  "groups": [],
  "config": {},
  "extra": {
    "ds": {
      "scale": 0.5209868481924536,
      "offset": [
        229.36816665162482,
        276.47053915980837
      ]
    }
  },
  "version": 0.4
}


视频生成:

工作流导入成功后,修改提示词,以及生成视频的参数规格,即可开始生成视频。生成后的视频效果如下:

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表