ローカルLLM×音声インターフェース構築ガイド【2026年版】——Ollama+Whisper+VOICEVOX/Piper/Style-BERT-VITS2で完全オフライン音声AIアシスタントを作る

  1. はじめに——「話しかけて答えるAI」をクラウドに頼らず作れる時代
  2. 全体アーキテクチャ——音声AIアシスタントの3層構造
  3. レイヤー①:ローカル音声認識(STT)——Whisper系エンジンの選定
    1. Whisper系モデルの現状(2026年時点)
    2. どれを選ぶべきか?——用途別の推奨
    3. faster-whisperのセットアップ手順
    4. Whisper.cppでのCPU環境セットアップ
  4. レイヤー②:LLM推論——Ollamaで「考えるAI」をローカルに
    1. Ollamaの基本セットアップ
    2. モデル選定のポイント
    3. 音声アシスタント用のシステムプロンプト設計
  5. レイヤー③:音声合成(TTS)——日本語対応エンジン徹底比較
    1. 主要4エンジンの比較
    2. 各エンジンの特性と選定基準
  6. リアルタイム化の要——VAD・ウェイクワード・ストリーミング
    1. VAD(Voice Activity Detection:音声区間検出)
    2. ウェイクワード検出
    3. ストリーミング処理——LLM出力をリアルタイムで音声化
  7. ハードウェア別動作検証と推奨スペック
  8. 中小企業向け構成テンプレート——受付・ヘルプデスク特化
    1. パターンA:最小構成(予算5万円以内)
    2. パターンB:高品質構成(予算15万円以内)
  9. 応用シナリオ——工場ハンズフリー・多言語接客・高齢者サポート
    1. 工場でのハンズフリー作業指示
    2. 店舗での多言語接客
    3. 高齢者向け音声ヘルプデスク
  10. セキュリティとプライバシーの考慮事項
  11. よくある質問(Q&A)
    1. Q1. 音声認識の精度は実用レベル?
    2. Q2. GPUなしでも使える?
    3. Q3. 日本語の音声合成で一番自然なのはどれ?
    4. Q4. クラウド型の音声AIサービスとの違いは?
    5. Q5. 既存のローカルLLM環境に音声機能を追加できる?
  12. まとめ——「声で動くAI」はもう手の届くところにある
  13. 関連記事

はじめに——「話しかけて答えるAI」をクラウドに頼らず作れる時代

「工場で手が汚れたまま作業手順を確認したい」「受付にAIヘルプデスクを置きたいが、お客様の音声データを社外に出すわけにはいかない」——こうした現場の声は、2026年に入ってさらに増えています。

AI音声エージェントの選択肢は広がっていますが、Bland AI・Vapi・Retellなどのクラウドサービスでは、音声データが外部サーバーに送信されることが前提です。個人情報保護法やISMS対応が求められる企業、あるいは通信環境が不安定な工場・倉庫では、クラウド依存は大きなリスク要因になります。

本記事では、「音声入力→LLM推論→音声出力」のすべてをローカル環境で完結させる音声AIアシスタントの構築手順を、中小企業のIT担当者が再現できるレベルで解説します。使うのは、Whisper(音声認識)、Ollama(LLM推論)、VOICEVOX/Piper/Style-BERT-VITS2(音声合成)——いずれもオープンソースで、ライセンス費用ゼロから始められるツールです。

この記事で得られること
・Whisper.cpp / faster-whisperによるローカル音声認識の構築と日本語精度の比較
・Ollama上でのLLM推論パイプラインの接続方法
・日本語音声合成エンジン3種(VOICEVOX・Piper・Style-BERT-VITS2)の特性比較と選定基準
・リアルタイム応答のためのVAD・ウェイクワード・ストリーミング構成
・Raspberry Pi / Mac mini / NVIDIA Jetsonでの動作検証と推奨スペック
・中小企業向け「受付・ヘルプデスク特化」構成テンプレート


全体アーキテクチャ——音声AIアシスタントの3層構造

ローカル完結型の音声AIアシスタントは、大きく3つのレイヤーで構成されます。

レイヤー役割主要ツール
① 音声認識(STT)マイク入力→テキスト変換Whisper.cpp / faster-whisper / kotoba-whisper
② LLM推論テキスト入力→回答生成Ollama(Llama 3.1 / Gemma 2 / Phi-3 等)
③ 音声合成(TTS)テキスト→音声出力VOICEVOX / Piper / Style-BERT-VITS2 / AivisSpeech

