更新通知: ComfyUIフロントエンドに影響を与えるカスタムノード
2025/05/13
ComfyUI ACE-Step音楽生成ワークフローの完全ガイド
ACE-Stepは、中国のチームStepFunとACE Studioが共同開発したオープンソースの音楽生成基盤モデルで、音楽クリエイターに効率的で柔軟性の高い高品質な音楽生成・編集ツールを提供するよう設計されています。
このモデルはApache-2.0ライセンスの下で公開されており、商用利用も無料です。
強力な音楽生成ベースモデルとして、ACE-Stepは豊富な拡張機能を提供しています。LoRAやControlNetなどの微調整技術を通じて、開発者は特定のニーズに応じてモデルをカスタマイズできます。 オーディオ編集、ボーカル合成、伴奏制作、ボイスクローニング、スタイル転送など、ACE-Stepは安定した信頼性の高い技術サポートを提供できます。 この柔軟なアーキテクチャ設計により、音楽AI応用の開発プロセスが大幅に簡素化され、より多くのクリエイターがAI技術を音楽制作に素早く応用できるようになりました。
現在、ACE-StepはLoRAモデルトレーニングを含む関連トレーニングコードをリリースしており、対応するControlNetトレーニングコードは将来リリースされる予定です。詳細についてはGithubをご覧ください。
ComfyUIにおけるACE-Stepの実装と多言語サポートの説明
ACE-Stepの多言語実装では、音楽生成のために異なる言語を対応する英語の文字に変換することで統一されています。しかし、ComfyUIのネイティブサポートは現在この言語から英語への変換ステップを実装していません。日本語のカタカナに対する変換のみがこのコミットで見つけられます。 このステップの実装には追加の依存関係の導入が必要であり、それらをコア依存関係に追加すると様々な潜在的な問題やカスタムノードの競合が発生する可能性があります。したがって、ComfyUIでは現在、入力に異なる言語を直接使用することができず、対応する英語の文字に変換する必要があります。
しかし、カスタムノードの作者たちは対応する言語変換を実装し、直接的な多言語入力を可能にしています。このドキュメントでは、ネイティブワークフローとカスタムノードを組み合わせてACE-Stepワークフローを完成させます。おそらくこのファイルはすでにダウンロード済みでしょう。 以下はComfyUIにおける2つのACE-Step実装方法の説明です。
1. ComfyUIネイティブサポート
- 利点:マージされたオールインワンモデルを使用、便利なローディング、使用が簡単
- 欠点:直接的な多言語入力をサポートしていない、音楽生成のために対応する言語を英語の文字に変換する必要がある
現在、ComfyUIはACE-Stepをネイティブにサポートしていますが、欠点は直接的な多言語入力をサポートしていないことです。
2. カスタムノードComfyUI_ACE-Step実装
ComfyUI_ACE-Stepは主に直接的な多言語入力を実装し、多言語歌詞入力と多言語プロンプト入力をサポートしています。
- 利点:直接的な多言語入力をサポート、使用が簡単
- 欠点:マージされたモデルを使用しない、複数のモデルのダウンロードが必要
このカスタムノードは現在、コア依存関係に日本語、中国語、韓国語の翻訳用の依存関係を追加しているため、音楽生成に複数の言語を直接使用できます。さらに、作者は混合多言語入力の処理を最適化しています。
このチュートリアルワークフローでは、ComfyUI_ACE-Stepから対応するACE-Step Lyrics Language Switch
を追加します。多言語入力が必要な場合、これにより言語入力が大幅に容易になります。
しかし、テスト中に、この言語変換ノードは日本語変換にまだいくつかの問題があることが判明しました。そのため、日本語で歌を生成したい場合は、この部分を削除し、ComfyUIのネイティブノードを使用して日本語カタカナを直接入力してください。
また、提供したワークフローでは、対応するノードはデフォルトでBypass
モードになっているため、多言語入力を有効にする必要がある場合は、ノードを右クリックしてノードモードをAlways
モードに設定する必要があります。
最近のComfyによるネイティブACE-Stepワークフローの更新により、ポータブルバージョンのテンプレートはまだ更新されていません。そのため、(2025-05-18)時点では、このチュートリアルは多言語サポートと最適化されたワークフローを備えたオンラインで見つけられる最も早いものとなるはずです。結局のところ、関連テンプレートは現在ComfyUI Wikiによって維持されています。
開始前の準備
- 対応するネイティブサポートを確保するために、ComfyUIを最新バージョンにアップグレードしてください
- (オプション、直接的な多言語入力が必要な場合) ComfyUI_ACE-Stepプラグインをインストールします(ComfyUI Managerを使用して直接インストール)
- モデルのダウンロード、ace_step_v1_3.5b.safetensorsをダウンロードして
ComfyUI/models/checkpoints
フォルダに保存します
ComfyUI ACE-Step テキストからオーディオ生成
1. ワークフローファイルのダウンロード
以下のボタンをクリックして対応するワークフローファイルをダウンロードし、ComfyUIにドラッグして対応するワークフロー情報をロードします。ワークフローにはモデルのダウンロード情報が含まれています。
2. ワークフローの完全な実行手順
Load Checkpoints
ノードがace_step_v1_3.5b.safetensors
モデルをロードすることを確認します- (オプション)
EmptyAceStepLatentAudio
ノードで、生成される音楽の長さを設定できます - (オプション)
ACE-Step Lyrics Language Switch
に対応する歌詞を入力します。入力方法がわからない場合は、ACE-Stepプロジェクトページを参照できます。日本語入力が必要な場合は、この部分を削除し、ComfyUIのネイティブノードを使用して日本語カタカナを直接入力してください。 - (オプション)
TextEncodeAceStepAudio
のtags
に対応する音楽スタイルなどを入力します - (オプション)
LatentOperationTonemapReinhard
ノードで、multiplier
を調整してボーカルの音量を調整できます(大きい数値はボーカルをより目立たせます) Run
ボタンをクリック、またはショートカットCtrl(cmd) + Enter
を使用してオーディオ生成を実行します- ワークフローが完了すると、
Save Audio
ノードで生成されたオーディオを確認できます。クリックして再生とプレビューが可能で、対応するオーディオはComfyUI/output/audio
にも保存されます(サブディレクトリ名はSave Audio
ノードによって決定されます)
ComfyUI ACE-Step オーディオからオーディオへ
ACE Stepのオーディオからオーディオへのワークフローを使用する場合、イメージからイメージへのワークフローのように音楽を入力し、以下のワークフローを使用してリサンプリング生成を実現できます。同様に、Ksampler
のdenoise
パラメータを制御することで、元のオーディオとの差異を調整することもできます。
以下を実現できます:
- 音楽スタイルの調整
- 歌詞の一部の修正など
ACE-Stepプロジェクトページでより多くの例を見ることができます
1. ワークフローファイルのダウンロード
以下のボタンをクリックして対応するワークフローファイルをダウンロードし、ComfyUIにドラッグして対応するワークフロー情報をロードします
テキストからオーディオへのワークフローからのオーディオを入力オーディオとして使用できます
2. ワークフローの完全な実行手順
Load Checkpoints
ノードがace_step_v1_3.5b.safetensors
モデルをロードすることを確認しますLoadAudio
ノードで編集するオーディオをアップロードします- (オプション)
ACE-Step Lyrics Language Switch
に修正した歌詞を入力します。ACE-Stepプロジェクトページを参照できます - (オプション)
TextEncodeAceStepAudio
のtags
に対応する音楽スタイルを入力します - (オプション)
KSampler
ノードのdenoise
パラメータを修正します(大きい数値は元のオーディオとの差異を大きくします) Run
ボタンをクリック、またはショートカットCtrl(cmd) + Enter
を使用してオーディオ生成を実行します- ワークフローが完了すると、
Save Audio
ノードで生成されたオーディオを確認できます。クリックして再生とプレビューが可能で、対応するオーディオはComfyUI/output/audio
にも保存されます(サブディレクトリ名はSave Audio
ノードによって決定されます)
ComfyUI ACE-Step LoRA
ACE-Stepは中国語RAPスタイルのLoRAモデルを正式にリリースしています。ACE-Step/ACE-Step-v1-chinese-rap-LoRAにアクセスして対応するLoRAモデルをダウンロードできます。ace-step-v1-chinese-rap-lora.safetensors
にリネームすることを忘れないでください。開始前に、対応するファイルを手動でダウンロードしてComfyUI/models/loras
フォルダに保存する必要があります。
1. ワークフローファイルのダウンロード
2. ワークフローの完全な実行手順
Load Checkpoints
ノードがace_step_v1_3.5b.safetensors
モデルをロードすることを確認しますLoad LoRA
ノードにace-step-v1-chinese-rap-lora.safetensors
モデルを追加します- 他のオプションはテキストからビデオへの生成と同様に修正されます。
Run
ボタンをクリック、またはショートカットCtrl(cmd) + Enter
を使用してオーディオ生成を実行します - ワークフローが完了すると、
Save Audio
ノードで生成されたオーディオを確認できます。クリックして再生とプレビューが可能で、対応するオーディオはComfyUI/output/audio
にも保存されます(サブディレクトリ名はSave Audio
ノードによって決定されます)
ACE-Step 音楽拡張
ACE-Step プロンプトガイド
ACEは現在、tags
とlyrics
の2種類のプロンプトを使用しています。
tags
:主に音楽スタイル、シーンなどを説明するために使用され、他のよく使用する生成プロンプトと似ています。主にオーディオの全体的なスタイルと要件を説明し、英語のカンマで区切られていますlyrics
:主に歌詞を説明するために使用され、[verse](詩節)、[chorus](コーラス)、[bridge](ブリッジ)などの歌詞構造タグをサポートして歌詞の異なる部分を区別します。また、インストゥルメンタル音楽の場合は楽器名を入力することもできます
ACE-Stepモデルホームページでtags
とlyrics
の豊富な例を見つけることができます。対応する例を参照してプロンプトを試すことができます。以下のプロンプトはComfyUI公式ドキュメントで整理されたもので、ほとんどはACE-Stepプロジェクトホームページからのものです。プロンプトの書き方を学ぶには、彼らの公式ドキュメントを参照することをお勧めします。
tags (プロンプト)
メインストリーム音楽スタイル
短いタグの組み合わせを使用して特定の音楽スタイルを生成します
- electronic
- rock
- pop
- funk
- soul
- cyberpunk
- Acid jazz
- electro
- em
- soft electric drums
- melodic
さらなる音楽スタイルの組み合わせ例
- DUBSTEP, DARKNESS, FEAR, TERROR (タグを繰り返すと効果が強化される場合があります)
- dark, death rock, metal, hardcore, electric guitar, powerful, bass, drums, 110 bpm, G major
- Cuban music, salsa, son, Afro-Cuban, traditional Cuban
- alternative rock, pop, rock
- dark electro, industrial techno, gothic rave
- disco
- electronic rap
- country rock, folk rock, southern rock, bluegrass, pop
- melancholic, world, sad
シーンタイプ
特定の使用シナリオと雰囲気を組み合わせて、対応する雰囲気に合った音楽を生成します
- background music for parties
- radio broadcasts
- workout playlists
楽器要素
- saxophone, jazz
- piano, violin
- 808 bass, sub bassline
- orchestral, synthesizer, violin, viola, cello
- phonk, russian dark accordion, russian psaltery, russian harmonica
声のタイプ
- female voice
- male voice
- clean vocals
- crystal-clear soprano voice
- deep male voice
専門用語
音楽でよく使われる専門用語を使用して、音楽効果を正確に制御します:
- 110 bpm, 140 bpm, 160 bpm (一分間あたりのビート数を指定)
- fast tempo
- slow tempo
- loops
- fills
- acoustic guitar
- electric bass
- G major, B flat major, D minor
高度な制御パラメータ
バリアントコントロール
生成された音楽とオリジナルスタイルの差異の程度を制御します:
- variance=0.1 (非常に類似、ほぼ同一)
- variance=0.3 (適度な変化、基本的なスタイルを維持)
- variance=0.5 (中程度の変化、顕著な違い)
- variance=0.7 (大きな変化、明らかなスタイル変換)
オーディオリペイント
残りの部分を保持しながら、オーディオの特定の側面または領域を修正できます:
- change singing gender
- change style
- change lyrics
特殊な音楽タイププロンプト
- 純粋なボーカル/アカペラ:「a cappella」タグを使用、歌詞は母音の組み合わせを使用できます(「aaaaaaaa, eeeeeeeee」など)
- ラップ/リズムコントロール:「b-box, deep male voice, trap, hip-hop, super fast tempo」を使用
- 実験的な音楽:母音の繰り返しや特殊なテキスト形式など、非従来的な入力を使用できます
- 純粋なインストゥルメンタル:歌詞セクションで「[inst]」タグを使用
実験的な入力形式
音楽を説明するためにより構造化されたHTML形式を試すことができます、例えば:
<SONG_PROMPT>
<header>
[STYLE: Electro-Acid House] [MOOD: Energetic, Raw, Hypnotic, Futuristic]
[INSTRUMENTATION: Acid Basslines, Punchy Kicks, Snappy Claps, Crisp Hi-Hats]
[TEMPO: 128 BPM] [PRODUCTION: Raw Energy, Dynamic Acid Sequences]
</header>
<SONG_MODULES>
<INTRO>
[Punchy kick and filtered acid bassline create a raw, pulsating groove.]
</INTRO>
<BUILD_UP_1>
[Acid bassline evolves with increasing resonance and modulation.]
</BUILD_UP_1>
<DROP_1>
[Full-power acid bassline dominates with high resonance and distortion.]
</DROP_1>
</SONG_MODULES>
</SONG_PROMPT>
Lyrics(歌詞)
歌詞構造タグ
- [intro]
- [verse]
- [pre-chorus]
- [chorus]
- [bridge]
- [outro]
- [hook]
- [refrain]
- [interlude]
- [breakdown]
- [ad-lib]
インストゥルメンタル音楽
インストゥルメンタル音楽の場合、歌詞セクションで使用できます: [inst] または楽器セクションを指定します:
[verse]
[chorus]
[solo]
[verse]
[chorus]
[outro]
多言語サポート
- ACE-Step V1は複数の言語をサポートしています。使用時、ACE-Stepは音楽生成のために異なる言語を対応する英語の文字に変換します。
- ComfyUIでは、すべての言語から英語の文字への変換を完全に実装していません。現在、日本語のひらがなとカタカナの文字のみがサポートされています。
したがって、音楽生成に複数の言語を使用する必要がある場合は、まず対応する言語を英語の文字に変換し、次に
lyrics
の先頭に言語コード略語を追加する必要があります。例えば、中国語の[zh]
、韓国語の[ko]
などです。または、この記事で言及されているACE-Step Lyrics Language Switch
ノードを使用して言語変換を完了させることもできます。
例えば:
[verse]
[zh]wo3zou3guo4shen1ye4de5jie1dao4
[zh]leng3feng1chui1luan4si1nian4de5piao4liang4wai4tao4
[zh]ni3de5wei1xiao4xiang4xing1guang1hen3xuan4yao4
[zh]zhao4liang4le5wo3gu1du2de5mei3fen1mei3miao3
[chorus]
[verse]
[ko]hamkke si-kkeuleo-un sesang-ui sodong-eul pihae
[ko]honja ogsang-eseo dalbich-ui eolyeompus-ileul balaboda
[ko]niga salang-eun lideum-i ganghan eum-ag gatdago malhaess-eo
[ko]han ta han tamada ma-eum-ui ondoga eolmana heojeonhanji ijge hae
[bridge]
[es]cantar mi anhelo por ti sin ocultar
[es]como poesía y pintura, lleno de anhelo indescifrable
[es]tu sombra es tan terca como el viento, inborrable
[es]persiguiéndote en vuelo, brilla como cruzar una mar de nubes
[chorus]
[fr]que tu sois le vent qui souffle sur ma main
[fr]un contact chaud comme la douce pluie printanière
[fr]que tu sois le vent qui s'entoure de mon corps
[fr]un amour profond qui ne s'éloignera jamais
ACE-Stepは現在19の言語をサポートしていますが、以下の10言語がより良くサポートされています:
- English
- Chinese: [zh]
- Russian: [ru]
- Spanish: [es]
- Japanese: [ja]
- German: [de]
- French: [fr]
- Portuguese: [pt]
- Italian: [it]
- Korean: [ko]
歌詞編集の例
オーディオからオーディオへのワークフローでは、特定の歌詞を正確に修正できます:
- “When I was young” -> “when you were kid”
- “When I was young” -> “When I was old”
- “I’d listen to the radio” -> “I’d listen to the spotify”
- “It made me smile” -> “It made me cry”
同じメロディーとスタイルを維持しながら言語変換を実行することもできます:
- “When I was young” -> “Quand j’étais jeune” (フランス語)
- “When I was young” -> “In meiner Jugend” (ドイツ語)
- “When I was young” -> “子供の頃に” (日本語)
- “When I was young” -> “내가 어렸을 때” (韓国語)
- “When I was young” -> “我小的时候” (中国語)
ただし、inputting in ComfyUI’s native nodes might be cumbersome, so it’s recommended to use the ACE-Step Lyrics Language Switch
node to handle language conversion.