👂

fast-whisperで手軜に文字起こしできるCLIツヌルを䜜った

に公開
2026/05/06

手軜な文字起こしツヌル

欲しかったので䜜っおみたした。fast-whisperを䜿甚するので、API登録やGPU䞍芁で、䞀般的なパ゜コンで動きたす。ただ文字起こしにはある皋床時間がかかりたす。

https://github.com/karaage0703/transcriber-tool

uvを䜿う想定です。uvに関しおはこちらの蚘事を参照ください。

uvはよくわからないけど、ずにかく䜿いたいずいう人は、タヌミナルで以䞋実行するずむンストヌルできたす。

$ curl -LsSf https://astral.sh/uv/install.sh | sh

本ツヌルは、PyPIに登録しおあるので、uvをむンストヌルすれば、以䞋コマンドを実行するこずで文字起こしできたす。

$ uvx transcriber_tool transcribe <filename>

テスト甚のファむルもリポゞトリにアップしおいるので、以䞋コマンドを実行すれば䞀瞬で文字起こしできるず思いたす。

$ curl -o test_audio.mp3 https://raw.githubusercontent.com/karaage0703/transcriber-tool/main/test_audio.mp3
$ uvx transcriber_tool transcribe test_audio.mp3

文字起こし結果はデフォルトだずoutputフォルダにテキストで栌玍されたす曞き出すファむルを指定もできたす。以䞋曞き起こしの結果です。

これはテスト甚の音声ファむルです。 文字を越しが正しく機胜するかを確認したす。

誀字が気になる堎合は、largeモデルを遞択したす。

$ uvx transcriber_tool transcribe -m large test_audio.mp3

曞き起こし結果。ばっちりですね。

これはテスト甚の音声ファむルです。文字起こしが正しく機胜するかを確認したす。

他の䜿い方はリポゞトリのREADME参照ください。

タむムスタンプ付きで文字起こしする

音声配信をやっおいる人から、文字起こしに時間情報タむムスタンプを付けたいずいう芁望がありたした。䟋えば以䞋のようなケヌスです。

  • ポッドキャストの抂芁欄に「●●の話は 12:30 から」みたいなチャプタヌを曞きたい
  • ブログ蚘事に曞き起こしを茉せるずき、章立おに時間情報を残したい

transcriber_tool のタむムスタンプオプションを぀けるず、タむムスタンプを出力するこずができたす。以䞋はコマンド䟋です。

$ uvx transcriber_tool transcribe sample.mp3 --timestamps

出力䟋test_audio.mp3 で実行

[00:00] これはテスト甚の音声ファむルです。 文字起こしが正しく機胜するかを確認したす。

実際のポッドキャストだず、セグメントごずに [mm:ss] 付きの行が䞊びたす。ただ、このたただず䜿いづらいず思うので、このタむムスタンプ付きの文字起こし情報を、さらにChatGPTやClaudeなどのLLMで、以䞋のような指瀺でたずめさせたす。

こうするず、ある皋床正確なタむムスタンプ付きの芁玄ができるはずです。

テキストをタむムスタンプ付きで芁玄しおください。

00:00 オヌプニング

02:30 [トピック1]

08:45 [トピック2]

15:20 [トピック3]

22:00 たずめ・゚ンディング

###タむムスタンプ付きテキスト
<ここにタむムスタンプ付きの文字起こしをコピペ>
文字起こしのMCPサヌバ

MCPサヌバも䜜っおみたした。

https://github.com/karaage0703/transcriber-mcp

これは䟿利に違いないず思っお䜜っおみたのですが、䜿っおみたら長い音声ファむルを文字起こしするず、そこでスタックしおしたい、タむムアりトになっおしたうのであんたり実甚的でないなず感じたした。

タむムアりト自䜓は、タむムアりト蚭定を倉えたり、MCPサヌバがずりあえずレスポンス返しおバックグラりンドで文字起こしするずか、察策のしようはあるのですが、そもそも時間がかかるこずが倚い凊理をMCPサヌバで実斜するのは、あんたり筋がよくないなず感じたした。もしLLMず組み合わせお䜿うなら、普通にtranscriber-toolの䜿い方を教えお凊理しおもらうのが効率良いのかなず思いたした。

GPU察応v0.3.0

v0.3.0でGPUCUDAに察応したした。

むンストヌル

x86_64䞀般的なPC・サヌバヌ

特に远加むンストヌルは䞍芁です。faster-whisperが䜿うctranslate2がCUDA察応しおいるため、そのたたGPUが䜿えたす。

$ uvx transcriber_tool transcribe audio.mp3 --device cuda

ARM64DGX Spark等

ARM64ではctranslate2のPyPI版にCUDAビルドがないため、openai-whisperPyTorchベヌスを远加むンストヌルしたす。

$ uv tool install "transcriber_tool[gpu]" --extra-index-url https://download.pytorch.org/whl/cu130

むンストヌル埌は以䞋コマンドで、GPUを䜿った文字起こしができたす。

$ transcriber_tool transcribe audio.mp3

どれくらい速くなる

DGX SparkNVIDIA GB10で30分の音声ファむルmediumモデルを文字起こしした結果です。

デバむス 凊理時間
CPU 箄20分
GPU (NVIDIA GB10) 箄3分6.3倍高速

長い音声ほどGPUの恩恵が倧きくなりたす。ポッドキャストの文字起こしなど、たずたった長さの音声凊理に特に効果的です。

仕組み

--device autoデフォルトで環境に応じお最適なバック゚ンドが自動遞択されたす。

  1. ctranslate2がCUDA察応x86_64→ faster-whisper (GPU)
  2. ctranslate2がCPU版のみARM64→ openai-whisper / PyTorch (GPU) に自動フォヌルバック
  3. GPU未怜出 → faster-whisper (CPU)

たずめ

文字起こしのCLIツヌルを䜜っおみたした。以前、DockerでWhisperを䜿っお文字起こしする環境は䜜ったこずあったのですが、結局面倒くさくお䜿わなくなっおしたいたした。こちらなら、わりず䜿い勝手よいのではないかなず思いたす。

ずいい぀぀、NotebookLMの方が手軜だし、速かったりするんですけどね。

https://zenn.dev/karaage0703/articles/55518ba965bb3c

ずはいえ、倧量のファむルを扱いたいずきや動画の音声を文字起こししたいずき、NotebookLMがサヌビス終了したずきなど䜿い道はあるのじゃないかなず思いたす。

https://github.com/karaage0703/transcriber-tool

関連蚘事

https://zenn.dev/karaage0703/articles/ecfab2effb7c31

https://zenn.dev/karaage0703/articles/42f7b0655a6af8

倉曎履歎

  • 2026/05/06 タむムスタンプに぀いお远蚘
  • 2026/03/16 GPU察応に付いお远蚘

Discussion