これに加えて、実用化のためにはVAD(音声区間検出)によるノイズ除去、ウェイクワード検出(「ねえアシスタント」のような起動ワード)、そしてストリーミング処理による応答遅延の短縮が必要です。

全体のデータフローは以下の通りです。

マイク入力
 ↓ VAD(音声区間検出)
 ↓ ウェイクワード判定
Whisper(音声認識・STT)
 ↓ テキスト
Ollama(LLM推論)
 ↓ 回答テキスト(ストリーミング)
VOICEVOX / Piper / Style-BERT-VITS2(音声合成・TTS)
 ↓
スピーカー出力

重要なのは、このパイプライン全体がインターネット接続なしで動作する点です。一度モデルをダウンロードしてしまえば、完全オフラインで運用できます。


レイヤー①:ローカル音声認識(STT)——Whisper系エンジンの選定

Whisper系モデルの現状(2026年時点)

OpenAIが開発したWhisperは、2026年現在も日本語音声認識においてほぼ唯一の実用的なオープンソース選択肢です。ただし、オリジナルのWhisperをそのまま使うケースは減っており、高速化・軽量化された派生版の利用が主流になっています。

主要な選択肢は以下の3つです。

エンジン特徴推奨環境日本語精度
Whisper.cppC++実装。CPU動作に最適化。GGUF量子化対応でメモリ効率が高い。FFmpeg不要CPU環境(Raspberry Pi含む)mediumモデルのq5量子化で90%以上
faster-whisperCTranslate2ベース。オリジナル比最大4倍高速・省メモリ。Python APIGPU環境(CUDA対応)large-v3で最高精度
kotoba-whisperWhisper large-v3を蒸留した日本語特化モデル。ReazonSpeechで訓練。約6.3倍高速GPU環境日本語特化だが汎用モデルを下回る場合あり

どれを選ぶべきか?——用途別の推奨

用途別の選定ガイドライン

CPUのみ(Raspberry Pi・Mac mini等):Whisper.cpp(mediumモデル q5量子化)を推奨。4コアCPUでも2秒以内で処理完了。

NVIDIA GPU搭載PC:faster-whisper(large-v3モデル)を推奨。VRAM 10GB以上で最高精度。RTX 3060 12GBが最もコスパが良い。

リアルタイム会話用途:faster-whisper(large-v3-turbo)を推奨。デコーダ層を32→4に削減した高速版で、VRAM約6GBで動作。精度と速度のバランスが最良。

faster-whisperのセットアップ手順

GPU環境での推奨構成であるfaster-whisperの基本的なセットアップは以下の通りです。

# 仮想環境の作成と有効化
python -m venv whisper-env
source whisper-env/bin/activate

# faster-whisperのインストール
pip install faster-whisper

# 基本的な音声認識スクリプト
from faster_whisper import WhisperModel

model = WhisperModel("large-v3", device="cuda", compute_type="float16")

segments, info = model.transcribe("audio.wav", language="ja",
                                   beam_size=5,
                                   vad_filter=True)

for segment in segments:
    print(f"[{segment.start:.2f}s -> {segment.end:.2f}s] {segment.text}")

ポイントはvad_filter=Trueの指定です。これにより、無音区間を自動的にスキップし、認識精度と処理速度の両方が向上します。

Whisper.cppでのCPU環境セットアップ

Raspberry PiやGPU非搭載のPCで使う場合は、Whisper.cppが適しています。

# ソースコードの取得とビルド
git clone https://github.com/ggerganov/whisper.cpp
cd whisper.cpp
make

# 量子化済みモデルのダウンロード(medium q5_0)
bash ./models/download-ggml-model.sh medium

# 音声ファイルの認識(16kHz WAV形式)
./main -m models/ggml-medium.bin -l ja -f audio.wav

Whisper.cppは16kHz・モノラル・float32のPCMデータを要求します。入力音声のフォーマットが異なる場合は、FFmpegで事前に変換してください。


レイヤー②:LLM推論——Ollamaで「考えるAI」をローカルに

