--- title: 無料・超高精度のWhisper + 生成AIで文字起こしする方法 description: OpenAI Whisperと生成AIを組み合わせた超高精度な文字起こしの方法。Google Colabを使えば無料・インストール不要で利用できます。 --- ## これまで 私はできる限り会議録を残すようにしています。参加者の発言をその場でPCに打ち込み、その場で会議録をほぼ完成させるスタイルです。以前は(承諾を得て)録音を持ち帰り文字起こししていましたが骨の折れる作業でした。色々な自動化ソフトを試しましたが、雑音があったり話者がマイクから遠かったりする場合はうまく認識してくれず、結局その場でPCに打つ方法がベストでした。 しかし令和4年9月22日にOpenAIから **Whisper** という文字起こしAIが公開され、試してみたところ驚くべき性能でした。それ以来、各種会議の文字起こしに活用しています。 その手法をここに説明いたします。皆様のお役に立てましたら幸いです。 :::note ##### 📝 この記事について 本記事は令和4年9月に公開した旧サイトのブログ投稿の焼き直しです。Whisperの文字起こし精度は今でも極めて高く、ここで紹介する手順も現在(令和8年)有効です。むしろ生成AIを組み合わせた後処理の手法が加わったことで、当時よりさらに実用的になっています。 ::: ## かんたん手順(手順だけ知りたい方) 1. [Colab を開く](https://colab.research.google.com/drive/1eAxHdqrF1Zt59V1ouSfo7iTBRYmhYDy7?usp=sharing)(Google アカウントでログイン) 2. 「ランタイム」→「ランタイムのタイプを変更」→ **T4 GPU** に設定 3. 音声ファイルを Google Drive の「マイドライブ」直下にアップロード 4. コード内のパスを確認(デフォルト: `MyDrive/onsei.mp3`) 5. ▶(実行)→「このまま実行」 6. 完了したら結果をコピー(`Ctrl+C` 不可、右クリック→「選択した内容をコピーする」) 7. 必要に応じて生成AI(ChatGPT 等)に貼り付け→整形 より詳しい方法は続きをご覧ください。 :::tip ##### 💡 所要時間の目安 無償版で 1〜2時間の音声なら 30分〜1時間程度。長い音声は途中で強制終了する場合があります。 ::: ## 雇用を奪わない形でのAI活用 昨今の凄まじいAI進化。善悪はともあれ、止められません。 家の中の掃除や洗濯、食器洗いなどの家事が自動化されてきたことと同じように、主に自分で行う作業のAI化であれば「人間の雇用喪失をそれほど心配する必要がない」という点で安心できるところはあります。個人的な会議録の文字起こし作業もその一つです。ここではその視点に立ち、Whisperをご紹介したいと思います。 ## 驚異的な精度 [Whisperのページ](https://openai.com/index/whisper/)を読むと、単語誤り率(Word Error Rate; WER)は日本語で約6.4%とされています。「ほぼ完ぺき」と言われる5%に近く、実際の使用感でも非常に高い精度です。余談ですが **ファインチューン** というものを行えば、100%に近い精度も期待できるようです。 直近(令和4年9月時点)の小平市議会定例会における私の質問と、それに対する理事者側答弁の音声をWhisperで文字起こしすると、例えば次のようになります(間違えている箇所は黄色でマーク)。
**▼ 文字起こし例 1** 教育委員会としては重大事態として扱わなかったという事例があるんですが、一般して最終的に重大事態として扱うことになったんですが、その専門家から助言を受けたことで重大事態として扱ったわけではなくて、別の理由で扱うことになった。その専門家から重大事態として扱いなさいというような助言を受けたにも関わらず(←正しくは「拘わらず/かかわらず」)、その重大事態として扱わなかった場面において教育長はどのような指示されてきたのか、例えば教育長はまっすぐに重大事態として扱いなさいとか、… **▼ 文字起こし例 2** それ以外はないということでいいですか。報酬がそれ以外ないかということでいいですか。ない。以上ということですか。ない。村(←正しくは村田)部長。まず月額給与と期末手当と退職手当、この3つとなります。他には特にはございません。以上でございます。… **▼ 文字起こし例 3** その時には私はちょっといなかったもで、詳しいところは存じ上げてはいませんが、その話については聞く中では、当時そのお話ありましたが、すぐに重大事態に持っていくというような話ではなかったということもありまして、その後様々な話を聞く中で、やはり我々の市の方の重大事態に対する考え方というのも少し甘かったというところも確かに反省する点はございます。安田経議員がご指摘されていたように、重大事態の考え方というのは、やはりしっかりと我々の中で共通認識を持って対応する必要があると考えていますので…
個人名はさすがに難しいようですが、ほぼ完ぺきに文字起こしできています。ファインチューンで最適化すればさらに精度が上がりますが、手間がかかるため、通常の使用では次節で紹介する**生成AIによる後処理**で十分にカバーできます。 Whisperで文字起こし中の様子 上図は、私の一般質問をWhisperにかけてみた様子です。こんな感じで進捗していきます。 ## 具体的な文字起こし手順 実行環境を用意しました。Google Drive に音声ファイルを置き、Colab から直接読み込む(意味が分からなくても大丈夫です)方法で、インストール不要・無料で利用できます。 **① 以下のリンクを開きます。**(ブラウザは Google Chrome 推奨) 👉 [Google Colab で開く](https://colab.research.google.com/drive/1eAxHdqrF1Zt59V1ouSfo7iTBRYmhYDy7?usp=sharing) **② Google アカウントでログインします。** Colab ログイン画面 **③ メニューバーの「ランタイム」→「ランタイムのタイプを変更」を押します。** ランタイム変更メニュー **④ ハードウェアアクセラレータを「T4 GPU」に設定し、保存ボタンを押します。** GPU設定画面 :::tip ##### 💡 TPU ではなく GPU を選んでください 「v5e-1 TPU」などの選択肢もありますが、エラーになるか、非常に遅くなります。必ず **T4 GPU** を選択してください。 ::: **⑤ 文字起こししたい音声ファイルを Google Drive の「マイドライブ」直下にアップロードします。** ここでは例として `onsei.mp3` で説明します。mp3、m4a、wav などの音声ファイルだけでなく、mp4 などの動画ファイルもそのまま文字起こし可能です。 マイドライブにアップロード アップロードが完了するまで待ちます。 アップロード中 :::tip ##### 💡 プライバシーについて - アップロードしたファイルの内容や文字起こし結果は、私からは一切見られません。アクセスログも取得していません。 - Colab 上で Google Drive をマウントしても、その内容が他の共有相手に知られることはありません。ランタイムはユーザーごとに完全に独立しています。 - アンマウントしたい場合は、コードセルで `drive.flush_and_unmount()` を実行するか、「ランタイム」→「ランタイムを再起動」してください。 - Google は情報を取得できる可能性があります。機密性が気になる場合は、ご自身の PC に Whisper をインストールしてご利用ください。 ::: :::tip ##### 💡 「マイドライブ」直下とは? Google Drive を開いたときに最初に表示される場所です。「会議録」などのフォルダの中ではなく、**フォルダの外**に置いてください。 どうしてもフォルダに整理したい場合は、たとえば「会議録」フォルダに入れた場合、後ほど⑥で書き換えるパスが `MyDrive/会議録/onsei.mp3` のように変わります。 ::: **⑥ コード内のファイルパスを確認します。** デフォルトでは `/content/drive/MyDrive/onsei.mp3` になっています。 - **マイドライブ直下**に置いた場合: ファイル名だけ書き換えればOK(例: `MyDrive/kaigi.mp4`) - **フォルダに入れた**場合: フォルダ名を含めて書き換え(例: `MyDrive/会議録/onsei.mp3`) ファイルパスの確認 **⑦ 三角形の実行ボタン(▶)を押します。** 実行ボタン **⑧ 警告が出たら「このまま実行」を押します。** このまま実行 **⑨ 完了すると、最後にすべてを連結した文章が表示されます。** 文字起こし完了 表示された文字起こし結果は `Ctrl+C` ではコピーできません。**マウスで結果を選択し、右クリック →「選択した内容をコピーする」** を選んでください。 選択してコピー コピーしたテキストを Word などに貼り付けてご利用ください。 ### 続けて実行する場合や不具合が起きた場合 別の音声ファイルを文字起こししたい場合は、ブラウザの再読み込みボタンを押して再度手順を繰り返してください。また、何か途中で不具合が起きた場合にも、同じ手順で直る場合があります。 :::caution ##### ⏱ 制限時間に注意 Google Colab 無償版には利用制限があり、最長12時間(実質4〜5時間で終了する場合も)で処理が強制終了します。文字起こしが正常に進んでいることが確認でき、かつ途中で時間制限に達したといったエラーが表示された場合、時間制限に達した可能性が高いです。ブラウザを再読み込みして再度実行するとうまく最後まで文字起こしが完了することもありますので、何度か試してみてください。もしどうしても制限時間が足りないようでしたら、後述の Google Colab Pro へのアップグレードで解決する場合もあります。 ::: ## 文字起こし結果を生成AIで仕上げる ここまでの手順で得られた文字起こし結果は、Whisper だけでも十分実用的です。しかし、このテキストを **生成AI(ChatGPT, Grok, Claude, Gemini, DeepSeek など)に渡す** ことで、さらに高品質な会議録に仕上げることができます。 ### 生成AIにできること 1. **誤字・脱字の修正** Whisperの聞き間違い(例: 「一般して」→「一旦は」)を文脈から推測して修正してくれます。 2. **話者の特定とラベル付け** あらかじめ話者の情報(「市長=小林洋子」「質問者=安竹洋平」など)を伝えておけば、発言ごとに `【安竹】` `【市長】` のように話者ラベルを付けてくれます。 3. **フィラーの除去と文章整形** 「えー」「あのー」といったフィラー(つなぎ言葉)を除去し、読みやすい文章に整形します。 4. **要約の生成** 長い会議の要点を箇条書きでまとめることもできます。 ### 具体的なプロンプト例 上記⑨でコピーしたテキストを、以下のようなプロンプトとともに生成AIに渡します。
以下は市議会の一般質問の文字起こしです。次のように整形してください: - 誤字・脱字を文脈から判断して修正する - 話者を特定し、発言の先頭に【話者名】を付ける 話者: 安竹洋平(質問者)、小林洋子(市長)、教育長(名前不明) - 「えー」「あのー」などのフィラーは削除する - 文意が通るように適宜句読点を補う - 元の発言内容は変えないこと [ここにWhisperの文字起こし結果を貼り付ける]
### 実例 **Whisper出力(生):**
いじめの重大事態に関してですよ専門家から重大事態としてこれを扱いなさいと扱った方がいいですよという助言を受けながらですね教育委員会としては重大事態として扱わなかったという事例があるんですが一般して最終的に重大事態として扱うことになったんですが…
**生成AIで整形後:**
【安竹】いじめの重大事態に関してです。専門家から「重大事態として扱った方がいい」という助言を受けながら、教育委員会としては重大事態として扱わなかった事例があります。一旦は最終的に重大事態として扱うことになったのですが…
### 活用フロー ここまでをまとめると、次のような流れになります。 ``` 音声/動画ファイル(.mp3/.m4a/.wav/.mp4 等) ↓ Whisper で文字起こし(Colab) 生テキスト(誤字・フィラーあり) ↓ 生成AI で整形 整形済みテキスト(話者ラベル・句読点付き) ↓ 最終確認・加筆 完成した会議録 ``` この方法を組み合わせることで、2時間の会議の会議録作成が、従来の10分の1未満の時間で完了するまでにもなりました。 :::note ##### 💡 専用ソフトや自動化について 世の中には、Whisper の文字起こしと生成AIによる整形をワンクリックで行えるソフトや、Python スクリプトで API 連携させる自動化の手法も存在します。ただ、それらは環境構築や API キーの取得が必要だったり、日本語の話者識別がうまくいかなかったりと、導入のハードルが意外と高いのが現状です。 ここで紹介している「Colab で文字起こし → 結果をコピー → 生成AIに貼り付け」という手順は、一見原始的ですが、コピー&ペーストの手間は数秒で済みます。また、人の目で最終確認する工程はどのみち必要なので、手作業の部分が極端なボトルネックになることはありません。**手軽さと実用性のバランス**で言えば、この方法は今(令和8年6月末)でも十分有力な選択肢です。 ::: ## 制限時間を延ばしたい場合(Google Colab Pro) 処理の速度を上げたり制限時間を延ばしたい場合は、[Google Colab Pro](https://colab.research.google.com/signup) もしくは Pro+ を契約することで可能になります。 | プラン | 月額料金(記事執筆時点) | 特徴 | |--------|------------------------|------| | 無償版 | 無料 | 最長12時間(実質4〜5時間) | | Pro | 約1,200円 | 高速GPU、最大100回分 | | Pro+ | 約6,000円 | さらに高速、より長い制限時間 | 条件にもよりますが、Pro で約2時間の音声(約80MB)を文字起こししたところ、Google Drive からの読み込みに約10分、文字起こし完了までに約33分かかりました(令和4年9月時点)。 Pro を一度契約すると1ヶ月間(最大100回分)使えます。なお、一度契約すると**毎月自動的に支払い**がなされてしまうため、解約を忘れないようにしてください。クレジットカードでの支払いが済んだら早めに [Google Colab の解約ページ](https://colab.research.google.com/signup) から解約手続きをしておくとよいでしょう。すぐ解約しても1ヶ月間は使えます。 --- 参考までに、令和4年9月時点で私が約2時間の音声(約80MB)を文字起こしした際は、Pro で約33分で完了しました(ファイル転送時間を除く)。 --- :::caution ##### ⚠ 免責事項 本ページで紹介している方法・ツールの利用に関して、いかなる問題が生じた場合でも、安竹洋平および本サイトは一切の責任を負いません。ご自身の判断と責任においてご利用ください。 ::: import WhisperStyles from '@/components/WhisperStyles.astro';