すべてのプロダクト
Search
ドキュメントセンター

Container Compute Service:DeepGPU による Wan2.1 動画生成の高速化

最終更新日:Jun 22, 2026

Container Compute Service (ACS) のコンピューティングリソースを使用すると、基盤となるハードウェアの知識や GPU ノードの管理を必要とせずに、すぐに利用を開始できます。ACK はデプロイが簡単で、従量課金に対応しており、費用対効果の高い大規模言語モデル (LLM) の推論に最適です。本トピックでは、ACK の GPU コンピューティングリソースと deepgpu-comfyui プラグインを使用して、Wan2.1 動画生成を高速化する方法について説明します。

背景情報

ComfyUI

ComfyUI は、人気の高い text-to-image モデルである Stable Diffusion を実行およびカスタマイズするための、ノードベースのグラフィカルユーザーインターフェース (GUI) です。ビジュアルワークフローを採用しており、コードを記述することなく、ノードをドラッグアンドドロップするだけで複雑な画像生成パイプラインを構築できます。

Wan モデル

Wan (通義万象) は、Alibaba の通義ラボによって開発された、大規模な AI アートおよび text-to-image (AIGC) モデルです。これは、千問大規模モデルシリーズのビジュアル生成ブランチです。Wan は、中国語のプロンプトをサポートする世界初の AI アートモデルです。マルチモーダル機能を備えており、テキストによる説明、手描きのスケッチ、または画像スタイル転送から高品質のアートワークを生成できます。

前提条件

  • Container Compute Service (ACS) を初めて使用する場合は、アカウントにデフォルト ロールを割り当てる必要があります。権限付与が完了した後でのみ、ACK は ECS、OSS、NAS、CPFS、SLB などの他のサービスを呼び出し、クラスタを作成し、ログを保存できます。詳細については、「ACK を初めて使用するユーザーのためのクイックスタート」をご参照ください。

  • サポート対象の GPU タイプ:L20 (GN8IS) および G49E。

操作手順

ステップ1:モデルデータの準備

モデルファイルを永続的に保存するために、NAS または OSS ボリュームを作成します。以下の手順では、例として NAS ボリュームを使用します。

永続ボリュームの作成方法の詳細については、「NASファイルシステムをボリュームとして作成する」または「静的にプロビジョニングされたOSSボリュームを使用する」をご参照ください。
  1. 次のコマンドを実行して、ComfyUI をダウンロードします。

    お使いの環境に Git がインストールされていることを確認してください。
    git clone https://github.com/comfyanonymous/ComfyUI.git
  2. 以下のコマンドを実行して、必要な 3 つのモデルファイルを ComfyUI の対応するディレクトリにダウンロードします。モデルの詳細については、Wan_2.1_ComfyUI_repackaged プロジェクトをご参照ください。

    ダウンロードをスムーズに行うために、ピークパブリック帯域幅を増やす必要がある場合があります。ダウンロードには約 30 分かかります。
    1. wan2.1_t2v_14B_fp16.safetensors ファイル

      cd ComfyUI/models/diffusion_models
      wget https://modelscope.cn/models/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/master/split_files/diffusion_models/wan2.1_t2v_14B_fp16.safetensors 
    2. wan_2.1_vae.safetensors ファイル

      cd ComfyUI/models/vae
      wget https://modelscope.cn/models/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/master/split_files/vae/wan_2.1_vae.safetensors
    3. umt5_xxl_fp8_e4m3fn_scaled.safetensors ファイル

      cd ComfyUI/models/text_encoders
      wget https://modelscope.cn/models/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/master/split_files/text_encoders/umt5_xxl_fp8_e4m3fn_scaled.safetensors
  3. ComfyUI-deepgpu をダウンロードして解凍します。

    cd ComfyUI/custom_nodes
    wget https://aiacc-inference-public-v2.oss-cn-hangzhou.aliyuncs.com/deepgpu/comfyui/nodes/20240513/ComfyUI-deepgpu.tar.gz
    tar zxf ComfyUI-deepgpu.tar.gz

