🎁 新規 無料登録、10回の呼び出しを進呈。最大 $1、カード不要。
文字起こし API のコスト比較:同じ音声を 7 モデルで検証

文字起こし API のコスト比較:同じ音声を 7 モデルで検証

目次
  1. この test で分かること、分からないこと
  2. multimodal ではなく文字起こし専用 ASR
  3. 文字起こしの課金方式
  4. コスト
  5. 精度と対応言語
  6. streaming 出力
  7. cache
  8. 最初に確認すべきことと、自分で検証すべきこと
  9. 結論
  10. 出典

Synthorai で音声の文字起こしが可能になった。OpenAI 互換 endpoint から、文字起こし専用の 7 モデルを利用できる。

この 1 つの endpoint の裏では、かなりの差異を吸収している。各モデルの native API は、ほとんど共通点がない。whisper-1 は multipart で file を upload し、{text} を返す。gpt-4o-transcribe も同じ形式で upload するが、token usage も返す。ByteDance の seed-asr は BytePlus AUC protocol、Alibaba の qwen3-asr-flash は独自 protocol を使う。Google の chirp モデルは Cloud Speech-to-Text の recognizer で、OAuth 経由で呼び出す。

endpoint も auth も response の形式も異なり、model を増やすたびに integration が必要になる。gateway 経由なら、OpenAI 互換の call だけで済む。gpt-4o-mini-transcribeseed-asr-bigmodelchirp-3 に差し替えても、それ以外の code は変更不要だ。

TL;DR

  • 文字起こし専用の 7 モデルでは、コストに 8 倍の差がある。音声 1 分あたり seed-asr-bigmodel は $0.0020、Chirp モデルは $0.0164 だった(2026-06-25 計測)。
  • seed-asr は言語を自動検出しない。language を指定しない場合、英語と中国語以外の音声でも HTTP 200 を返すが、text は空かローマ字化された内容になり、課金は発生する。
  • qwen3-asr-flash は 1 分あたり $0.0021 で、検証した全言語を自動検出できるモデルとしては最安だった。
  • token 単位で streaming できるのは gpt-4o の文字起こしモデルだけ。分単位課金のモデルは batch のみに対応する。
  • clean な英語、スペイン語、フランス語では、全モデルの error が約 0% だった。精度は選定基準にならない。

呼び出すのは OpenAI 互換の文字起こし endpoint なので、すでに Whisper を使っていればそのまま置き換えられる。

curl https://synthorai.io/v1/audio/transcriptions \
  -H "Authorization: Bearer $SYNTHORAI_API_KEY" \
  -F file=@meeting.mp3 \
  -F model=gpt-4o-mini-transcribe
from openai import OpenAI

client = OpenAI(base_url="https://synthorai.io/v1", api_key="sk-syn-...")

with open("meeting.mp3", "rb") as f:
    result = client.audio.transcriptions.create(model="gpt-4o-mini-transcribe", file=f)

print(result.text)

文字起こし結果は text、課金額は response header の x-total-cost-usd に入る。

7 モデルすべてを同じ単純な test にかけた。以下の数値を読むには、test の条件を理解しておく必要がある。


この test で分かること、分からないこと

世界で話者数が多い上位 5 言語について、一般的な text-to-speech voice で日常的な文章を生成した。内容は朝、天気、市場への買い物などで、固有名詞は含めていない。そのうえで、各 clip を 7 モデルすべてで文字起こしした。clip の長さは約 12 〜 15 秒で、通常の速度で約 40 語を話しており、長い無音区間はない。形式は 16 kHz mono 16-bit PCM WAV(256 kbps、1 分あたり約 2 MB)だ。元の text を正解データとし、duration は正確に計測した。

意図的に簡単な条件にしている。音声は clean で台本どおり、話者は 1 人だけ。accent、noise、専門用語は含まない。音声の難しさに左右されない項目を調べるには適している。コスト、latency、対応言語、streaming の可否を測定でき、これらは安定した事実として扱える。

品質 benchmark ではない。実際の録音には accent、background noise、業界固有の語彙、話者の重なりがあり、長さが 1 時間に及ぶこともある。こうした条件では、clean な音声では見えない差が出るため、今回の結果から予測することはできない。精度の数値は順位ではなく、最低限の確認として読むべきだ。コスト、対応範囲、streaming の結果は、実運用で頼れる baseline として扱える。

multimodal ではなく文字起こし専用 ASR

ここで扱う 7 モデルは、すべて文字起こし専用の system だ。OpenAI の whisper-1gpt-4o-transcribegpt-4o-mini-transcribe、ByteDance の seed-asr-bigmodel、Alibaba の qwen3-asr-flash、Google の chirp-2chirp-3 が該当する。