音声認識でテキストに変換されたユーザーの発話を受け取り、適切な応答を生成するのがLLM推論レイヤーです。ここではローカルLLM構築の定番ツールであるOllamaを使います。

Ollamaの基本セットアップ

# Ollamaのインストール(Linux/macOS)
curl -fsSL https://ollama.com/install.sh | sh

# 日本語対応モデルの取得
ollama pull llama3.1:8b
# または軽量モデル
ollama pull phi3:mini
# または日本語に強いモデル
ollama pull gemma2:9b

モデル選定のポイント

音声AIアシスタントでは、応答速度が体感品質を大きく左右します。ユーザーが質問してから回答音声が流れ始めるまでの時間(ファーストトークンレイテンシー)が2秒を超えると、「待たされている」感覚が強くなります。

モデルパラメータ数VRAM目安日本語品質応答速度
Llama 3.1 8B80億約6GB(Q4量子化)
Gemma 2 9B90億約7GB(Q4量子化)
Phi-3 Mini38億約3GB
Qwen2.5 7B72億約5GB(Q4量子化)

中小企業の受付・ヘルプデスク用途であれば、Gemma 2 9BまたはQwen2.5 7BのQ4量子化が日本語品質と速度のバランスで最適です。モデル選定の詳細はこちらの記事で解説しています。また、VRAM不足に悩む場合は量子化・VRAM最適化の記事も参考にしてください。

音声アシスタント用のシステムプロンプト設計

音声AIアシスタントのLLMには、通常のチャットボットとは異なるシステムプロンプト設計が必要です。

system_prompt = """あなたは受付用の音声AIアシスタントです。以下のルールに従ってください:

1. 回答は2〜3文で簡潔にまとめてください(音声で読み上げられることを前提)
2. 箇条書きは使わず、話し言葉で回答してください
3. 質問の内容が曖昧な場合は、1つだけ確認の質問をしてください
4. 対応できない質問には「担当者におつなぎしますね」と回答してください
5. 敬語を使い、明るく親しみやすい口調で応答してください"""

ポイントは、「音声で読み上げられること」を前提にした回答長と口調の指定です。テキストチャット向けの長文回答は音声出力には不適切です。

さらに、業務固有の知識を持たせたい場合は、RAG(検索拡張生成)との統合が有効です。社内マニュアルやFAQをベクトルデータベースに格納し、質問に関連する情報を検索してLLMに渡すことで、正確な業務回答が可能になります。


レイヤー③:音声合成(TTS)——日本語対応エンジン徹底比較

LLMが生成した回答テキストを音声に変換するのが音声合成レイヤーです。日本語対応のローカルTTSエンジンは、2026年時点で大きく4つの選択肢があります。

主要4エンジンの比較

エンジン日本語品質感情表現速度導入難易度GPU必要性ライセンス
VOICEVOX○(プリセット)簡単不要(CPU可)無料(クレジット表記必須)
Piper○(英語が主)◎(超高速)簡単不要(CPU可)MIT License
Style-BERT-VITS2◎◎◎(細粒度制御)やや難学習時は必要AGPL v3
AivisSpeech◎◎普通推奨無料(利用規約あり)

各エンジンの特性と選定基準

VOICEVOXは、導入の手軽さと安定性で群を抜いています。専用エディタをインストールするだけで使え、APIサーバーもワンクリックで起動できます。40種類以上の話者キャラクターが用意されており、受付用途には「四国めたん」や「ずんだもん」など親しみやすい声が選べます。商用利用も可能ですが、クレジット表記が必要です。

# VOICEVOX APIでの音声合成(エンジン起動後)
import requests
import json

text = "いらっしゃいませ。ご用件をお聞かせください。"
speaker_id = 3  # ずんだもん

# 音声合成クエリの生成
query = requests.post(
    "http://localhost:50021/audio_query",
    params={"text": text, "speaker": speaker_id}
).json()

# 音声データの生成
audio = requests.post(
    "http://localhost:50021/synthesis",
    params={"speaker": speaker_id},
    headers={"Content-Type": "application/json"},
    data=json.dumps(query)
)

with open("output.wav", "wb") as f:
    f.write(audio.content)

Piperは、Raspberry Piのような超低スペック環境でもリアルタイム動作が可能な軽量エンジンです。ただし、日本語の音声モデルは英語に比べてバリエーションが少なく、感情表現も限定的です。多言語対応が必要な店舗接客(日本語+英語)では有力な選択肢になります。

Style-BERT-VITS2は、感情表現の制御が圧倒的に細かいエンジンです。「元気度50%・落ち着き50%」のように複数スタイルをブレンドしたり、感情の強弱を数値で指定できます。自社の声を学習させてオリジナル音声モデルを作ることも可能です。ただし、導入にはPythonとGPU環境のセットアップが必要で、技術的なハードルはやや高めです。

AivisSpeechは、Style-BERT-VITS2のモデルアーキテクチャを採用しつつ、VOICEVOXライクなUIを提供するソフトウェアです。Style-BERT-VITS2の高品質な音声合成を、より簡単に導入できるのが強みです。

用途別おすすめTTSエンジン

社内ヘルプデスク・受付:VOICEVOX(導入の手軽さ+安定性重視)
工場ハンズフリー:Piper(超低スペック対応+低レイテンシー)
店舗接客・高品質音声:Style-BERT-VITS2 または AivisSpeech(自然な感情表現)
多言語対応(日英):Piper(多言語モデル対応)


リアルタイム化の要——VAD・ウェイクワード・ストリーミング

ここまでのSTT→LLM→TTSのパイプラインを単純につなぐだけでは、実用的な音声AIにはなりません。「話しかけたらすぐ反応する」体験を実現するには、3つの技術が不可欠です。

VAD(Voice Activity Detection:音声区間検出)

VADは、マイク入力から「人間が話している区間」だけを切り出す技術です。常時録音状態からノイズや無音を除去し、発話の開始と終了を正確に判定します。

代表的なVADツールは以下の通りです。

ツール特徴推奨用途
Silero VADPyTorchベース。軽量で高精度。CPU動作可。faster-whisperに統合済み汎用(最推奨)
WebRTC VADGoogle開発。超軽量だが精度はやや劣るRaspberry Pi等の超低スペック環境
Energy-based VAD音量閾値ベース。最もシンプルだがノイズに弱い静かな室内環境のみ

ウェイクワード検出

「OK Google」「Alexa」のように、特定の言葉で起動する仕組みです。ローカルで動作するウェイクワード検出ライブラリとしては、OpenWakeWordPorcupine(Picovoice社、無料枠あり)が使えます。

# OpenWakeWordによるウェイクワード検出の例
from openwakeword import Model

model = Model(wakeword_models=["hey_assistant"])

# マイク入力のストリーミング処理
while True:
    audio_chunk = get_audio_chunk()  # マイクからの音声チャンク
    prediction = model.predict(audio_chunk)

    if prediction["hey_assistant"] > 0.5:
        print("ウェイクワード検出!音声認識を開始します")
        start_listening()

ストリーミング処理——LLM出力をリアルタイムで音声化

応答遅延を最小化する最大のポイントは、LLMの出力を文単位でストリーミングし、文が完成するたびにTTSへ送ることです。LLMが全文を生成し終わるのを待ってからTTSを呼ぶと、体感遅延は数秒〜十数秒になります。

# ストリーミング処理の概念コード
import ollama

def stream_response(user_text):
    buffer = ""
    for chunk in ollama.chat(
        model="gemma2:9b",
        messages=[{"role": "user", "content": user_text}],
        stream=True
    ):
        token = chunk["message"]["content"]
        buffer += token

        # 文末記号で区切ってTTSに送信
        if token in ["。", "!", "?", "\n"]:
            synthesize_and_play(buffer)  # TTSで音声化&再生
            buffer = ""

このストリーミング方式により、ユーザーが質問してから最初の音声が流れ始めるまでの時間を1〜2秒程度に短縮できます。

WebSocketやgRPCを使ったリアルタイム通信構成については、ローカルLLMのFunction Calling記事で解説しているAPI設計パターンが応用できます。


ハードウェア別動作検証と推奨スペック

ローカル音声AIアシスタントは、用途に応じてさまざまなハードウェアで動作します。以下は実機テストに基づく推奨構成です。