ステップ2:ComfyUI サービスのデプロイ

  1. ACS コンソールにログインします。左側のナビゲーションペインで、クラスターリスト をクリックします。対象クラスターの名前をクリックします。左側のナビゲーションペインで ワークロード > デプロイメント を選択し、右上隅の YAML のリソースの作成 をクリックします。

  2. この例では、マウントされた NAS ボリュームを使用します。次の YAML テンプレートをコピーし、作成 をクリックします。

    persistentVolumeClaim.claimName の値を、お使いの永続ボリューム要求 (PVC) の名前に合わせて変更してください。
    この例では、コンテナイメージのプル時間を最小限に抑えるために、中国 (北京) (cn-beijing) リージョンの inference-nv-pytorch 25.07 イメージを使用します。別のリージョンのプライベートイメージを使用する場合は、「使用方法」に従って YAML ファイル内のイメージパスを調整してください。
    この例で使用されているテストコンテナイメージには、deepgpu-torch および deepgpu-comfyui プラグインがプリインストールされています。これらのプラグインを他のコンテナ環境で使用する必要がある場合は、プリセールスソリューションアーキテクト (PDSA) にお問い合せの上、インストールパッケージを入手してください。
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      labels:
        app: wanx-deployment
      name: wanx-deployment-test
      namespace: default
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: wanx-deployment
      template:
        metadata:
          labels:
            alibabacloud.com/compute-class: gpu
            alibabacloud.com/compute-qos: default
            alibabacloud.com/gpu-model-series: L20 # サポート対象のGPUタイプ:L20 (GN8IS) およびG49E
            app: wanx-deployment
        spec:
          containers:
          - command:
            - sh
            - -c
            - DEEPGPU_PUB_LS=true python3 /mnt/ComfyUI/main.py --listen 0.0.0.0 --port 7860
            image: acs-registry-vpc.cn-beijing.cr.aliyuncs.com/egslingjun/inference-nv-pytorch:25.07-vllm0.9.2-pytorch2.7-cu128-20240714-serverless
            imagePullPolicy: Always
            name: main
            resources:
              limits:
                nvidia.com/gpu: "1"
                cpu: "16"
                memory: 64Gi
              requests:
                nvidia.com/gpu: "1"
                cpu: "16"
                memory: 64Gi
            terminationMessagePath: /dev/termination-log
            terminationMessagePolicy: File
            volumeMounts:
            - mountPath: /dev/shm
              name: cache-volume
            - mountPath: /mnt # /mntは、NASボリューム要求がマッピングされるPod内のパスです
              name: data
          dnsPolicy: ClusterFirst
          restartPolicy: Always
          schedulerName: default-scheduler
          securityContext: {}
          terminationGracePeriodSeconds: 30
          volumes:
          - emptyDir:
              medium: Memory
              sizeLimit: 500G
            name: cache-volume
          - name: data
            persistentVolumeClaim:
              claimName: wanx-nas # wanx-nasは、NASボリュームから作成されたボリューム要求です
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: wanx-test
    spec:
      type: LoadBalancer
      ports:
        - port: 7860
          protocol: TCP
          targetPort: 7860
      selector:
        app: wanx-deployment
  3. 表示されたダイアログボックスでビューをクリックすると、ワークロード詳細ページに移動します。ログタブをクリックします。次の出力が表示された場合、サービスは正常に開始されています。

    Device: cuda:0 NVIDIA L20 : cudaMallocAsync
    Using pytorch attention
    Python version: 3.12.7+gc (main, Jan 10 2024, 17:28:43) [GCC 13.3.0]
    ComfyUI version: 0.3.45
    ****** User settings have been changed to be stored on the server instead of browser storage. ******
    ****** For multi-user setups add the --multi-user CLI argument to enable multiple user profiles. ******
    ComfyUI frontend version: 1.23.4
    [Prompt Server] web root: /opt/ac2/lib/python3.12/site-packages/comfyui_frontend_package/static
    generated new fontManager
    Import times for custom nodes:
       0.0 seconds: /mnt/ComfyUI/custom_nodes/websocket_image_save.py
      57.2 seconds: /mnt/ComfyUI/custom_nodes/ComfyUI-deepgpu
    Context impl SQLiteImpl.
    Will assume non-transactional DDL.
    No target revision found.
    Starting server
    To see the GUI go to: http://0.0.0.0:7860

