AIによる自動文字起こしサービスの比較
ジマクルではAI文字起こしエンジンに Groqを利用しています。
Groqは、主にAI推論を高速化する独自のプロセッサであるLPU(Language Processing Unit)を開発している企業です。
ジマクルの開発にあたり、Groq(wisper-large-v3)、Google Cloud(Speech-To-Text V2)、AWS Transcribeの3つのサービスを用いて動画の音声文字起こしを行い結果を比較しました。
尚、PowerCMS Xでは、VideoCaptionsプラグインによって、ジマクルとほぼ同等の文字起こし機能が提供されており、設定(環境変数)によってどのエンジンを利用するかを切り替えることができます。
長尺の動画の速度比較
第28回手塚治虫文化賞 贈呈式(フルバージョン)
- Groq : 72秒
- Google Cloud : 969秒
- AWS Transcribe : 301秒
※ Groq以外は非同期処理、Groqは容量制限があるため分割処理
※ 非同期のものについては一定時間 sleepしているため参考値
速度および文字起こし精度(固有名詞などの読み方間違いやフィラーなどを除く)、分割数の比較
朝日賞・大佛次郎賞・大佛次郎論壇賞・大岡信賞贈呈式(冒頭の4分21秒)
所要時間
- Groq : 24秒
- Google Cloud : 57秒
- AWS Transcribe : 43秒
誤認識箇所
- Groq 9箇所
- Google Cloud 14箇所(+抜け4箇所)
- AWS 16箇所
分割数
- Groq 27分割
- Google Cloud : 17分割
- AWS Transcribe : 14分割
所感
上に挙げた動画以外のものも何点か文字起こしを試した上での感想です。
速度
Groq(wisper-large-v3)が圧倒的に速い。Google Cloud(Speech-To-Text V2)が特に長尺の動画での待ち時間が長い(動画の長さの30%程度かかることもある)。ついで、AWSが遅い。
APIの使いやすさ
APIとしてはGroq(Open AI互換)が最もシンプルだが、19.5MBサイズ制限があるため分割処理を挟む必要がある。分割はFFmpegを用いて無音部分での分割を行ないました。 Google Cloud(Speech-To-Text V2)と AWS Transcribeは一度ストレージに上げないと処理が行えないため、翻訳とは別のエンドポイントに別の形式でリクエストを投げる必要がある分 ストレージへのアップロード、変換、待機、ファイル削除といった手順を踏まないといけない分煩雑に感じます。
Groq以外の非同期処理で、進捗(%)を返してくれるのは Google Cloudのみ。進捗が取得できると画面にプログレスバーなどでフィードバックを返せるので、あると嬉しい。
文字起こしの精度
どのような音声によるかによって、得手、不得手があるようだが概ね以下のような感想です。
- Groq(wisper-large-v3) : 誤認識が少なく正確だがハルシネーションが生じるケースがままあるのと、「Thank You!」「ご視聴ありがとうございました」などの定型文が突如現れることがある。
- Google Cloud(Speech-To-Text V2)ではある時間帯がゴソっと抜けてしまうようなことがあった。
- AWS Transcribeは精度はやや劣るが大きな誤りがない印象。
機能面
- AWS Transcribeは句読点付き、Groq(wisper-large-v3)、Google Cloud(Speech-To-Text V2)は句読点が付かない。
- Groqと AWS Transcribe は言語の自動検出が可能。Google Cloud(Speech-To-Text V2)は言語を APIに指定する必要がある。
分割数
- 動画の字幕として利用するには分割数が多く、1シーンあたりの文字数が少ない方が望ましい。
- その点では、1つめの動画の AWSの「6分割」とかだと画面が字幕で埋め尽くされるほどの文字量となり、そのままは使えない。
- 1シーン単位の文字数が安定して少ないのは Groq(wisper-large-v3)。