ハードウェア価格帯STTLLMTTS想定用途体感遅延
Raspberry Pi 5(8GB)約1.5万円Whisper.cpp(tiny/base)Phi-3 Mini(Q4)Piper簡易ヘルプデスク5〜10秒
Mac mini(M2/M4)約10万円〜Whisper.cpp(medium)Llama 3.1 8BVOICEVOX受付・店舗接客2〜4秒
NVIDIA Jetson Orin Nano約5万円faster-whisper(small)Gemma 2 2BPiper工場ハンズフリー3〜5秒
デスクトップPC(RTX 3060 12GB)約12万円〜faster-whisper(large-v3)Gemma 2 9B(Q4)VOICEVOX / Style-BERT-VITS2高品質ヘルプデスク1〜2秒
デスクトップPC(RTX 4060 Ti 16GB)約18万円〜faster-whisper(large-v3)Qwen2.5 14B(Q4)AivisSpeech全用途対応1〜2秒

コスパ最強構成:RTX 3060 12GB搭載PC
2026年になっても「3万円台〜で手に入るVRAM 12GB」というコストパフォーマンスを超える新品GPUは登場していません。Whisper large-v3(VRAM約10GB)を快適に動かせる最安の選択肢であり、音声AIアシスタントの「専用機」として最適です。Whisperだけでなく、7B〜9BクラスのLLMを同時に動かしたい場合は、RTX 4060 Ti 16GB版への投資を検討してください。


中小企業向け構成テンプレート——受付・ヘルプデスク特化

ここでは、中小企業の受付やITヘルプデスクに特化したすぐに使える構成テンプレートを2パターン紹介します。

パターンA:最小構成(予算5万円以内)

項目選択
ハードウェアMac mini(M2、中古)or Raspberry Pi 5
音声認識Whisper.cpp(medium q5量子化)
LLMOllama + Phi-3 Mini or Llama 3.1 8B(Q4)
音声合成VOICEVOX(四国めたん or ずんだもん)
マイク・スピーカーUSB会議用スピーカーフォン(eMeet等、約5,000円)
想定応答時間3〜5秒

パターンB:高品質構成(予算15万円以内)

項目選択
ハードウェアデスクトップPC + RTX 3060 12GB
音声認識faster-whisper(large-v3-turbo)
LLMOllama + Gemma 2 9B(Q4量子化)
音声合成AivisSpeech or Style-BERT-VITS2
マイク・スピーカー指向性マイク + アンプ付きスピーカー
追加機能RAG(社内FAQ検索)、ウェイクワード検出
想定応答時間1〜2秒

業務固有の知識(よくある質問、社内手順など)をLLMに持たせるには、RAG統合が最も効果的です。さらに、外部システム連携(予約確認、在庫照会など)が必要な場合は、Function CallingMCP連携を組み合わせることで、「話しかけるだけで予約を確認してくれるAI受付」のような高度なシステムも構築可能です。

複数の端末で同じLLMサーバーを共有する構成については、ローカルLLMのチーム共有の記事で解説しています。


応用シナリオ——工場ハンズフリー・多言語接客・高齢者サポート

工場でのハンズフリー作業指示

手が汚れた状態や両手がふさがった状態で、音声だけで作業手順を確認できるシステムです。NVIDIA Jetson Orin Nanoのような小型デバイスにWhisper.cpp + Ollama + Piperを載せ、防塵マイクとBluetoothスピーカーを接続します。RAGで作業マニュアルを検索させることで、「この部品の締め付けトルクを教えて」「次の工程は?」といった質問にリアルタイムで回答できます。

店舗での多言語接客

Whisperの多言語認識能力を活かし、日本語と英語の両方に対応する接客AIです。Whisperは言語を自動検出できるため、お客様が英語で話しかければ英語で、日本語なら日本語で応答するシステムが構築できます。TTSはPiper(英語・日本語の両方のモデルを用意)が多言語対応に適しています。

高齢者向け音声ヘルプデスク

スマートフォンやPCの操作が苦手な高齢者に対し、音声だけでITサポートを提供するシステムです。「パスワードを忘れた」「印刷できない」といった定型的な問い合わせに対し、ステップバイステップの手順を音声で案内します。VOICEVOXの聞き取りやすい発音と、LLMのシステムプロンプトによる丁寧な口調設定が鍵になります。


セキュリティとプライバシーの考慮事項

ローカル完結型の最大のメリットはデータが外部に出ないことですが、それでもいくつかの注意点があります。

音声データの取り扱いとして、録音した音声データは認識後に即座に削除するのが基本です。保存する場合は暗号化し、保存期間を定めてください。

