ローカル音声認識・音声合成

Fish Audio S2 Proで表現のある音声を合成

会話タグで話し方を調整できますが、重みは研究・非商用条件です。

Fish Audio S2 Proはテキストと話者情報から音声を生成します。モデルカードは83言語と、会話表現を指定する細かなタグを掲載しています。fish-audio-research-licenseは研究・非商用利用に制限するため、商用作業には使わないでください。

実行条件と要点
  • カードには83言語と表現を指定する会話タグが掲載されています。
  • 台詞にタグを追加して話し方を指定できます。
  • 重みは研究・非商用ライセンスです。

台詞と表現指定から音声を作る

Fish Audio S2 Proは音声生成モデルです。テキストと話者情報を受け取り、カード記載の表現タグで笑い、感情、話し方を台詞に指定できます。タグはそのまま読み上げる台本ではなくモデル入力形式なので、各指定がどう表現されたか聞いてください。公式モデルカード

開いた本、小型コンピューター、スピーカーが置かれた机
台詞に表現タグを加えて話し方を試します。

Linux・WSLでCUDA環境とS2 Pro資産を準備します

公式インストールガイドはPython 3.12、uv、NVIDIA CUDA1 12.9の手順を案内しています。Linux・WSLでCUDA対応ドライバーと24GB VRAM2のGPU3を用意し、システム音声パッケージ、CUDA依存関係、S2 Proチェックポイント4を導入してください。

CUDA依存関係とS2 Proモデルを導入
sudo apt-get update && sudo apt-get install -y portaudio19-dev libsox-dev ffmpeg
curl -LsSf https://astral.sh/uv/install.sh | sh
git clone https://github.com/fishaudio/fish-speech.git
cd fish-speech
uv sync --python 3.12 --extra cu129
uv run hf download fishaudio/s2-pro --local-dir checkpoints/s2-pro

タグは一度に一つずつ変えて比較する

reference.wavをリポジトリのルートに置いて参照トークン5を作成し、参照音声の書き起こしと合成する文を入力して生成トークンを作ります。タグごとの結果を別フォルダーに保存してWAVにデコード6すると、2つのファイルを並べて聴けます。

参照音声をエンコード
uv run python fish_speech/models/dac/inference.py -i reference.wav --checkpoint-path checkpoints/s2-pro/codec.pth
# Creates fake.npy and fake.wav
表現タグを一つずつ比較
uv run python fish_speech/models/text2semantic/inference.py --text "[whisper] 오늘 회의는 오후 두 시에 시작합니다." --prompt-text "참조 음성의 정확한 문장" --prompt-tokens fake.npy --output-dir output-whisper
uv run python fish_speech/models/text2semantic/inference.py --text "[excited] 오늘 회의는 오후 두 시에 시작합니다." --prompt-text "참조 음성의 정확한 문장" --prompt-tokens fake.npy --output-dir output-excited
生成トークンをWAVにデコード
uv run python fish_speech/models/dac/inference.py -i output-whisper/codes_0.npy --checkpoint-path checkpoints/s2-pro/codec.pth -o whisper.wav
uv run python fish_speech/models/dac/inference.py -i output-excited/codes_0.npy --checkpoint-path checkpoints/s2-pro/codec.pth -o excited.wav
マイク、ヘッドホン、音声波形を表示したモニターのある作業机
生成ファイルで台詞と間が意図どおりか聞きます。

研究・非商用ライセンスの範囲を守る

fish-audio-research-licenseは研究・非商用利用を認め、商用利用にはFish Audioの別途許可が必要です。公開コンテンツや有料サービスに使う前に、ライセンスと入力音声の権利を確認してください。

最終ファイルを通して聞き、修正する

サンプルに問題がなければ本番の長さで生成し、最後まで聞いてください。固有名詞、数字、会話の間、感情タグを確認し、編集ツールで音量をそろえて字幕やカットを加えます。

短い案内音声を数本だけ必要とするなら、このモデルを先に選ぶ理由はありません。多言語の長い文章をまとめて作るときに比較してください。

ヘッドホン、オーディオプレーヤー、開いたノートが置かれた机
利用前に研究・非商用ライセンスを確認します。

用語の注釈

  1. CUDA — NVIDIA GPUで汎用計算を行うソフトウェア基盤です。

    本文に戻る
  2. VRAM — グラフィックカードのGPUが使うメモリです。モデルの重みや計算途中の値を保存します。

    本文に戻る
  3. GPU — 多くの計算を並列に処理するプロセッサーです。AIモデルの実行ではモデル計算を担います。

    本文に戻る
  4. チェックポイント — 学習済みモデルの重みなどを保存したファイルです。同じモデル系列でも、版や用途によって異なるチェックポイントを使うことがあります。

    本文に戻る
  5. トークン — モデルが入力や出力を分けて処理する単位です。

    本文に戻る
  6. トークンのデコード — 入力とそれまでの回答をもとに、次の出力トークンを順に生成する段階です。

    本文に戻る

よくある質問

この記事で最初に確認すべきことは何ですか?
Fish Audio S2 Proはテキストと話者情報から音声を生成します。モデルカードは83言語と、会話表現を指定する細かなタグを掲載しています。fish-audio-research-licenseは研究・非商用利用に制限するため、商用作業には使わないでください。
必要なメモリはどのくらいですか?
公式インストールガイドはPython 3.12、uv、NVIDIA CUDA 12.9の手順を案内しています。Linux・WSLでCUDA対応ドライバーと24GB VRAMのGPUを用意し、システム音声パッケージ、CUDA依存関係、S2 Proチェックポイントを導入してください。
条件と出典はどこで確認できますか?
Fish Audio S2 Proは音声生成モデルです。テキストと話者情報を受け取り、カード記載の表現タグで笑い、感情、話し方を台詞に指定できます。タグはそのまま読み上げる台本ではなくモデル入力形式なので、各指定がどう表現されたか聞いてください。[公式モデルカード](https://huggingface.co/fishaudio/s2-pro)