ガイド

ローカルLLMとチャットボットの音声読み上げ

Ollama、llama.cpp、LM Studio で自分のPC上に動かす言語モデルなら、会話はプライベートなままです。その返答をクラウドの音声サービスに送ってしまっては意味がありません。声もローカルであるべきです。

SuperClonica エンジンは、ふつうのCPUや NVIDIA のグラフィックカードでオフラインに読み上げ、Python からも小さな HTTP サービスとしても使えます。このガイドでは、ローカルモデルとのつなぎ方、待ち時間を短くするコツ、声に出して聞きやすい返答の作り方を紹介します。

ローカル音声アシスタントの組み立て方

どの部分も個別に入れ替えられます。別のモデル、別の声、同じ流れ。

  • 任意の音声認識(たとえばローカルの Whisper モデル)で、あなたの声をテキストに。
  • 言語モデルがローカルで返答を書く。
  • SuperClonica が返答を音声に。これもローカルです。
  • 何もPCの外に出ず、文字数やリクエストごとの料金もありません。

声を無料で聴いてみる

コードを書く前に、声のページで30〜100文字の典型的な返答を入力し、言語を選んで生成ボタンを押しましょう。数秒でアシスタントがどう聞こえるかわかります。アカウントは不要です。

文ができたらすぐ話す

私たちの計測では、短いフレーズの中央値は RTX 5070 Ti で 0.12 秒、4スレッドのデスクトップ Ryzen で 0.43 秒でした。

  • エンジンを一度インストール:python -m pip install superclonica-cpu、NVIDIA のグラフィックカードなら superclonica-gpu-cuda。
  • エンジンは一度だけ作って使い回す:tts = Superclonica()。読み込みは数秒、その後は1フレーズ1秒未満です。
  • モデルが返答をストリーミングする間に、文の終わりで区切って1文ずつ読み上げ:audio, rate = tts.synthesize(sentence, voice="F1", lang="ja")。
  • 次の文を生成している間に、sounddevice などの音声ライブラリーで再生するか、ファイルに保存して再生します。

声に出して聞きやすい返答

モデルは Markdown で答えがちです。アスタリスク、箇条書き、表、コードは読み上げると不自然です。システムプロンプトで「箇条書きや書式なしの、短く平易な話し言葉で答えて」と頼み、残ったものは読み上げ前に取り除きましょう。エンジンはほとんどの言語で数字を単語として読み、絵文字や不明な記号は自動で取り除きます。Python 以外のプログラムなら、エンジンをローカルの HTTP サービスとして動かし(docker run -d -p 8000:8000 -v superclonica-models:/models superclonica/superclonica:cpu)、各文を POST /synthesize に送ります。OpenAI 互換の音声エンドポイントを前提とするツールには、小さなアダプターが必要です。

声の選び方

モデル標準の10音声 M1〜M5、F1〜F5 は無料エンジンに付属し、追加ファイル不要です。個性のある自分用アシスタントなら、ジャーヴィスの声などカタログから選び、まず典型的な返答で試しましょう。自分の声や、同意を得た家族の声なら、NVIDIA のグラフィックカードを積んだPCでスタジオで学習するか、取引所で注文します。どの声も Supertonic 3 の31言語を話します。中国語はまだ対応していません。