ChatGPT+Whisperで音声ファイルから文字起こしをする

こんにちは!今回はOpenAIのGPT-4アーキテクチャを利用したChatGPTと音声認識システムWhisperを組み合わせ、音声ファイルから文字起こしをするアプリを作りました。この記事ではそのアプリの作成過程と成果物、さらに改善の余地について紹介します。

プロジェクトの背景

参考にした記事はこちらで、ChatGPTとWhisperのAPIの使い方などが詳しく解説されています。ただし、この例ではChatGPTのプロンプトが固定されており、変更できないため、自由にプロンプトを設定できるようアプリを改修しました。

gihyo.jp

使ってみた感想

作成したアプリはこちらで公開しています(といっても本家とほぼ変わりませんがw)。実際に音声ファイルを読み込ませてみたところ、専門用語や造語の変換ミスはあるものの、全体的には非常に高い精度で文字起こしができました。また、APIの使用料金は約2分の音声ファイルの文字起こしで約0.01ドルとなりました。

huggingface.co

課題点

しかし、このアプリを実用化するためにはいくつか解決すべき課題があります。

Whisperの25MB制限

Whisperでは音声ファイルの上限が25MBとなっており、これを超えるとエラーが発生します。この問題を克服するためには、音声ファイルを分割する処理を組み込む必要があります。さらに、APIの使用料金を抑えるために、文字起こし可能な音声ファイルの長さに上限値を設定する機能も必要となります。

専門用語などの精度向上

WhisperのAPIへのプロンプト提供により、専門用語の精度向上が期待できるとの情報があります。これは特に専門性の高い議論やテクニカルな議題の会議で重要となります。

alpcom.co.jp

文書校正

音声ファイルの文字起こし後にChatGPTを用いて文書校正を行うと、より正確な要約が得られる可能性があります。議論中には微妙な言い間違いや訂正が発生することがあり、それらを修正した上で要約を生成することが望ましいです。

話者識別

会議や討論の議事録作成においては、誰が何を発言したかを特定することが重要です。そのため、話者識別機能の搭載が必要となります。

インデックス機能

文字起こし内容の人間による確認のため、対象となる時間帯まで音声ファイルを自動的にスキップさせるインデックス機能が求められます。

リアルタイム文字起こし

会議中の音声をリアルタイムに文字起こしできれば、議事録の作成時間が大幅に削減できます。

タスクの抽出

会議の内容からアクション項目やタスクを自動抽出する機能は、議事録の利用価値をさらに高めるでしょう。

まとめ

以上が今回作成した音声ファイルから文字起こしをするアプリの紹介と、今後の改善点についての考察でした。まだ改善の余地はあるものの、文字起こしという手間のかかる作業については十分な効果を発揮できると思います。また、アプリはしばらく公開しておく予定なので、APIキーさえあれば誰でも利用可能です。ぜひ体験してみてください。

※本記事は、当社エンジニアのやまさんが執筆された記事の転載となります。本人の許諾を得て当テックブログに掲載しています。(現在、アプリの改修が進められており、近日中にアップデートが行われる予定だそうです!)

ーーー

一緒にGMOあおぞらネット銀行で働いてくれる仲間を募集しています。
社内勉強会はもちろん、GMOグループの勉強会にも参加できます。ご興味のあるエンジニアの方は、当社採用ページをぜひ一度ご覧ください。

gmo-aozora.com