
【2026年最新】OpenAI Whisperの使い方・料金を完全解説|文字起こしAIの始め��からローカル実行まで
会議の議事録、YouTube動画の字幕、インタビューのテープ起こし——「文字起こし」は誰もが一度は面倒だと感じたことがある作業です。OpenAI Whisperは、99言語以上に対応し、ローカルでもAPIでも動かせるオープンソースの音声認識モデルとして、2026年現在も文字起こしAIの定番であり続けています。
この記事では、Whisperの仕組みからモデル選び、API料金、ローカル実行の具体的な手順、日本語での精度検証、競合サービスとの比較まで、実務で必要な情報をすべてまとめました。
この記事でわかるこ��
- Whisperとは何か、なぜ文字起こしAIの定番なのか
- API版の料金と使い方(Pythonコード付き)
- ローカル実行の環境構築手順(Mac / Windows / Linux)
- tiny〜large-v3-turboまでのモデル選び方
- faster-whisper・whisper.cpp・mlx-whisperとの速度比較
- 日本語の文字起こし精度と注意点
- Google・AWS・Deepgramなど競合サービスとの違い
30秒で結論
- 手軽に使いたい人 → OpenAI API($0.006/分 ≒ 約0.9円/分)で十分。コード5行で動く
- コストを抑えたい人 → ローカルでlarge-v3-turboを実行。GPU 6GB以上あれば快適
- Macユーザー → mlx-whisperが最速。Apple Silicon最適化で爆速
- 最高精度が必要 → large-v3をローカル実行(VRAM 10GB必要)
- リアルタイム文字起こし → Whisperはバッチ処理向き。リアルタイムならDeepgramかGoogle STTを検討
OpenAI Whisperとは?

OpenAI Whisperは、2022年9月にOpenAIがオープンソースで公開した汎用音声認識モデルです。68万時間以上のWeb音声データで訓練されており、以下の特徴があります。
- 99言語以上に対応(日本語含む)
- 文字起こしと英語への翻訳の2タスクに対応
- オープンソース(MITライセンス)で完全無料でローカル実行可能
- OpenAI APIでも利用可能($0.006/分)
2026年現在、最新モデルはlarge-v3(2023年11月リリース)と、その高速化版であるlarge-v3-turbo(2024年10月リリース)です。
Whisperのアーキテクチャ
Whisperはエンコーダ・デコーダ型のTransformerモデルです。音声をメルスペクトログラムに変換し、エンコーダで特徴を抽出、デコーダがテキストを生成します。
音声ファイル → メルスペクトログラム(128bin) → Transformerエンコーダ → Transformerデコーダ → テキスト出力
この設計のおかげで、ノイズの多い環境でも比較的高い精度を維持できます。
モデルの種類と選び方

Whisperには用途に応じた複数のモデルサイズが用意されています。
モデル一覧(2026年4月時点)
| モデル | パラメータ数 | 必要VRAM | 相対速度 | 英語WER | おすすめ用途 |
|---|---|---|---|---|---|
| tiny | 39M | ~1GB | 32x | 高め | テスト・プロトタイプ |
| base | 74M | ~1GB | 16x | 中程度 | 軽量な文字起こし |
| small | 244M | ~2GB | 6x | 中程度 | バランス型 |
| medium | 769M | ~5GB | 2x | 低め | 高精度が必要な場面 |
| large-v2 | 1.55B | ~10GB | 1x | 7.6% | 高精度(旧版) |
| large-v3 | 1.55B | ~10GB | 1x | 7.4% | 最高精度 |
| large-v3-turbo | 809M | ~6GB | 6x | 7.75% | 速度と精度のベストバランス |
📌 ポイント: 多くのユースケースでlarge-v3-turboが最適解。large-v3と1〜2%しか精度差がなく、6倍高速で動作する。
日本語での精度について
Whisperの日本語精度は英語に比べるとやや劣ります。特に以下の点に注意が必要です。
- 固有名詞(人名・地名・企業名)の認識精度が低い場合がある
- 専門用語(法律用語、不動産用語など)が正しく変換されないケースがある
- 同音異義語の判別は文脈依存で、100%正確ではない
ある検証では、日本語の電話音声に対するCER(文字誤り率)は約4〜5%。一般的な会話やインタビューであれば実用的な精度ですが、医療・法律・不動産などの専門分野では事後の校正が必要です。
initial_promptパラメータに固有名詞リストを渡すことで、精度を改善できます。
result = model.transcribe(
"audio.mp3",
language="ja",
initial_prompt="以下は不動産に関する会話です。礼金、敷金、築年数、内見などの用語が登場します。"
)
API版の使い方と料金

