Spaces:
Running
on
A100
Running
on
A100
| # ACE-Step Gradio デモユーザーガイド | |
| **Language / 语言 / 言語:** [English](../en/GRADIO_GUIDE.md) | [中文](../zh/GRADIO_GUIDE.md) | [日本語](GRADIO_GUIDE.md) | |
| --- | |
| 本ガイドはACE-Step Gradio Webインターフェースを使用した音楽生成の包括的なドキュメントを提供し、すべての機能と設定を含みます。 | |
| ## 目次 | |
| - [はじめに](#はじめに) | |
| - [サービス設定](#サービス設定) | |
| - [生成モード](#生成モード) | |
| - [タスクタイプ](#タスクタイプ) | |
| - [入力パラメータ](#入力パラメータ) | |
| - [高度な設定](#高度な設定) | |
| - [結果セクション](#結果セクション) | |
| - [LoRAトレーニング](#loraトレーニング) | |
| - [ヒントとベストプラクティス](#ヒントとベストプラクティス) | |
| --- | |
| ## はじめに | |
| ### デモの起動 | |
| ```bash | |
| # 基本的な起動 | |
| python app.py | |
| # 事前初期化付き | |
| python app.py --config acestep-v15-turbo --init-llm | |
| # 特定のポートで | |
| python app.py --port 7860 | |
| ``` | |
| ### インターフェース概要 | |
| Gradioインターフェースは以下の主要セクションで構成されています: | |
| 1. **サービス設定** - モデルの読み込みと初期化 | |
| 2. **必須入力** - タスクタイプ、オーディオアップロード、生成モード | |
| 3. **音楽キャプションと歌詞** - 生成用のテキスト入力 | |
| 4. **オプションパラメータ** - BPM、キー、durationなどのメタデータ | |
| 5. **高度な設定** - 生成の細かい制御 | |
| 6. **結果** - 生成されたオーディオの再生と管理 | |
| --- | |
| ## サービス設定 | |
| ### モデル選択 | |
| | 設定 | 説明 | | |
| |---------|-------------| | |
| | **チェックポイントファイル** | トレーニング済みモデルチェックポイントを選択(利用可能な場合)| | |
| | **メインモデルパス** | DiTモデル設定を選択(例:`acestep-v15-turbo`、`acestep-v15-turbo-shift3`)| | |
| | **デバイス** | 処理デバイス:`auto`(推奨)、`cuda`、または `cpu` | | |
| ### 5Hz LM設定 | |
| | 設定 | 説明 | | |
| |---------|-------------| | |
| | **5Hz LMモデルパス** | 言語モデルを選択(例:`acestep-5Hz-lm-0.6B`、`acestep-5Hz-lm-1.7B`)| | |
| | **5Hz LMバックエンド** | `vllm`(より高速、推奨)または `pt`(PyTorch、互換性が高い)| | |
| | **5Hz LMを初期化** | 初期化時にLMを読み込むためにチェック(thinkingモードに必要)| | |
| ### パフォーマンスオプション | |
| | 設定 | 説明 | | |
| |---------|-------------| | |
| | **Flash Attentionを使用** | より高速な推論のために有効化(flash_attnパッケージが必要)| | |
| | **CPUにオフロード** | アイドル時にモデルをCPUにオフロードしてGPUメモリを節約 | | |
| | **DiTをCPUにオフロード** | DiTモデルを特にCPUにオフロード | | |
| ### LoRAアダプター | |
| | 設定 | 説明 | | |
| |---------|-------------| | |
| | **LoRAパス** | トレーニング済みLoRAアダプターディレクトリへのパス | | |
| | **LoRAを読み込み** | 指定されたLoRAアダプターを読み込み | | |
| | **アンロード** | 現在読み込まれているLoRAを削除 | | |
| | **LoRAを使用** | 推論用の読み込まれたLoRAを有効化/無効化 | | |
| ### 初期化 | |
| **サービスを初期化** をクリックしてモデルを読み込みます。ステータスボックスに進捗と確認が表示されます。 | |
| --- | |
| ## 生成モード | |
| ### シンプルモード | |
| シンプルモードは、迅速な自然言語ベースの音楽生成用に設計されています。 | |
| **使用方法:** | |
| 1. 生成モードラジオボタンで「シンプル」を選択 | |
| 2. 「曲の説明」フィールドに自然言語の説明を入力 | |
| 3. ボーカルが不要な場合は「インストゥルメンタル」をオプションでチェック | |
| 4. オプションで希望するボーカル言語を選択 | |
| 5. **サンプルを作成** をクリックしてcaption、歌詞、メタデータを生成 | |
| 6. 展開されたセクションで生成されたコンテンツを確認 | |
| 7. **音楽を生成** をクリックしてオーディオを作成 | |
| **説明の例:** | |
| - 「静かな夜のための柔らかいベンガルのラブソング」 | |
| - 「重いベースドロップのアップビートなエレクトロニックダンスミュージック」 | |
| - 「アコースティックギターのメランコリックなインディーフォーク」 | |
| - 「煙たいバーで演奏するジャズトリオ」 | |
| **ランダムサンプル:** 🎲 ボタンをクリックしてランダムな例の説明を読み込みます。 | |
| ### カスタムモード | |
| カスタムモードはすべての生成パラメータの完全な制御を提供します。 | |
| **使用方法:** | |
| 1. 生成モードラジオボタンで「カスタム」を選択 | |
| 2. Captionと歌詞フィールドを手動で入力 | |
| 3. オプションのメタデータを設定(BPM、キー、Durationなど) | |
| 4. オプションで **フォーマット** をクリックしてLMを使用して入力を強化 | |
| 5. 必要に応じて高度な設定を構成 | |
| 6. **音楽を生成** をクリックしてオーディオを作成 | |
| --- | |
| ## タスクタイプ | |
| ### text2music(デフォルト) | |
| テキスト説明および/または歌詞から音楽を生成。 | |
| **ユースケース:** プロンプトに基づいて新しい音楽をゼロから作成。 | |
| **必須入力:** Captionまたは歌詞(少なくとも1つ) | |
| ### cover | |
| 既存のオーディオを構造を維持しながらスタイルを変更して変換。 | |
| **ユースケース:** 異なるスタイルのカバーバージョンを作成。 | |
| **必須入力:** | |
| - ソースオーディオ(オーディオアップロードセクションでアップロード) | |
| - ターゲットスタイルを説明するCaption | |
| **重要なパラメータ:** `オーディオカバー強度`(0.0-1.0) | |
| - 高い値は元の構造をより多く維持 | |
| - 低い値はより創造的な自由を許可 | |
| ### repaint | |
| オーディオの特定の時間セグメントを再生成。 | |
| **ユースケース:** 生成された音楽の特定のセクションを修正または変更。 | |
| **必須入力:** | |
| - ソースオーディオ | |
| - リペイント開始(秒) | |
| - リペイント終了(秒、ファイル終端には-1) | |
| - 希望するコンテンツを説明するCaption | |
| ### lego(Baseモデルのみ) | |
| 既存のオーディオのコンテキストで特定の楽器トラックを生成。 | |
| **ユースケース:** バッキングトラックに楽器レイヤーを追加。 | |
| **必須入力:** | |
| - ソースオーディオ | |
| - トラック名(ドロップダウンから選択) | |
| - トラック特性を説明するCaption | |
| **利用可能なトラック:** vocals、backing_vocals、drums、bass、guitar、keyboard、percussion、strings、synth、fx、brass、woodwinds | |
| ### extract(Baseモデルのみ) | |
| ミックスオーディオから特定の楽器トラックを抽出/分離。 | |
| **ユースケース:** ステム分離、楽器の分離。 | |
| **必須入力:** | |
| - ソースオーディオ | |
| - 抽出するトラック名 | |
| ### complete(Baseモデルのみ) | |
| 指定された楽器で部分的なトラックを完成。 | |
| **ユースケース:** 不完全な作品の自動アレンジ。 | |
| **必須入力:** | |
| - ソースオーディオ | |
| - トラック名(複数選択) | |
| - 希望するスタイルを説明するCaption | |
| --- | |
| ## 入力パラメータ | |
| ### 必須入力 | |
| #### タスクタイプ | |
| ドロップダウンから生成タスクを選択。選択されたタスクに基づいて指示フィールドが自動的に更新されます。 | |
| #### オーディオアップロード | |
| | フィールド | 説明 | | |
| |-------|-------------| | |
| | **参照オーディオ** | スタイル参照用のオプションオーディオ | | |
| | **ソースオーディオ** | cover、repaint、lego、extract、completeタスクに必須 | | |
| | **コードに変換** | ソースオーディオから5Hzセマンティックコードを抽出 | | |
| #### LMコードヒント | |
| 事前計算されたオーディオセマンティックコードをここに貼り付けて生成をガイドできます。**トランスクライブ** ボタンを使用してコードを分析しメタデータを抽出します。 | |
| ### 音楽キャプション | |
| 希望する音楽のテキスト説明。以下について具体的に: | |
| - ジャンルとスタイル | |
| - 楽器 | |
| - ムードと雰囲気 | |
| - テンポ感(BPMを指定しない場合) | |
| **例:** 「エレキギター、力強いドラム、キャッチーなシンセフックのアップビートなポップロック」 | |
| 🎲 をクリックしてランダムな例のcaptionを読み込みます。 | |
| ### 歌詞 | |
| 構造タグ付きの歌詞を入力: | |
| ``` | |
| [Verse 1] | |
| 今日街を歩いていて | |
| 君が言っていた言葉を思い出していた | |
| [Chorus] | |
| 前に進んでいく、強くいる | |
| ここが僕の居場所 | |
| [Verse 2] | |
| ... | |
| ``` | |
| **インストゥルメンタルチェックボックス:** これをチェックすると、歌詞の内容に関係なくインストゥルメンタル音楽を生成します。 | |
| **ボーカル言語:** ボーカルの言語を選択。自動検出またはインストゥルメンタルトラックには「unknown」を使用。 | |
| **フォーマットボタン:** クリックして5Hz LMを使用してcaptionと歌詞を強化。 | |
| ### オプションパラメータ | |
| | パラメータ | デフォルト | 説明 | | |
| |-----------|---------|-------------| | |
| | **BPM** | 自動 | 1分あたりのビート数(30-300)| | |
| | **キースケール** | 自動 | 音楽キー(例:「C Major」、「Am」、「F# minor」)| | |
| | **拍子記号** | 自動 | 拍子記号:2(2/4)、3(3/4)、4(4/4)、6(6/8)| | |
| | **オーディオ長** | 自動/-1 | 目標長(秒)(10-600)。-1で自動 | | |
| | **バッチサイズ** | 2 | 生成するオーディオバリエーションの数(1-8)| | |
| --- | |
| ## 高度な設定 | |
| ### DiTパラメータ | |
| | パラメータ | デフォルト | 説明 | | |
| |-----------|---------|-------------| | |
| | **推論ステップ** | 8 | デノイズステップ。Turbo:1-20、Base:1-200 | | |
| | **ガイダンススケール** | 7.0 | CFG強度(baseモデルのみ)。高い = プロンプトにより従う | | |
| | **シード** | -1 | ランダムシード。バッチにはカンマ区切りの値を使用 | | |
| | **ランダムシード** | ✓ | チェック時にランダムシードを生成 | | |
| | **オーディオ形式** | mp3 | 出力形式:mp3、flac | | |
| | **シフト** | 3.0 | タイムステップシフト係数(1.0-5.0)。turboには3.0推奨 | | |
| | **推論方法** | ode | ode(Euler、より高速)またはsde(確率的)| | |
| | **カスタムタイムステップ** | - | タイムステップをオーバーライド(例:「0.97,0.76,0.615,0.5,0.395,0.28,0.18,0.085,0」)| | |
| ### Baseモデルのみのパラメータ | |
| | パラメータ | デフォルト | 説明 | | |
| |-----------|---------|-------------| | |
| | **ADGを使用** | ✗ | より良い品質のために適応デュアルガイダンスを有効化 | | |
| | **CFG区間開始** | 0.0 | CFGを適用し始めるタイミング(0.0-1.0)| | |
| | **CFG区間終了** | 1.0 | CFGの適用を停止するタイミング(0.0-1.0)| | |
| ### LMパラメータ | |
| | パラメータ | デフォルト | 説明 | | |
| |-----------|---------|-------------| | |
| | **LM温度** | 0.85 | サンプリング温度(0.0-2.0)。高い = より創造的 | | |
| | **LM CFGスケール** | 2.0 | LMガイダンス強度(1.0-3.0)| | |
| | **LM Top-K** | 0 | Top-Kサンプリング。0で無効 | | |
| | **LM Top-P** | 0.9 | 核サンプリング(0.0-1.0)| | |
| | **LMネガティブプロンプト** | "NO USER INPUT" | CFG用のネガティブプロンプト | | |
| ### CoT(思考の連鎖)オプション | |
| | オプション | デフォルト | 説明 | | |
| |--------|---------|-------------| | |
| | **CoT Metas** | ✓ | LM推論でメタデータを生成 | | |
| | **CoT Language** | ✓ | LMでボーカル言語を検出 | | |
| | **制約付きデコーディングデバッグ** | ✗ | デバッグログを有効化 | | |
| ### 生成オプション | |
| | オプション | デフォルト | 説明 | | |
| |--------|---------|-------------| | |
| | **LMコード強度** | 1.0 | LMコードが生成に与える影響の強さ(0.0-1.0)| | |
| | **自動スコア** | ✗ | 品質スコアを自動計算 | | |
| | **自動LRC** | ✗ | 歌詞タイムスタンプを自動生成 | | |
| | **LMバッチチャンクサイズ** | 8 | LMバッチあたりの最大アイテム数(GPUメモリ)| | |
| ### メイン生成コントロール | |
| | コントロール | 説明 | | |
| |---------|-------------| | |
| | **Think** | コード生成とメタデータ用の5Hz LMを有効化 | | |
| | **ParallelThinking** | 並列LMバッチ処理を有効化 | | |
| | **CaptionRewrite** | LMに入力captionを強化させる | | |
| | **AutoGen** | 完了後に次のバッチを自動開始 | | |
| --- | |
| ## 結果セクション | |
| ### 生成されたオーディオ | |
| バッチサイズに基づいて最大8つのオーディオサンプルが表示されます。各サンプルには以下が含まれます: | |
| - **オーディオプレーヤー** - 生成されたオーディオの再生、一時停止、ダウンロード | |
| - **ソースに送信** - このオーディオをソースオーディオ入力に送信してさらに処理 | |
| - **保存** - オーディオとメタデータをJSONファイルに保存 | |
| - **スコア** - パープレキシティベースの品質スコアを計算 | |
| - **LRC** - 歌詞タイムスタンプを生成(LRC形式) | |
| ### 詳細アコーディオン | |
| 「スコア & LRC & LMコード」をクリックして展開し、以下を表示: | |
| - **LMコード** - このサンプルの5Hzセマンティックコード | |
| - **品質スコア** - パープレキシティベースの品質メトリック | |
| - **歌詞タイムスタンプ** - LRC形式のタイミングデータ | |
| ### バッチナビゲーション | |
| | コントロール | 説明 | | |
| |---------|-------------| | |
| | **◀ 前へ** | 前のバッチを表示 | | |
| | **バッチインジケーター** | 現在のバッチ位置を表示(例:「バッチ 1 / 3」)| | |
| | **次バッチステータス** | バックグラウンド生成の進捗を表示 | | |
| | **次へ ▶** | 次のバッチを表示(AutoGenがオンの場合は生成をトリガー)| | |
| ### パラメータの復元 | |
| **これらの設定をUIに適用** をクリックして、現在のバッチからすべての生成パラメータを入力フィールドに復元。良い結果を反復するのに便利。 | |
| ### バッチ結果 | |
| 「バッチ結果と生成詳細」アコーディオンには以下が含まれます: | |
| - **すべての生成ファイル** - すべてのバッチからすべてのファイルをダウンロード | |
| - **生成詳細** - 生成プロセスに関する詳細情報 | |
| --- | |
| ## LoRAトレーニング | |
| LoRAトレーニングタブはカスタムLoRAアダプターを作成するためのツールを提供します。 | |
| ### データセットビルダータブ | |
| #### ステップ1:読み込みまたはスキャン | |
| **オプションA:既存のデータセットを読み込み** | |
| 1. 以前保存したデータセットJSONへのパスを入力 | |
| 2. **読み込み** をクリック | |
| **オプションB:新しいディレクトリをスキャン** | |
| 1. オーディオフォルダへのパスを入力 | |
| 2. **スキャン** をクリックしてオーディオファイルを検索(wav、mp3、flac、ogg、opus) | |
| #### ステップ2:データセットの設定 | |
| | 設定 | 説明 | | |
| |---------|-------------| | |
| | **データセット名** | データセットの名前 | | |
| | **すべてインストゥルメンタル** | すべてのトラックにボーカルがない場合にチェック | | |
| | **カスタムアクティベーションタグ** | このLoRAのスタイルをアクティブにするユニークなタグ | | |
| | **タグ位置** | タグを配置する場所:前に追加、後に追加、またはcaptionを置換 | | |
| #### ステップ3:自動ラベル | |
| **すべて自動ラベル** をクリックしてすべてのオーディオファイルのメタデータを生成: | |
| - Caption(音楽の説明) | |
| - BPM | |
| - キー | |
| - 拍子記号 | |
| **Metasをスキップ** オプションはLLMラベリングをスキップしてN/A値を使用します。 | |
| #### ステップ4:プレビューと編集 | |
| スライダーを使用してサンプルを選択し、手動で編集: | |
| - Caption | |
| - 歌詞 | |
| - BPM、キー、拍子記号 | |
| - 言語 | |
| - インストゥルメンタルフラグ | |
| **変更を保存** をクリックしてサンプルを更新。 | |
| #### ステップ5:データセットを保存 | |
| 保存パスを入力し、**データセットを保存** をクリックしてJSONとしてエクスポート。 | |
| #### ステップ6:前処理 | |
| 高速トレーニングのためにデータセットを事前計算テンソルに変換: | |
| 1. オプションで既存のデータセットJSONを読み込み | |
| 2. テンソル出力ディレクトリを設定 | |
| 3. **前処理** をクリック | |
| これによりオーディオがVAE潜在変数にエンコードされ、テキストが埋め込みにエンコードされ、条件エンコーダーが実行されます。 | |
| ### LoRAトレーニングタブ | |
| #### データセット選択 | |
| 前処理されたテンソルディレクトリへのパスを入力し、**データセットを読み込み** をクリック。 | |
| #### LoRA設定 | |
| | 設定 | デフォルト | 説明 | | |
| |---------|---------|-------------| | |
| | **LoRAランク (r)** | 64 | LoRAの容量。高い = より多くの容量、より多くのメモリ | | |
| | **LoRA Alpha** | 128 | スケーリング係数(通常はランクの2倍)| | |
| | **LoRA Dropout** | 0.1 | 正則化のためのドロップアウト率 | | |
| #### トレーニングパラメータ | |
| | 設定 | デフォルト | 説明 | | |
| |---------|---------|-------------| | |
| | **学習率** | 1e-4 | 最適化学習率 | | |
| | **最大エポック** | 500 | 最大トレーニングエポック | | |
| | **バッチサイズ** | 1 | トレーニングバッチサイズ | | |
| | **勾配累積** | 1 | 有効バッチ = batch_size × accumulation | | |
| | **Nエポックごとに保存** | 200 | チェックポイント保存頻度 | | |
| | **シフト** | 3.0 | turboモデルのタイムステップシフト | | |
| | **シード** | 42 | 再現性のためのランダムシード | | |
| #### トレーニングコントロール | |
| - **トレーニング開始** - トレーニングプロセスを開始 | |
| - **トレーニング停止** - トレーニングを中断 | |
| - **トレーニング進捗** - 現在のエポックとロスを表示 | |
| - **トレーニングログ** - 詳細なトレーニング出力 | |
| - **トレーニングロスプロット** - 視覚的なロス曲線 | |
| #### LoRAのエクスポート | |
| トレーニング後、最終アダプターをエクスポート: | |
| 1. エクスポートパスを入力 | |
| 2. **LoRAをエクスポート** をクリック | |
| --- | |
| ## ヒントとベストプラクティス | |
| ### 最高品質のために | |
| 1. **thinkingモードを使用** - LM強化生成のために「Think」チェックボックスを有効に保つ | |
| 2. **captionを具体的に** - ジャンル、楽器、ムード、スタイルの詳細を含める | |
| 3. **LMにメタデータを検出させる** - 自動検出のためにBPM/キー/Durationを空のままにする | |
| 4. **バッチ生成を使用** - 2-4のバリエーションを生成し、最良のものを選ぶ | |
| ### より高速な生成のために | |
| 1. **turboモデルを使用** - `acestep-v15-turbo` または `acestep-v15-turbo-shift3` を選択 | |
| 2. **推論ステップを8に保つ** - turboに最適なデフォルト | |
| 3. **バッチサイズを減らす** - 迅速な結果が必要な場合はバッチサイズを下げる | |
| 4. **AutoGenを無効化** - バッチ生成の手動制御 | |
| ### 一貫した結果のために | |
| 1. **特定のシードを設定** - 「ランダムシード」のチェックを外してシード値を入力 | |
| 2. **良い結果を保存** - 再現のためにパラメータをエクスポートするために「保存」を使用 | |
| 3. **「これらの設定を適用」を使用** - 良いバッチからパラメータを復元 | |
| ### 長尺音楽のために | |
| 1. **明示的なdurationを設定** - 秒単位でdurationを指定 | |
| 2. **repaintタスクを使用** - 初期生成後に問題のあるセクションを修正 | |
| 3. **生成をチェーン** - 以前の結果の上に構築するために「ソースに送信」を使用 | |
| ### スタイルの一貫性のために | |
| 1. **LoRAをトレーニング** - あなたのスタイル用のカスタムアダプターを作成 | |
| 2. **参照オーディオを使用** - オーディオアップロードでスタイル参照をアップロード | |
| 3. **一貫したcaptionを使用** - 類似の説明的な言語を維持 | |
| ### トラブルシューティング | |
| **オーディオが生成されない:** | |
| - モデルが初期化されていることを確認(緑のステータスメッセージ) | |
| - thinkingモードを使用している場合は5Hz LMが初期化されていることを確認 | |
| - エラーメッセージのステータス出力を確認 | |
| **結果の品質が悪い:** | |
| - 推論ステップを増やす(baseモデルの場合) | |
| - ガイダンススケールを調整 | |
| - 異なるシードを試す | |
| - captionをより具体的にする | |
| **メモリ不足:** | |
| - バッチサイズを減らす | |
| - CPUオフロードを有効化 | |
| - LMバッチチャンクサイズを減らす | |
| **LMが機能しない:** | |
| - 初期化時に「5Hz LMを初期化」がチェックされていたことを確認 | |
| - 有効なLMモデルパスが選択されていることを確認 | |
| - vllmまたはPyTorchバックエンドが利用可能であることを確認 | |
| --- | |
| ## キーボードショートカット | |
| Gradioインターフェースは標準的なWebショートカットをサポート: | |
| - **Tab** - 入力フィールド間を移動 | |
| - **Enter** - テキスト入力を送信 | |
| - **Space** - チェックボックスを切り替え | |
| --- | |
| ## 言語サポート | |
| インターフェースは複数のUI言語をサポート: | |
| - **英語** (en) | |
| - **中国語** (zh) | |
| - **日本語** (ja) | |
| サービス設定セクションで好みの言語を選択してください。 | |
| --- | |
| 詳細については以下を参照: | |
| - メインREADME:[`../../README.md`](../../README.md) | |
| - REST APIドキュメント:[`API.md`](API.md) | |
| - Python推論API:[`INFERENCE.md`](INFERENCE.md) | |