Unity Sentisを使ってonnxでデバイスのみで動くSTTを実装する

初めに

以下のモデルを触ってみます

huggingface.co

Demo

以下のように動作します!動画内の音声は、huggingfaceに含まれているサンプル音声になります

www.youtube.com

また以下のリポジトリがデモの動作環境になります

github.com

開発環境

  • Unity 2023.3.0b2
  • Unity Sentis 1.4.0-pre.3

ライブラリの準備

まずは、Unityを立ち上げて必要なライブラリを入れます

manifest.jsonに以下を追加します

    "com.unity.sentis": "1.4.0-pre.3",

モデルの設定

以下で使用するモデル等をダウンロードします。今回は unity/sentis-whisper-tinyを使用しています

git lfs install
git clone https://huggingface.co/unity/sentis-whisper-tiny

モデルとスクリプトは以下のように配置しています

StreamingAssets

Script

スクリプトと音声の設定

サンプルの音声を使用する場合は、以下のように設定する必要があります。

  1. オーディオインスペクタで "Force Mono "を選択する
  2. "Decompress on Load "を選択する

次にスクリプトをアタッチをして、以下のように設定をします

実行

実装をすると 音声の文字起こしがされます