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

OmniVoiceで韓国語音声を作る:600以上の言語・方言に対応

0.6Bモデルがテキストを音声に変換し、重みには非商用条件があります。

OmniVoiceは0.6Bの多言語TTS1で、モデルカードは600以上の言語・方言を扱うと説明しています。コードはApache 2.0ですが、事前学習済み重みはCC-BY-NCで、商用利用は認められていません。カードの言語と発話例を確認し、実際の発音を評価してください。

実行条件と要点
  • 韓国語を含む複数言語でテキストから音声を生成します。
  • コードと事前学習済み重みのライセンスは異なります。
  • 重みのCC-BY-NC条件は商用利用を制限します。

テキストから複数言語の音声を作る

OmniVoiceはK2-FSAの0.6B TTSモデルです。モデルカードは600を超える言語・方言を説明し、参照音声と書き起こしの声で文を読むzero-shot例を掲載しています。韓国語文で名前や数字の発音を確認してください。OmniVoiceモデルカード・公式リポジトリ

開いた本、小型コンピューター、スピーカーが置かれた机
合成前にテキストと出力言語を決めます。

導入前にリポジトリ例と機材条件を確認する

モデルカードはNVIDIA GPU2向けのCUDA3別PyTorch4とApple Silicon向けの標準PyTorchを案内しています。以下はCUDA経路の例です。仮想環境5にパッケージを入れ、短い韓国語参照音声と書き起こしをref.wav、ref.txtとして用意してください。

OmniVoiceとWAV保存用パッケージを導入
python -m pip install torch==2.8.0+cu128 torchaudio==2.8.0+cu128 --extra-index-url https://download.pytorch.org/whl/cu128
python -m pip install omnivoice soundfile

韓国語文を入力して発音を確認する

以下のコードをgenerate.pyとして保存して実行すると、現在のフォルダーにkorean.wavができます。韓国語文をref.wavの声と話し方で合成します。自分の声、または使用許可を得た参照音声を使ってください。

参照音声から韓国語WAVを生成
from omnivoice import OmniVoice
import soundfile as sf
import torch

model = OmniVoice.from_pretrained("k2-fsa/OmniVoice", device_map="cuda:0", dtype=torch.float16)
with open("ref.txt", encoding="utf-8") as f:
    ref_text = f.read().strip()
audio = model.generate(text="오늘 회의는 오후 두 시에 시작합니다.", ref_audio="ref.wav", ref_text=ref_text)
sf.write("korean.wav", audio[0], 24000)
generate.pyを実行
python generate.py
マイク、ヘッドホン、音声波形を表示したモニターのある作業机
生成音声を聞き、名前と抑揚を確認します。

コードと重みのライセンスを混同しない

OmniVoiceのコードはApache 2.0、事前学習済み重みはCC-BY-NCです。CC-BY-NCは非商用条件のため、商用アプリやサービスにこの重みを同梱しないでください。コードのオープンソースライセンスだけでモデル全体を商用利用できると判断しないでください。重みのライセンスとモデルカード

実際に使う文で最終サンプルを作る

短いテストの後、公開予定の長さで音声を生成し、全体を聞いてください。数字の読みや発音に加え、BGMに混ぜる場合は音量や文間の間隔も確認します。ローカル生成でも、プライバシー、合成音声の表示、音声の権利、サービス規定は別途守る必要があります。

コードのライセンスだけを見て商用配布しないでください。事前学習済みの重みは条件が異なるため、製品に含める前に重みの利用範囲を別に確認してください。

ヘッドホン、オーディオプレーヤー、開いたノートが置かれた机
用途を決める前にコードと重みのライセンスを分けて確認します。

用語の注釈

  1. 音声合成 — テキストを発音や韻律を伴う音声信号に変換する技術です。

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

    本文に戻る
  3. CUDA — NVIDIA GPUで汎用計算を行うソフトウェア基盤です。

    本文に戻る
  4. PyTorch — AIモデルを作成・実行するソフトウェアフレームワークです。モデルと合わせて、対応するPyTorchの版やハードウェアも確認します。

    本文に戻る
  5. Python仮想環境 — プロジェクトごとにPythonパッケージを分けて導入する環境です。パッケージのバージョンの衝突を減らせます。

    本文に戻る

よくある質問

この記事で最初に確認すべきことは何ですか?
OmniVoiceは0.6Bの多言語TTSで、モデルカードは600以上の言語・方言を扱うと説明しています。コードはApache 2.0ですが、事前学習済み重みはCC-BY-NCで、商用利用は認められていません。カードの言語と発話例を確認し、実際の発音を評価してください。
選ばないほうがよいのはどのような場合ですか?
コードのライセンスだけを見て商用配布しないでください。事前学習済みの重みは条件が異なるため、製品に含める前に重みの利用範囲を別に確認してください。
条件と出典はどこで確認できますか?
OmniVoiceはK2-FSAの0.6B TTSモデルです。モデルカードは600を超える言語・方言を説明し、参照音声と書き起こしの声で文を読むzero-shot例を掲載しています。韓国語文で名前や数字の発音を確認してください。[OmniVoiceモデルカード](https://huggingface.co/k2-fsa/OmniVoice)・[公式リポジトリ](https://github.com/k2-fsa/OmniVoice)