gateway の文字起こし endpoint から Gemini のような汎用 multimodal model を呼び出し、音声理解の一環として文字起こしさせることもできる。今回は対象外とした。文字起こし用途で、こうしたモデルを選ぶ理由もない。Google も自社製品について同じ説明をしている。Gemini の audio guide では、Gemini を音声の説明、要約、質問への回答に使うものとして紹介し、文字起こし自体には別の製品を案内している。「real-time transcription に対応した文字起こし専用モデルには Google Cloud Speech-to-Text API を使うべき」としており、該当するのが Chirp モデルだ。multimodal model でも文字起こしは出力できるが、発話を正確に書き起こすことではなく、音声の理解を目的に設計されている。呼び出しも文字起こし API ではなく、chat 形式の generateContent を使う。逐語的な文字起こしには専用モデルが適しており、両方を提供する vendor 自身もそう説明している。

音声の送り方は 3 通りある。

  • file を送り、batch で受け取る:録音済みの file 全体を upload し、1 回の response で文字起こし全体を受け取る。全モデルが対応する。
  • file を送り、text を streaming で受け取る:同じく file 全体を upload するが、生成された文字起こしを SSE で順次受け取る。一部のモデルのみ対応し、ほかは batch 専用だ。
  • 音声 stream を送り、text stream を受け取る:live mic や通話を real-time で認識する。現在開発中で、まだ利用できない。以下では最初の 2 方式だけを扱う。

文字起こしの課金方式

課金方式は 2 種類ある。音声 1 分単位whisper-1seed-asrqwen3-asr-flash、Chirp モデル)では、中身に関係なく録音の実時間に対して課金される。token 単位gpt-4o モデル)では、音声が一定比率で token 化され、その input token と文字起こし結果の output token に課金される。そのため、発話が詰まった音声より無音が多い音声のほうが安い。

token 単位課金には注意点がある。表示されている input rate は text 用で、audio の単価はそれより高い。gpt-4o-mini-transcribe は input が $1.25/M と記載されているが、audio には $3/M で課金される。text の rate から見積もると、実際より安く計算してしまう。gateway は実際の課金額を x-total-cost-usd header で返すため、price page から推測せず、この値を参照すべきだ。

コスト

この test で最も明確に測定でき、モデル間の差も最大だった項目だ。課金 header から算出した 1 分あたりのコストを以下に示す。gateway で利用できる全モデルの最新 list rate は、モデル一覧で確認できる。

モデルコスト / 分latencystreaming
seed-asr-bigmodel$0.0020≈10s非対応
qwen3-asr-flash$0.0021≈3s非対応
gpt-4o-mini-transcribe$0.0031≈3stoken 単位
whisper-1$0.0060≈4s非対応
gpt-4o-transcribe$0.0062≈2stoken 単位
chirp-2$0.0164≈3s非対応
chirp-3$0.0164≈4s非対応

最安の seed-asr は 1 分あたり $0.0020、Chirp モデルは $0.0164 で、約 8 倍の差がある。最安の seed-asr には音声の言語を明示する必要がある。詳細は後述するが、事前に言語が分かっている場合には最適だ。複数言語が混在する場合や言語が不明な場合、設定なしで使える最安の選択肢は $0.0021 の qwen3-asr-flash になる。Chirp モデルは大幅に高い。Chirp を使うなら chirp-3 を選ぶべきだ。chirp-2 と価格も速度も同等だが、精度表が示すとおり、標準中国語の文字起こし精度が大きく上回る。

実際の file でコストがどう変わるかは、課金方式によって異なる。分単位課金のモデル(whisper-1seed-asrqwen3-asr-flash、Chirp)は duration だけで課金されるため、rate をそのまま適用できる。形式や内容に関係なく、10 分の音声なら 1 分あたりの金額の 10 倍になる。

token 単位課金のモデル(gpt-4o の行)では、provider が token 化の前に音声を resample するため、input cost は file size ではなく duration に比例する。同じ内容であれば、容量の大きい 320 kbps MP3 でも、今回使用した軽量な 16 kHz WAV でも、token 化後のコストはほぼ同じになる。file を圧縮すれば storage は節約できるが、文字起こし費用は減らない。token 単位の請求額を左右するのは、実際の発話量だ。今回の clip は通常の速度で、無音区間もない。そのため、これより発話密度が高い音声や低い音声では、output token の分だけ課金額がわずかに増減する。どの場合でも、正確な値は x-total-cost-usd header に入る。

精度と対応言語

英語、スペイン語、フランス語では、その言語に対応する全モデルの error が約 0% だった。最低限の基準は、すべてのモデルが満たしている。標準中国語とヒンディー語では、この簡単な test でも差が出始めた。ただし、これは自社データで重点的に検証すべき言語の目安であり、モデルの優劣を決める結果ではない。

モデル標準中国語(CER)ヒンディー語(WER)対応範囲
seed-asr-bigmodel0%9%5 言語すべて(language の明示が必要)
qwen3-asr-flash0%15%5 言語すべて
gpt-4o-mini-transcribe0%4%5 言語すべて
whisper-10%22%5 言語すべて
gpt-4o-transcribe0%13%5 言語すべて
chirp-216%15%5 言語すべて
chirp-32%15%5 言語すべて

ここで重要なのは対応範囲ではなく、言語検出だ。language parameter を渡せば、seed-asr は 5 言語すべてを文字起こしできた。追加検証では、日本語、ドイツ語、イタリア語、韓国語にも対応した。一方、言語の自動検出はできない。language を指定しないと、英語と中国語以外では空文字列かローマ字化された意味不明な text が返る。それでも status は 200 で、error にはならない。ほかの 6 モデルは自動検出に対応する。この silent failure こそ、今回の重要な結果だ。明示的に失敗するモデルは手間がかかるだけだが、黙って失敗するモデルは production incident を引き起こす。

ヒンディー語でのばらつきや、標準中国語での chirp-2 の 16% という結果は、信頼して使う前に難しい言語で検証すべきことを示している。chirp-3 では標準中国語の問題が解消された。ただし、あるモデルが別のモデルより優れているとは結論づけられない。絶対値は synthetic voice と scoring の影響で大きくなっており、実行ごとにも変動する。clean な主要言語の音声では、精度にモデル間の明確な差はない。したがって、この test の精度だけではモデルを選べない。

streaming 出力

文字起こしを streaming できるかどうかは機能上の違いであり、品質とは関係ない。この点ではモデルが明確に分かれる。分単位課金のモデル(whisper-1seed-asrqwen3-asr-flash、2 つの Chirp)は batch 専用で、streaming を指定すると gateway は 400 を返す。gpt-4o モデルは token 単位で streaming できる。gpt-4o-transcribe は約 1 秒で最初の単語を返し、その後も順次 text を埋めていく。real-time に近い UI には、この動作が必要になる。コストは batch と変わらない。streaming するには stream=true を追加する。

curl -N https://synthorai.io/v1/audio/transcriptions \
  -H "Authorization: Bearer $SYNTHORAI_API_KEY" \
  -F file=@meeting.mp3 -F model=gpt-4o-transcribe -F stream=true
# data: {"type":"transcript.text.delta","delta":"When"}
# data: {"type":"transcript.text.delta","delta":" you"} ...

cache

これらのモデルでは、実質的に cache は効かない。分単位課金のモデルは duration に基づいて課金されるため、同じ内容を繰り返しても割引されない。同じ clip を whisper-1 に 5 回送ったところ、毎回同じ $0.015478 が課金された。token 単位課金の gpt-4o モデルにも cache rate の記載はなく、繰り返し実行しても通常の実行間の変動しか見られなかった。したがって、分単位の rate を前提に設計すべきだ。同じ file を再送しても安くならない。

最初に確認すべきことと、自分で検証すべきこと

この test だけでは、実際の録音で最も精度が高いモデルは分からない。ただし、自社で評価する前に候補を絞るための条件は分かる。

  • 言語。 必要なすべての言語にモデルが対応しているか、言語を自動検出できるかを確認する。seed-asr は試したすべての言語に対応したが、language parameter の明示が必要だった。指定しないと、英語と中国語以外の音声は黙って失敗する。ほかの 6 モデルは自動検出するため、複数言語が混在する音声や言語不明の音声では、より安全な default になる。
  • streaming。 live の文字起こしが必要なら、token 単位で streaming できるのは gpt-4o モデルだけだ。分単位課金のモデルは batch 専用になる。
  • コスト。 約 8 倍の差がある。全言語をカバーする最安モデルは $0.0021 の qwen3-asr-flash だ。Chirp は最も高く、安価なモデルではなく Chirp を選ぶなら chirp-3 しかない。cache による削減はできないため、分単位の rate がそのまま支払額になる。
  • モデル種別。 汎用 multimodal model ではなく、文字起こし専用モデルを使う。逐語的な文字起こしには専用モデルが適しており、両方を提供する vendor もそう説明している。

これらの条件を満たすモデルを数個に絞ったら、残るのは自社音声での精度だ。accent、noise、語彙を含む実際の録音で、各モデルを自分で評価する必要がある。clean な音声の benchmark では、候補モデルを実データで試す工程を代替できない。

結論

主要言語の clean で台本どおりの音声では、7 モデルの精度はほぼ同じだった。これが今回の test で最も有用な結果だ。精度はモデル選定の基準にならない。一方で、baseline には明確な差がある。コストは約 8 倍開き、1 モデルは 2 言語しか自動検出できず、分単位課金のモデルは streaming できない。これらの条件で候補を絞り、勝者を決めるのではなく、残った 2 〜 3 モデルを自社音声で検証するべきだ。また、汎用 multimodal model ではなく、文字起こし専用モデルを選ぶ。両方を開発している vendor も、その使い分けを推奨している。


出典

コストと latency は、2026-06-25 に Synthorai 上で計測した。対象は文字起こし専用の 7 モデルと 5 言語(英語、標準中国語、ヒンディー語、スペイン語、フランス語)で、x-total-cost-usd header と SSE timing を使用した。seed-asr の言語別結果は、2026-07-04 に language parameter を指定して再計測した値である。音声は text-to-speech で生成した意図的に簡単なデータのため、精度の数値は品質 benchmark ではなく最低限の確認にすぎない。accent や noise を含む実際の音声では、異なる差が出る。latency は実行ごとに変動する。表示価格は、その時点におけるこの platform の rate である。利用前に最新の価格を確認すること。

← ブログに戻る