API料金
OpenAI Whisper APIの料金はシンプルです。
| 項目 | 内容 |
|---|---|
| モデル | whisper-1(large-v2ベース) |
| 料金 | $0.006/分(秒単位で切り上げ) |
| 1時間あたり | $0.36(約54円 ※1ドル=150円換算) |
| ファイル上限 | 25MB |
| 対応形式 | mp3, mp4, mpeg, mpga, m4a, wav, webm |
月に100時間分の文字起こしをしても約5,400円。コスト面では非常に優秀です。
APIキーの取得手順
- OpenAI Platform���アクセス
- アカウントを作成(またはログイン)
- 左メニューの「API keys」からキーを生成
- Billing設定で最低$5を入金(自動チャージはOFFにしておくのがおすすめ)
Python(公式SDK)での実装
pip install openai
from openai import OpenAI
client = OpenAI(api_key="sk-...")
# 文字起こし(Transcription)
with open("meeting.mp3", "rb") as audio_file:
transcript = client.audio.transcriptions.create(
model="whisper-1",
file=audio_file,
language="ja", # 日本語を指定(省略で自動検出)
response_format="verbose_json", # タイムスタンプ付き
)
print(transcript.text)
# 英��への翻訳(Translation)
with open("japanese_audio.mp3", "rb") as audio_file:
translation = client.audio.translations.create(
model="whisper-1",
file=audio_file,
)
print(translation.text)
25MBを超えるファイルの処理
APIのファイルサイズ上限は25MBです。長時間の音声はpydubで分割してから送信します。
from pydub import AudioSegment
audio = AudioSegment.from_file("long_meeting.mp3")
chunk_length_ms = 10 * 60 * 1000 # 10分ごとに分割
chunks = [audio[i:i+chunk_length_ms] for i in range(0, len(audio), chunk_length_ms)]
full_text = ""
for i, chunk in enumerate(chunks):
chunk.export(f"/tmp/chunk_{i}.mp3", format="mp3")
with open(f"/tmp/chunk_{i}.mp3", "rb") as f:
result = client.audio.transcriptions.create(
model="whisper-1",
file=f,
language="ja",
)
full_text += result.text + "\n"
print(full_text)
ローカル実行の始め方(OSS版)
ローカル実行なら完全無料で、データがOpenAIのサーバーに送信されないため、プライバシーの観点でも安心です。
前提条件
- Python 3.9〜3.12
- FFmpeg(音声処理に必須)
- GPU推奨(NVIDIA GPU + CUDA、またはApple Silicon)
インストール手順
# 1. FFmpegをインストール
# macOS
brew install ffmpeg
# Ubuntu/Debian
sudo apt update && sudo apt install ffmpeg
# Windows(Chocolatey)
choco install ffmpeg
# 2. Whisperをインストール
pip install openai-whisper
基本的な使い方
import whisper
# モデルの読み込み(初回はダウンロードが入��)
model = whisper.load_model("large-v3-turbo")
# 文字起こし
result = model.transcribe(
"meeting.mp3",
language="ja",
fp16=False, # CPU実行時はFalseにする
)
print(result["text"])
# セグメントごとのタイムスタンプも取得可能
for segment in result["segments"]:
print(f"[{segment['start']:.1f}s - {segment['end']:.1f}s] {segment['text']}")
コマンドラインでの使い方
# 基本
whisper audio.mp3 --language ja --model large-v3-turbo
# SRT字幕ファイルを出力
whisper audio.mp3 --language ja --model large-v3-turbo --output_format srt
# 複数ファイルを一括処理
whisper *.mp3 --language ja --model medium --output_dir ./transcripts/
高速化ツール比較:faster-whisper / whisper.cpp / mlx-whisper
公式のWhisperは精度は高いものの、推論速度に課題があります。以下のサードパーティ実装を使うと、同じモデルで大幅に高速化できます。
比較表
| 実装 | 言語 | 速度向上 | 特徴 | おすすめ環境 |
|---|---|---|---|---|
| openai-whisper(公式) | Python | 1x(基準) | 公式、安定 | GPU搭載マシ�� |
| faster-whisper | Python | 最大4倍 | CTranslate2ベース、省メモリ | CUDA GPU |
| whisper.cpp | C++ | 2〜3倍 | CPU最適化、エッジ向け | CPU環境・組み込み |
| mlx-whisper | Python | whisper.cppの2倍 | Apple Silicon最適化 | Mac(M1/M2/M3/M4) |
faster-whisperの使い方
pip install faster-whisper
from faster_whisper import WhisperModel
# large-v3-turboモデルをGPUで実行(float16)
model = WhisperModel("large-v3-turbo", device="cuda", compute_type="float16")
# CPU実行の場合
# model = WhisperModel("large-v3-turbo", device="cpu", compute_type="int8")
segments, info = model.transcribe("meeting.mp3", language="ja", beam_size=5)
print(f"検出言語: {info.language} (確��: {info.language_probability:.2f})")
for segment in segments:
print(f"[{segment.start:.1f}s - {segment.end:.1f}s] {segment.text}")
📌 ポイント: faster-whisperはメモリ使用量も公式版の半分程度。同じGPUでより大きなモデルが動かせる。
mlx-whisperの使い方(Mac専用)
Apple Silicon搭載のMacなら、mlx-whisperが圧倒的に速いです。
pip install mlx-whisper
# コマンドラインで実行
mlx_whisper --model mlx-community/whisper-large-v3-turbo audio.mp3
import mlx_whisper
result = mlx_whisper.transcribe(
"meeting.mp3",
path_or_hf_repo="mlx-community/whisper-large-v3-turbo",
)
print(result["text"])
2026年1月のベンチマークでは、mlx-whisperはwhisper.cppの2.03倍高速という結果が出ています。M4 Mac miniなら、1時間の音声を数分で処理できます。
whisper.cppの使い方
GPUがない環境やRaspberry PiなどのエッジデバイスにはCPU最適化されたwhisper.cppが適しています。
# ビルド
git clone https://github.com/ggerganov/whisper.cpp.git
cd whisper.cpp
cmake -B build && cmake --build build --config Release
# モデルのダウンロード
bash models/download-ggml-model.sh large-v3-turbo
# 実行(WAV形式に変換してから)
ffmpeg -i meeting.mp3 -ar 16000 -ac 1 -c:a pcm_s16le meeting.wav
./build/bin/whisper-cli -m models/ggml-large-v3-turbo.bin -l ja -f meeting.wav
競合サービスとの比較

