wildminder/ComfyUI-VibeVoice

ComfyUI custom node for the VibeVoice TTS. Expressive, long-form, multi-speaker conversational audio

ComfyUI‑VibeVoice – 機能概要

ComfyUI‑VibeVoice は、Microsoft の VibeVoice テキスト読み上げ(TTS)および自動音声認識(ASR)モデルをビジュアルプログラミング環境 ComfyUI に導入するカスタムノードのセットです。インストールすると、ノードは WMNodes/sound/tts と WMNodes/sound/asr の下に表示され、他の画像生成ノードと同様に ComfyUI グラフにドロップできます。

主な機能

機能 意味
長文マルチスピーカー TTS 1 つの音声ファイルで最大 4 つの異なる声を話せます。
音声クローニング ローカルの .wav/.mp3 を参照として使用し、モデルがその話者の音色を模倣します。
ハイブリッドスクリプト 同じスクリプト内で、クローンした声と既に提供された参照を再利用する話者を混在させます。
ASR 付属の VibeVoice ASR ノードは、入力音声ファイルからタイムスタンプ付きの話者セグメントを返します。
量子化重み GGUF、fp8、int8、4‑bit 量子化(または元の safetensors)をサポートし、VRAM 使用量を削減します。
アテンションバックエンド eager、sdpa、flash_attention_2、sage から選択でき、速度と互換性を調整できます。
VRAM 管理 モデルは ComfyUI/models/tts/VibeVoice/ に自動ダウンロードされ、ComfyUI 内蔵の VRAM マネージャーを通じて読み込まれます。

利用可能なモデル(初回実行時にダウンロード)

モデル サイズ 用途
VibeVoice‑1.5B 3 GB 標準的な長文 TTS(高品質)。
VibeVoice‑7B 17.4 GB より豊かな声のための高容量 TTS。
VibeVoice‑Realtime‑0.5B 1.5 GB リアルタイム単一スピーカー生成(キャッシュされた .pt 音声プロンプトを使用)。
VibeVoice‑ASR‑HF 17.4 GB 話者タイムスタンプ付き音声テキスト変換。

典型的なワークフロー

  1. ノードを追加 – VibeVoice TTS(または VibeVoice ASR)。
  2. 参照音声を読み込む(任意)– Load Audio ノードを使用し、speaker_1_voice … speaker_4_voice に接続してその話者をクローンします。入力を空にすると、その話者は既に提供された参照を再利用します。
  3. スクリプトを書く – text フィールドで次のいずれかを使用します:
    • [1] Hello… または
    • Speaker 1: Hello…
  4. グラフをキューに追加 – ノードは会話全体を含む単一の AUDIO 出力を返します。

リアルタイムモード(単一スピーカーのみ)

  • VibeVoice‑Realtime‑0.5B チェックポイントを選択します。
  • ComfyUI/models/tts/VibeVoice/voices/ に音声プリセット .pt ファイル(例:en‑Carter_man.pt)を提供します。
  • 話者参照入力は無視されます。モデルはキャッシュされたプロンプトを使用します。
  • 出力が途中で切れる場合は、cfg_scale(1.5‑1.8)と max_new_tokens を調整します。

インストール

  • ComfyUI Manager 経由 – ComfyUI‑VibeVoice を検索してインストールします。
  • 手動 – ComfyUI/custom_nodes にクローンし、pip install -r requirements.txt を実行してから ComfyUI を再起動します。
  • オプションの追加:
    • sage バックエンド用の sageattention(Windows wheels 提供)。
    • 4‑bit 量子化用の bitsandbytes。
    • 追加の音声ユーティリティ用の ComfyUI-VibeVoice[audio-extra]。

拡張 / 外部重みの読み込み

  • Load VibeVoice Model ノードはローカルの .gguf、.safetensors、または .bin ファイルを指定でき、内蔵の model_name を上書きします。
  • サイドカー JSON ファイル(<weights>.config.json、<weights>.preprocessor.json、tokenizer.json)により、カスタムアーキテクチャまたはトークナイザー設定を提供できます。
  • ローダーはまず CPU で動作し、その後テンソルを ComfyUI の VRAM マネージャーに渡します。量子化形式は直接ストリーミングされ、余分なホスト RAM コピーを回避します。

制限と既知の問題

  • リアルタイムモデルは単一スピーカーのみ – 話者タグは削除されます。
  • クローンされた声には少なくとも 1 つの参照音声が必要です。システムは完全なゼロショット音声を生成できません。
  • 密な BF16 チェックポイント用の実験的な DynamicVRAM パッチは、まだホスト RAM 使用量を削減しません(README の「Known defect」セクションを参照)。

要するに: すでに ComfyUI を画像生成に使用しており、ノードグラフ環境を離れずに高品質のマルチスピーカー TTS または音声テキスト変換を追加したい場合、ComfyUI‑VibeVoice は Microsoft の VibeVoice モデルへの既製のブリッジを提供し、ダウンロード、VRAM 割り当て、柔軟なスクリプト形式を処理します。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト