soniqo/speech-swift
AI speech toolkit for Apple Silicon — ASR, TTS, speech-to-speech, VAD, and diarization powered by MLX and CoreML
Speech Swift – Apple Silicon向けのデバイス内音声AI
何であるか
- MacおよびiOSデバイス上でローカルに実行される、多数の最新音声関連モデル(ASR、TTS、アライメント、翻訳、音声エージェント、強化など)をバンドルしたSwiftパッケージ。
- AppleのCore MLランタイム(Neural Engineを含む)およびオープンソースのMLXフレームワークを使用して、クラウドサービスやAPIキーなしでモデルを実行。
なぜ重要か
- すべての処理がデバイス上で行われるため、プライバシーを守り、遅延を回避し、オフラインでも動作可能。
- 非常に広範な言語対応(Omnilingual ASRでは最大1,672言語)と、シンプルな音声入力からフルデュプレックス音声対話エージェントまで、多数のタスクをサポート。
- モデルはFP16、INT8、INT5、INT4など複数の量子化形式で提供され、実行速度、メモリ使用量、品質のバランスをターゲットハードウェアに合わせて調整可能。
主な機能
| カテゴリ | 例モデル(サイズ) | 機能 |
|---|---|---|
| 音声→テキスト(ASR) | Qwen3‑ASR(0.6‑1.7 B)、Whisper‑ASR(Large‑v3 Turbo)、Omnilingual(300 M‑7 B、1,672言語) | 音声をテキストに変換。発話者分離とタイムスタンプもオプションで可能。 |
| アライメント | Qwen3‑ForcedAligner(0.6 B) | 与えられたトランスクリプトに対して単語レベルのタイムスタンプを生成。 |
| テキスト→音声(TTS) | Qwen3‑TTS(0.6‑1.7 B)、CosyVoice(0.5 B)、Kokoro(82 M) | 自然な音声を生成。ボイスクラーニングや感情タグに対応したモデルも多数。 |
| LLMおよび翻訳 | Qwen3Chat(0.8‑4 B)、FunctionGemma(270 M)、MADLAD‑400(3 B) | ローカルで言語モデルを実行。400以上の言語間で翻訳可能。 |
| 音声→音声/音声エージェント | PersonaPlex(7 B)、VoiceChat(11 B) | フルデュプレックス音声入出力エージェント。ツール呼び出し可能なLLMも実行可能。 |
| 強化・分離 | DeepFilterNet3(2.1 M)、Source‑Separation(HTDemucs/UMX)、FlashSR(音声スーパーレゾリューション) | ノイズ除去、エコー除去、楽曲の音源分離、音声のアップサンプリング。 |
| 話者切り替え検出・分離 | Wake‑word、VAD、Smart‑Turn、Speaker Diarisation | ユーザーの発話開始・終了を検出し、誰が話しているかを特定。 |
導入方法
// Package.swift で
.package(url: "https://github.com/soniqo/speech-swift", branch: "main")
必要に応じて必要なモジュールのみをインポート。例:
import ParakeetStreamingASR // ストリーミングASR
import SpeechUI // オプションのSwiftUIヘルパー
簡単なコード例 – バッファのトランスクリプト
import ParakeetStreamingASR
let model = try await ParakeetStreamingASRModel.fromPretrained()
let text = try model.transcribeAudio(audioSamples, sampleRate: 16_000)
print(text)
同じモデルはライブストリーミングにも使用可能:
for await part in model.transcribeStream(audio: samples, sampleRate: 16_000) {
print(part.isFinal ? "FINAL: \(part.text)" : "… \(part.text)")
}
わずか10行程度で、SpeechUIという小さなSwiftUIビューで音声入力UIをアプリに組み込むことができる。
エコシステムとコミュニティ
- ドキュメント – 完全なガイドは https://soniqo.audio にて(モデル固有ページ、ベンチマーク表、デプロイメントのヒント)。
- 事前学習済みモデル – Hugging Faceの
aufklarer組織下にホスト。 - ブログとDiscord – パフォーマンスのテクニック、新モデルリリースに関する定期投稿、サポート用Discordサーバー。
- Homebrew – コマンドラインツールは
brew install speechでインストール可能。 - 検証済みの下流プロジェクト – 16の公開リポジトリ(例:AnythingLLM、Voicey、DexDictate)がすでにSpeech Swiftに依存。
一般的な利用シーン
- ネットワーク通信なしで完全にデバイス上で動作する音声アシスタント。
- ジャーナリスト、ポッドキャスター、アクセシビリティツール向けのトランスクリプションアプリ。
- ポッドキャストナレーション、オーディオブック、ゲーム内のNPC音声など、音声生成用途。
- 低遅延音声→音声翻訳を伴うリアルタイムコミュニケーション。
- ノイズ抑制、エコー除去、音源分離などのオーディオ後処理。
パフォーマンス iPhone 16 Pro、Core ML環境でのベンチマークでは、ストリーミング音声入力のリアルタイム要因が最低0.04 RTF、高品質TTSで0.08 RTFまで達しており、音声の処理速度が録音速度を上回ることを意味する。
ライセンス ほとんどのモデルは許容性の高いライセンス(Apache‑2.0、MIT)または非営利研究用ライセンスで公開。Swiftパッケージ自体はMITライセンスでオープンソース。
結論 – Speech Swiftは、最新の音声AI機能をデバイス内に留めた包括的でプロダクション対応のツールボックスであり、プライバシーを最優先とするアプリに最適。高品質な音声認識、合成、翻訳、音声エージェント機能を必要とする開発者にとって理想的な選択肢である。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト