Ace-Step-v1.5 / docs /ja /GRADIO_GUIDE.md
ChuxiJ's picture
add docs and readme
428436b
# 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)