Dia TTS:文章を読むだけでなく、本物の対話を生成するオープンソースモデル
テキストと録音を、聴ける作品に
ナレーション、ステム分離、カバー、効果音を、ブラウザだけで。
- テキスト読み上げも、ボイスクローンも
- 音軌を分離するか、カバーを生成
- 登録して試聴。聴いてから決められる
多くのテキスト読み上げエンジンは、1つの文章を音読するために作られています。Dia TTS が目指すのは、もっと難しいことです。普通の台本から、2人の話者、重なり合う感情、絶妙なタイミングの笑い声まで含む会話全体を、一度の生成で作り出します。ポッドキャストやオーディオブック、ゲームキャラクターを制作している方、あるいはナレーターが台本を読むのではなく、人が会話しているように聞こえる AI エージェントを必要としている方に向けたモデルです。
Dia TTS(Dia 1.6B)とは?
Dia は Dia-1.6B、Dia 1.6B とも呼ばれる、16億パラメータのテキスト読み上げモデルです。韓国の小規模チーム Nari Labs が開発しており、2人の大学生開発者によって設立されました。Apache 2.0 ライセンスで公開されているため、重みは完全にオープンです。チェックポイントは Hugging Face に、推論コードは GitHub に公開されています。
Dia が従来の TTS アーキテクチャと異なるのは、パラメータ数だけではありません。訓練の目的そのものが違います。きれいに分離された文章のナレーションを最適化するのではなく、対話合成のためにエンドツーエンドで設計されています。複数の話者、自然なターンテイキング、そして実際の会話に含まれる非言語的な質感を扱えます。コミュニティによる初期の比較では、ElevenLabs や Sesame CSM-1B のようなクローズドな商用システムに対する有力なオープンソースの選択肢と評価されています。特に対話が中心の用途では、これらのモデルがまだ「話している」よりも「読んでいる」ように聞こえることがあるためです。
単一話者のナレーションモデルを転用したものではなく、対話そのものを中心に構築されたオープンウェイトのシステムは、今でも数えるほどしかありません。Dia はその1つです。
Dia はどのように動作しますか?
Dia はプレーンテキストの台本を受け取り、完成した音声波形へ直接変換します。話者ごとの音声を別々にクローンする工程も、クリップを手作業でつなぎ合わせる作業も必要ありません。出力を支える仕組みは主に3つあります。
話者タグ。 セリフを [S1] と [S2] のタグで囲むと、各行をどの声で話すかをモデルに伝えられます。Dia は台本全体でタグごとの声質を一貫して保つため、単一話者のクリップをつなぎ合わせた場合に起こりがちな声の同一性の揺れを抑えられます。
非言語音声の生成。 これは Dia の最も特徴的な機能です。(laughs) のような行内の指示は、実際の笑い声や咳、咳払いとしてレンダリングされます。生成後に合成した「ハハ」という音を追加するのではありません。この細部が、生成された会話を「2つの台本を読み上げたもの」ではなく、「2人が話しているもの」に聞こえさせます。
音声コンディショニング。 テキストと一緒に短い参照音声を渡すと、出力の感情、テンポ、話し方を誘導できます。特定の声をクローンして、プロジェクト全体で一貫して使うことも可能です。参照音声がない場合、Dia は実行するたびに異なる声をランダムに生成します。乱数シードを固定するか音声プロンプトを渡せば、再現性のある一貫した話者を得られます。
Dia TTS の使い方
モデルを試してみたいのか、実際に開発へ使いたいのかに応じて、次の3つのステップで進められます。
- まずはオンラインで似た対話機能を試す。 Text to Dialogue では、Dia をローカルにセットアップする前に、1つのシーンで複数の声を使うという考え方を試せます。これは比較可能な代替ツールであり、Dia そのものではありません。また、Dia 専用の
[S1]/[S2]構文を実行するものでもありません。 - 本番用途では Dia をローカルで実行する。 GitHub から
nari-labs/diaリポジトリをクローンし、Python の仮想環境を作成して、記載されている依存関係をインストールします。初回実行時にモデルの重みは Hugging Face から自動的にダウンロードされます。Hugging Face Transformers ライブラリから Dia を直接読み込むこともできます。 - 先にハードウェアを確認する。 Dia は、およそ 8~10 GB の VRAM を搭載した1枚の GPU で無理なく動作します。コンシューマー向け GPU や Colab T4 のようなクラウドインスタンスで、量子化の工夫をしなくても推論できます。
より良い結果を得るためのヒント
- 話者タグを一貫させる。 スクリプト全体で同じ
[S1]/[S2]の付け方を使ってください。途中で表記を混ぜると、ターンの割り当てが混乱します。 - 非言語指示は自然な位置に置く。 オチの直後に置く
(laughs)と、文の途中に置くものでは結果が異なります。これらのタグは装飾ではなく、演出の指示として扱いましょう。 - 声を再現するにはシードを固定する。 繰り返し登場するゲームの NPC など、複数回の生成で同じキャラクターの声が必要な場合は、乱数シードを固定するか同じ音声プロンプトを再利用してください。
- 英語のみという制限を忘れない。 現時点で Dia が生成できるのは英語のみです。生成してから気づくのではなく、多言語プロジェクトの計画段階でこの制限を考慮してください。
- クローンには短くクリアな参照音声を使う。 参照サンプルが明瞭で、背景ノイズがないほど、音声コンディショニングの品質は高くなります。
Dia と他の TTS モデルの比較
| Dia 1.6B | ElevenLabs | Sesame CSM-1B | |
|---|---|---|---|
| ライセンス | オープンウェイト(Apache 2.0) | クローズドな商用 API | オープンウェイト |
| 一度の生成で複数話者の対話 | 対応、ネイティブ機能 | 行ごとに別の声を割り当てる必要あり | 限定的 |
| 非言語音声(笑い声、咳) | テキストタグからネイティブに生成 | 通常は手作業の音声編集が必要 | 中心的な機能ではない |
| ボイスクローン | 対応、音声コンディショニング | 対応 | 対応 |
| セルフホスティング | 対応、完全なローカル展開 | 不可 | 対応 |
| 対応言語 | 英語のみ | 多言語 | 英語中心 |
Dia の強みは、対話で重要になる部分に集中しています。ターンテイキングと非言語表現のリアリティです。複数言語での単一話者ナレーションが目的なら、商用の多言語 API のほうが適している場合もあります。一方、英語の複数キャラクター音声では、このパラメータ規模で Dia のオープンソース対話特化に匹敵するものは多くありません。
よくある質問
Dia TTS は無料で使えますか?
はい。Dia は Apache 2.0 ライセンスで公開されています。ライセンス条件に従う限り、モデルの重みとコードを無料で使用、改変、セルフホストでき、商用プロジェクトにも利用できます。
Dia 1.6B は英語以外の言語に対応していますか?
現時点では対応していません。Dia が生成するのは英語音声のみで、英語以外のスクリプトは公式にはサポートされていません。
Dia 1.6B をローカルで動かすには、どのようなハードウェアが必要ですか?
推論には約 8~10 GB の VRAM を持つ GPU があれば十分です。コンシューマー向け GPU 1枚でも、クラウドの T4 インスタンスでも、追加の最適化なしで動作します。
Dia 1.6B の GitHub リポジトリはどこにありますか?
公式コードとセットアップ手順は GitHub の nari-labs/dia で管理されています。モデルの重みは Hugging Face に別途ホストされています。
Dia で特定の声をクローンできますか?
はい。参照音声を音声コンディショニング用のプロンプトとして渡すと、Dia はデフォルトのランダム音声生成に加えて、目標の声と感情的なトーンに合わせることができます。
似た対話機能を試す
ブラウザで複数話者の音声を聞いてみたい場合は、比較可能な代替手段として Text to Dialogue を試してください。Dia TTS そのものではありませんが、Dia をローカルにセットアップする前に、2人の会話シーンをプロトタイプできます。