| ## 必要条件 |
|
|
| - GPUメモリ: 24GB (推論時) |
| - システム: Linux, WSL |
|
|
| ## システムセットアップ |
|
|
| Fish Audio S2は複数のインストール方法をサポートしています。ご自身の開発環境に最も適した方法をお選びください。 |
|
|
| **前提条件**: 音声処理のためのシステム依存関係をインストールします: |
| ``` bash |
| apt install portaudio19-dev libsox-dev ffmpeg |
| ``` |
|
|
| ### Conda |
|
|
| ```bash |
| conda create -n fish-speech python=3.12 |
| conda activate fish-speech |
| |
| # GPU版のインストール (CUDAバージョンを選択: cu126, cu128, cu129) |
| pip install -e .[cu129] |
| |
| # CPU版のみのインストール |
| pip install -e .[cpu] |
| |
| # デフォルトインストール (PyTorchのデフォルトインデックスを使用) |
| pip install -e . |
| |
| # pyaudioのインストールでエラーが発生する場合は、以下のコマンドを試してください: |
| # conda install pyaudio |
| # その後、再度 pip install -e . を実行してください |
| ``` |
|
|
| ### UV |
|
|
| UVはより高速な依存関係の解決とインストールを実現します: |
|
|
| ```bash |
| # GPU版のインストール (CUDAバージョンを選択: cu126, cu128, cu129) |
| uv sync --python 3.12 --extra cu129 |
| |
| # CPU版のみのインストール |
| uv sync --python 3.12 --extra cpu |
| ``` |
| ### Intel Arc XPU サポート |
|
|
| Intel Arc GPUユーザーは、以下の手順でXPUサポートをインストールしてください: |
|
|
| ```bash |
| conda create -n fish-speech python=3.12 |
| conda activate fish-speech |
| |
| # 必要なC++標準ライブラリをインストール |
| conda install libstdcxx -c conda-forge |
| |
| # Intel XPU対応のPyTorchをインストール |
| pip install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/xpu |
| |
| # Fish Speechのインストール |
| pip install -e . |
| ``` |
|
|
| !!! warning |
| `compile`オプションはWindowsとmacOSではサポートされていません。コンパイルを有効にして実行したい場合は、ご自身でTritonをインストールする必要があります。 |
| |
|
|
| ## Dockerセットアップ |
|
|
| Fish Audio S2シリーズモデルは、さまざまなニーズに応えるため複数のDockerデプロイメントオプションを提供しています。Docker Hubのビルド済みイメージを使用するか、Docker Composeでローカルビルドするか、手動でカスタムイメージをビルドすることができます。 |
|
|
| WebUIとAPIサーバーの両方について、GPU(デフォルトはCUDA 12.6)版とCPU版のDockerイメージを提供しています。Docker Hubのビルド済みイメージを使用するか、Docker Composeでローカルビルドするか、手動でカスタムイメージをビルドするかを選択できます。ローカルでビルドする場合は、以下の手順に従ってください。ビルド済みイメージを使用するだけの場合は、[推論ガイド](inference.md)を直接参照してください。 |
|
|
| ### 前提条件 |
|
|
| - DockerとDocker Composeがインストール済みであること |
| - NVIDIA Dockerランタイムがインストール済みであること(GPUサポート用) |
| - CUDAによる推論のために、少なくとも24GBのGPUメモリがあること |
|
|
| ### Docker Composeの使用 |
|
|
| 開発やカスタマイズのために、Docker Composeを使用してローカルでビルド・実行できます: |
|
|
| ```bash |
| # まず、リポジトリをクローンします |
| git clone https://github.com/fishaudio/fish-speech.git |
| cd fish-speech |
| |
| # CUDAでWebUIを起動 |
| docker compose --profile webui up |
| |
| # コンパイル最適化を有効にしてWebUIを起動 |
| COMPILE=1 docker compose --profile webui up |
| |
| # APIサーバーを起動 |
| docker compose --profile server up |
| |
| # コンパイル最適化を有効にしてAPIサーバーを起動 |
| COMPILE=1 docker compose --profile server up |
| |
| # CPUのみでのデプロイ |
| BACKEND=cpu docker compose --profile webui up |
| ``` |
|
|
| #### Docker Compose 環境変数 |
|
|
| 環境変数を使用してデプロイメントをカスタマイズできます: |
|
|
| ```bash |
| # .env ファイルの例 |
| BACKEND=cuda # または cpu |
| COMPILE=1 # コンパイル最適化を有効化 |
| GRADIO_PORT=7860 # WebUIのポート |
| API_PORT=8080 # APIサーバーのポート |
| UV_VERSION=0.8.15 # UVパッケージマネージャーのバージョン |
| ``` |
|
|
| このコマンドはイメージをビルドし、コンテナを実行します。WebUIには`http://localhost:7860`で、APIサーバーには`http://localhost:8080`でアクセスできます。 |
|
|
| ### 手動でのDockerビルド |
|
|
| ビルドプロセスをカスタマイズしたい上級者向け: |
|
|
| ```bash |
| # CUDAサポート付きのWebUIイメージをビルド |
| docker build \ |
| --platform linux/amd64 \ |
| -f docker/Dockerfile \ |
| --build-arg BACKEND=cuda \ |
| --build-arg CUDA_VER=12.6.0 \ |
| --build-arg UV_EXTRA=cu126 \ |
| --target webui \ |
| -t fish-speech-webui:cuda . |
| |
| # CUDAサポート付きのAPIサーバーイメージをビルド |
| docker build \ |
| --platform linux/amd64 \ |
| -f docker/Dockerfile \ |
| --build-arg BACKEND=cuda \ |
| --build-arg CUDA_VER=12.6.0 \ |
| --build-arg UV_EXTRA=cu126 \ |
| --target server \ |
| -t fish-speech-server:cuda . |
| |
| # CPUのみのイメージをビルド(マルチプラットフォーム対応) |
| docker build \ |
| --platform linux/amd64,linux/arm64 \ |
| -f docker/Dockerfile \ |
| --build-arg BACKEND=cpu \ |
| --target webui \ |
| -t fish-speech-webui:cpu . |
| |
| # 開発用イメージをビルド |
| docker build \ |
| --platform linux/amd64 \ |
| -f docker/Dockerfile \ |
| --build-arg BACKEND=cuda \ |
| --target dev \ |
| -t fish-speech-dev:cuda . |
| ``` |
|
|
| #### ビルド引数 |
|
|
| - `BACKEND`: `cuda` または `cpu` (デフォルト: `cuda`) |
| - `CUDA_VER`: CUDAバージョン (デフォルト: `12.6.0`) |
| - `UV_EXTRA`: CUDA用のUV追加パッケージ (デフォルト: `cu126`) |
| - `UBUNTU_VER`: Ubuntuバージョン (デフォルト: `24.04`) |
| - `PY_VER`: Pythonバージョン (デフォルト: `3.12`) |
|
|
| ### ボリュームマウント |
|
|
| どちらの方法でも、以下のディレクトリをマウントする必要があります: |
|
|
| - `./checkpoints:/app/checkpoints` - モデルの重みファイル用ディレクトリ |
| - `./references:/app/references` - 参照音声ファイル用ディレクトリ |
|
|
| ### 環境変数 |
|
|
| - `COMPILE=1` - `torch.compile`を有効にして推論を高速化(約10倍) |
| - `GRADIO_SERVER_NAME=0.0.0.0` - WebUIサーバーのホスト |
| - `GRADIO_SERVER_PORT=7860` - WebUIサーバーのポート |
| - `API_SERVER_NAME=0.0.0.0` - APIサーバーのホスト |
| - `API_SERVER_PORT=8080` - APIサーバーのポート |
|
|
| !!! note |
| Dockerコンテナは、モデルの重みが`/app/checkpoints`にマウントされることを想定しています。コンテナを起動する前に、必要なモデルの重みをダウンロードしてください。 |
| |
| !!! warning |
| GPUサポートにはNVIDIA Dockerランタイムが必要です。CPUのみでデプロイする場合は、`--gpus all`フラグを削除し、CPU用のイメージを使用してください。 |
| |