料金・速度・精度の比較表
| サービス | 料金/分 | 月1,000時間コスト | 速度 | 日本語対応 | リアルタイム |
|---|---|---|---|---|---|
| OpenAI Whisper API | $0.006 | $360 | 1x | ◎ | ✕ |
| Deepgram Nova-3 | $0.0043 | $258 | 30x | ○ | ◎ |
| Google Cloud STT v2 | $0.016 | $960 | 5x | ◎ | ◎ |
| AWS Transcribe | $0.024 | $1,440 | 2x | ○ | �� |
| ElevenLabs Scribe | $0.006 | $360 | 高速 | ○ | ✕ |
| Whisper ローカル | 無料 | $0 | GPU依存 | ◎ | ✕ |
どれを選ぶべきか
コスト最優先 → Whisperをローカル実行(無料)またはDeepgram($0.0043/分)
API手軽さ重視 → OpenAI Whisper API。5行のコードで動く
リアルタイム文字起こし → DeepgramかGoogle Cloud STT。Whisperはバッチ処理専用
日本語の専門用語精度 → Google Cloud STTが住所・固有名詞に強い。カスタム辞書にも対応
エンタープライズ・セキュリティ → Azure Speech Services。カスタムモデル・オンプレ対応あり
実践的なユースケース
1. 会議の議事録作成
from faster_whisper import WhisperModel
model = WhisperModel("large-v3-turbo", device="cuda", compute_type="float16")
segments, info = model.transcribe(
"meeting_2026-04-03.mp3",
language="ja",
beam_size=5,
vad_filter=True, # 無音区間を自動スキップ
vad_parameters=dict(min_silence_duration_ms=500),
)
# Markdown形式で出力
with open("minutes.md", "w") as f:
f.write("# 議事録\n\n")
for seg in segments:
minutes = int(seg.start // 60)
seconds = int(seg.start % 60)
f.write(f"<strong>[{minutes:02d}:{seconds:02d}]</strong> {seg.text}\n\n")
2. YouTube動画の字幕生成(SRT形式)
# yt-dlpで音声をダウンロード
yt-dlp -x --audio-format mp3 "https://www.youtube.com/watch?v=XXXXX" -o audio.mp3
# Whisperで字幕生成
whisper audio.mp3 --language ja --model large-v3-turbo --output_format srt
3. Podcast のテキスト化と要約
from faster_whisper import WhisperModel
from openai import OpenAI
# Step 1: 文字起こし
whisper_model = WhisperModel("large-v3-turbo", device="cuda", compute_type="float16")
segments, _ = whisper_model.transcribe("podcast.mp3", language="ja")
full_text = " ".join([seg.text for seg in segments])
# Step 2: ChatGPTで要約
client = OpenAI()
summary = client.chat.completions.create(
model="gpt-4o-mini",
messages=[
{"role": "system", "content": "以下のPodcast文字起こしを、要点を箇条書きで要約してください。"},
{"role": "user", "content": full_text}
]
)
print(summary.choices[0].message.content)
よくある質問(FAQ)
Q: Whisperは完全に無料で使えますか? A: ローカル実行なら完全無料です。オープンソース(MITライセンス)なので商用利用も問題ありません。APIを使う場合は$0.006/分(約0.9円/分)の従量課金です。
Q: GPUがなくてもWhisperは動きますか? A: 動きます。ただしCPUだと処理速度が大幅に遅くなります。tinyやbaseモデルならCPUでも実用的ですが、large系のモデルはGPUを強く推奨します。Apple Silicon搭載のMacならmlx-whisperで高速に動作します。
Q: Whisperはリアルタイムの音声認識に対応していますか? A: 標準のWhisperはバッチ処理(録音済みファイルの処理)専用です。リアルタイム文字起こしが必要な場合は、WhisperLiveやwhisper_streamingなどのラッパーライブラリを使うか、DeepgramやGoogle Cloud STTを検討���てください。
Q: 日本語の文字起こし精度はどのくらいですか?
A: クリアな音声であれば実用的な精度です。CER(文字誤り率)は一般的な会話で4〜5%程度。ただし固有名詞や専門用語は誤認識が起きやすいため、initial_promptで用語リストを渡すか、事後の校正を組み合わせるのがおすすめです。
Q: large-v3とlarge-v3-turboはどちらを選ぶべきですか? A: ほとんどのケースでlarge-v3-turboが最適です。精度差はわずか1〜2%で、処理速度は6倍高速。VRAM要件も10GB→6GBに下がります。ただし翻訳タスク(他言語→英語)にはturboは不向きで、large-v3やmediumの方が正確です。
Q: Whisperの文字起こし結果にタイムスタンプは付きますか?
A: はい。API版ではresponse_format="verbose_json"を指定するとセグメントごとのタイムスタンプが返ります。ローカル版もresult["segments"]でセグメント単位の開始・終了時刻を取得できます。SRT/VTT形式での出力にも対応しています。
Q: 他のAI文字起こしサービスと比べてWhisperの強みは? A: 最大の強みはオープンソースでローカル実行できること。データを外部に送信しないためプライバシーを完全に守れます。大量の音声を処理する場合のコストも圧倒的に安い。一方、リアルタイム処理や話者分離(誰が話しているかの識別)は標準では対応していないため、用途によってはDeepgramやGoogle STTが適しています。
Q: Whisperで話者分離(スピーカーダイアリゼーション)はできますか?
A: Whisper単体では対応していません。pyannote-audioなどの話者分離ライブラリと組み合わせることで実現できます。faster-whisperにはvad_filter(音声区間検出)が組み込まれており、無音区間のスキップは可能です。
