プロジェクト一覧
OSS音声AI開発事例
KaigiAI
速い会話を理解し、文脈を踏まえて翻訳するために開発した多言語会議アシスタント。
音声
マイク・システム音声の取得
文脈
LLMを使った翻訳
併用
ローカル・クラウド推論
課題
職場の会話を理解するには、音声を認識するだけでなく、その意味に追いつく必要があります。逐語訳だけでは文脈が失われます。
業務PCではローカルLLMを十分な速度で動かせず、異なる計算環境への対応も必要でした。
デスクトップ音声処理
Rustコアが音声と推論の統合を管理し、React/TypeScriptで操作画面を構成します。
01WASAPI音声
02whisper.cpp認識
03文字起こし
04ローカル/クラウドLLM
05文脈翻訳
06SQLite履歴
- whisper.cppとllama.cppのローカルsidecarをOpenAI互換APIで接続します。
- GrokとGeminiを選択でき、実際の会議では計算能力の制約からGrokを使用しました。
- ONNXベースの話者分離は任意機能として統合していますが、精度には課題があります。
主な技術判断
01
推論先を交換可能にする
ハードウェアの制約に合わせてローカルとクラウドを選べる構成にします。
02
会話の文脈を使う
音声から得たテキストをLLMに渡し、意味を踏まえた翻訳と分析を行います。
03
実際の会議で試す
業務会議で利用し、音量の不一致と話者認識の課題を確認しました。
04
ローカル処理の選択肢を保つ
機密性の高い音声・文字起こし向けにローカル優先モードを備え、クラウド利用は選択した推論先によります。
確認できたこと
実際の業務会議で使用し、PCの計算能力が不足する場合にはクラウド翻訳を利用しました。
音量の不一致と話者認識の不完全さを確認しました。正式な精度ベンチマークや商用の大規模運用実績はありません。
OSSプロジェクト
公開範囲ソースは公開しています。会議録音、文字起こし、職場のデータは掲載していません。サーバー推論は今後の選択肢であり、本番配備済みではありません。
検討・確認事項
- →音量の処理を改善する
- →話者認識を体系的に評価する
- →低性能PC向けのサーバー推論を検討する
技術スタック
RustTauri v2ReactTypeScriptwhisper.cppllama.cppSQLiteWASAPIGrokGemini