LLMへの入力内容の管理も重要です。Ollamaはデフォルトで会話ログを保存しません。ただし、RAG用のベクトルデータベースに機密情報を含める場合は、アクセス制御を設定してください。

ネットワーク分離について、完全オフライン運用の場合は、そもそもネットワークから切断した状態で運用できるため、外部からの攻撃リスクは極めて低くなります。モデルのアップデート時のみネットワークに接続する運用を推奨します。


よくある質問(Q&A)

Q1. 音声認識の精度は実用レベル?

静かな室内環境であれば、faster-whisper(large-v3)の日本語認識精度は十分に実用レベルです。工場などのノイズが多い環境では、指向性マイクの使用とVADの適切な設定が精度向上の鍵になります。固有名詞(社名、製品名など)の認識精度が低い場合は、Whisperのinitial_promptパラメータに頻出する固有名詞を列挙することで改善できます。

Q2. GPUなしでも使える?

はい。Whisper.cpp(CPUモード)+ Ollama(Phi-3 Mini)+ Piper or VOICEVOXの組み合わせなら、GPU非搭載のPCやRaspberry Piでも動作します。ただし、応答速度はGPU搭載環境に比べて遅くなります(5〜10秒程度)。

Q3. 日本語の音声合成で一番自然なのはどれ?

2026年時点では、Style-BERT-VITS2またはAivisSpeechが日本語の自然さでトップです。特に感情表現の豊かさと抑揚の自然さでは、VOICEVOXやPiperを大きく上回ります。ただし、導入の手軽さではVOICEVOXが圧倒的に優れています。まずVOICEVOXで動くプロトタイプを作り、品質に不満が出た段階でStyle-BERT-VITS2やAivisSpeechに移行するのが実践的なアプローチです。

Q4. クラウド型の音声AIサービスとの違いは?

最大の違いはデータの所在です。クラウド型は音声データが外部サーバーに送信されるため、個人情報や機密情報を扱う場面では利用が制限されます。ローカル型はすべてのデータが社内に留まるため、プライバシーとセキュリティの観点で優れています。一方、クラウド型は常に最新のモデルが使える、スケーラビリティが高い、初期構築コストが低いといったメリットがあります。詳しくはAI音声エージェントの記事を参照してください。

Q5. 既存のローカルLLM環境に音声機能を追加できる?

はい。すでにOllamaでローカルLLM環境を構築済みであれば、音声認識(Whisper系)と音声合成(VOICEVOX等)を追加するだけで音声AIアシスタントに拡張できます。エージェント構築の記事で解説しているフレームワーク(LangGraph等)を組み合わせれば、より高度なワークフロー(マルチターン対話、外部システム連携)も実現可能です。


まとめ——「声で動くAI」はもう手の届くところにある

ローカル完結型の音声AIアシスタントは、2026年現在、もはや大企業やAI専門家だけのものではありません。Whisper・Ollama・VOICEVOXという3つのオープンソースツールを組み合わせれば、ライセンス費用ゼロ、ハードウェア投資5万円以内で「話しかけて答えるAI」を構築できます。

本記事のポイントを整理します。

1. 音声認識はWhisper系一択。CPU環境ならWhisper.cpp、GPU環境ならfaster-whisperを選びましょう。日本語精度は実用レベルに達しています。

2. LLM推論はOllamaが最も手軽。音声アシスタント用途では応答速度が重要なため、7B〜9Bクラスの量子化モデルが最適です。

3. 音声合成は用途で選ぶ。導入の手軽さならVOICEVOX、超低スペック対応ならPiper、高品質ならStyle-BERT-VITS2/AivisSpeechです。

4. 実用化のカギはストリーミング処理。LLM出力を文単位でTTSに送ることで、体感遅延を1〜2秒に短縮できます。

まずは「パターンA:最小構成」で動くプロトタイプを作り、現場で試してみてください。音声AIの価値は、実際に使ってみて初めて実感できます。


関連記事

免責事項: 本記事は2026年4月時点の公開情報に基づく技術解説であり、各ツールの最新バージョンや仕様変更により手順が異なる場合があります。商用利用の際は、各ツールの最新の利用規約・ライセンスを必ずご確認ください。

コメント

タイトルとURLをコピーしました