OpenAI Whisper 完全ガイド ヒーロー画像

【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とは?

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のモデルサ��ズ比較

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の使い方

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キーの取得手順

  1. OpenAI Platform���アクセス
  2. アカウントを作成(またはログイン)
  3. 左メニューの「API keys」からキーを生成
  4. 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(音声区間検出)が組み込まれており、無音区間のスキップは可能です。