ステップ3:プラグインの使用

  1. アクセス方法 タブをクリックして、サービスの 外部エンドポイント (8.xxx.xxx.114:7860 など) を取得します。

  2. ブラウザーで ComfyUI URL http://8.xxx.xxx.114:7860/ にアクセスします。 ComfyUI インターフェイスで右クリックし、[ノードを追加]と進むと、プラグインに DeepGPU タイプのノードが含まれていることを確認できます。

    初めて URL にアクセスする場合、読み込みに最大 5 分かかることがあります。

    DeepGPU カテゴリには、[Apply DeepyTorch to diffusion model][Apply DeepyTorch to vae model][DeepyTorch Sampler to replace XlabsSampler][Save Image BASE64 of DeepGPU]、および [Apply Pulid Flux of DeepGPU] の 5 つのノードが含まれています。

    ApplyDeepyTorch ノード

    ApplyDeepyTorch ノードは、モデル推論のパフォーマンスを最適化します。ほとんどの場合、ワークフロー内の最後のモデル処理ノード (Load Diffusion Model、Load Checkpoint、LoraLoaderModelOnly など) の後に挿入します。ApplyDeepyTorch ノードのタイプは次のとおりです:

    from deepgpu_comfyui.node import \
        ApplyDeepyTorch, \
        ApplyDeepyTorchVae, \
        DeepyTorchSampler, \
        DeepSaveImageBase64, \
        ApplyPulidFluxDeepyTorch
    NODE_CLASS_MAPPINGS = {
        "ApplyDeepyTorch": ApplyDeepyTorch,
        "ApplyDeepyTorchVae": ApplyDeepyTorchVae,
        "DeepyTorchSampler": DeepyTorchSampler,
        "DeepSaveImageBase64": DeepSaveImageBase64,
        "ApplyPulidFluxDeepyTorch": ApplyPulidFluxDeepyTorch,
    }
    NODE_DISPLAY_NAME_MAPPINGS = {
        "ApplyDeepyTorch": "Apply DeepyTorch to diffusion model",
        "ApplyDeepyTorchVae": "Apply DeepyTorch to vae model",
        "DeepyTorchSampler": "DeepyTorch Sampler to replace XlabsSampler",
        "DeepSaveImageBase64": "Save Image BASE64 of DeepGPU",
        "ApplyPulidFluxDeepyTorch": "Apply Pulid Flux of DeepGPU",
    }

ステップ4:サンプルワークフローのテスト

  1. wan2.1 DeepyTorch 高速化ワークフローファイルをダウンロードします。

    1. 画像から動画へのワークフロー

      https://aiacc-inference-public-v2.oss-cn-hangzhou.aliyuncs.com/deepgpu/comfyui/wan/workflows/workflow_image_to_video_wan_2.1_deepytorch.json
    2. テキストから動画へのワークフロー

      https://aiacc-inference-public-v2.oss-cn-hangzhou.aliyuncs.com/deepgpu/comfyui/wan/workflows/workflow_text_to_video_wan_deepytorch.json
  2. この例では、高速化された text-to-video ワークフローを使用します。ComfyUI では、[ワークフロー] > [開く] を選択し、ダウンロードした workflow_text_to_video_wan_deepytorch.json ファイルを選択します。

  3. ワークフローファイルを開いたら、[拡散モデルに DeepyTorch を適用] > [有効化][true] に設定します。これにより、高速化が有効になります。次に、[実行] をクリックし、ビデオが生成されるまで待ちます。

    DeepyTorch 高速化ワークフローは、Load Diffusion Model ノードの後に ApplyDeepyTorch ノードを挿入します。

    このサンプルワークフローには、次の主要なノード構成が含まれています。[UNet Loader]wan2.1_t2v_14B_fp16.safetensors モデルを使用し、データタイプは default に設定されています。[Load CLIP] ノードは umt5_xxl_fp8_e4m3fn_scaled.safetensors を使用し、タイプは wan に設定されています。[K-Sampler] は、steps が 20、cfg が 6.0、sampleruni_pcschedulersimpledenoising が 1.00 に設定されています。[Load VAE] ノードは wan_2.1_vae.safetensors を使用します。[Empty Latent Video (Hunyuan)] ノードは、width が 832、height が 480、length が 81、batch size が 1 に設定されています。[Apply DeepyTorch to diffusion model] ノードの dynamic 設定は auto に設定されています。

  4. [キュー] ボタンをクリックすると、動画の生成時間を確認し、動画をプレビューできます。

    初回のテスト実行には時間がかかる場合があります。最適なパフォーマンスを得るために、ワークフローをさらに 2~3 回実行してください。

    キュー パネルには、生成された 3 つの動画クリップのサムネイルが表示され、それぞれの生成に約 630 秒かかります。リンクがノードを接続し、ワークフロー全体でデータを渡します。メイン キャンバスには、完全なテキストから動画へのワークフローノードが表示されます。これには、[UNet Loader] (モデル: wan2.1_t2v_14B_fp16.safetensors、データタイプ: default)、ポジティブプロンプトとネガティブプロンプト用の [CLIP Text Encode] ノード、[K-Sampler] (steps: 20、cfg: 6.0、sampler: uni_pc、scheduler: simple、denoising: 1.00)、[Load VAE] (wan_2.1_vae.safetensors)、[Empty Latent Video (Hunyuan)] (width: 832、height: 480、length: 81、batch size: 1)、および [Apply DeepyTorch to diffusion model] (enabletruedynamicauto) が含まれています。

  5. (オプション) 高速化を使用しないシナリオをテストするには、ComfyUI サービスを再起動し、次のワークフローを使用して動画を生成します。

    https://aiacc-inference-public-v2.oss-cn-hangzhou.aliyuncs.com/deepgpu/comfyui/wan/workflows/workflow_text_to_video_wan.json