概要

音声認識(STT)APIは、OpenAIのWhisperモデルに基づいてオーディオファイルをテキストに変換できます。様々な用途に対応:
  • オーディオファイルのテキスト転写
  • 多言語オーディオの英語翻訳
  • 複数のオーディオ形式入力をサポート
  • 複数の出力形式オプション提供
利用可能モデル一覧:
  • whisper-large-v3 —— 最新の大型Whisperモデル、多言語対応。中国語認識には適切なプロンプトと低温度値の使用が必要
  • whisper-1 —— 初代Whisperモデル、安定して信頼性があり、多言語対応
  • distil-whisper-large-v3-en —— 蒸留モデル、処理速度が速いが精度がやや低い、低温度値との組み合わせを推奨
パフォーマンス推奨事項:
  • 中国語オーディオの場合、whisper-large-v3モデルの使用を推奨、適切なプロンプトとより低い温度値(0.2など)を組み合わせて幻覚を減らす
  • 英語オーディオまたは高速処理が必要な場合、distil-whisper-large-v3-enモデルを使用
  • サポートされるオーディオ形式:mp3, mp4, mpeg, mpga, m4a, wav, webm
  • ファイルサイズ制限:最大25MB

モデル呼び出し方法

音声転写(Transcriptions)

/v1/audio/transcriptionsエンドポイントを使用、client.audio.transcriptions.create()メソッドで呼び出し、オーディオを元の言語のテキストに転写。

音声翻訳(Translations)

/v1/audio/translationsエンドポイントを使用、client.audio.translations.create()メソッドで呼び出し、オーディオを英語のテキストに翻訳。

リクエストパラメータ

転写パラメータ(Transcriptions)

file
file
required
転写するオーディオファイルオブジェクト。サポート形式:mp3, mp4, mpeg, mpga, m4a, wav, webm、最大25MB
model
string
required
使用するモデルID。オプション:whisper-large-v3whisper-1distil-whisper-large-v3-en
language
string
入力オーディオの言語、ISO-639-1形式(例:‘en’、‘ja’)。言語指定により精度と遅延を改善可能
prompt
string
モデルのスタイルを指導する、または以前のオーディオセグメントを続けるオプションのテキストプロンプト。プロンプトはオーディオ言語と一致する必要がある
response_format
string
転写出力形式。オプション:json(デフォルト)、textsrtverbose_jsonvtt
temperature
number
0と1の間のサンプリング温度。高い値はより無作為な出力を、低い値はより集中した決定的な出力を生成。デフォルトは0
timestamp_granularities[]
array
タイムスタンプの粒度。オプション:wordsegment。response_formatがverbose_jsonの場合のみ利用可能

翻訳パラメータ(Translations)

file
file
required
翻訳するオーディオファイルオブジェクト。転写と同じ形式
model
string
required
使用するモデルID、転写パラメータと同じ
prompt
string
翻訳スタイルを指導するオプションの英語テキストプロンプト
response_format
string
翻訳出力形式、転写パラメータと同じ
temperature
number
サンプリング温度、転写パラメータと同じ

使用方法

curl https://aihubmix.com/v1/audio/transcriptions \
  -H "Authorization: Bearer $AIHUBMIX_API_KEY" \
  -H "Content-Type: multipart/form-data" \
  -F file="@/path/to/file/audio.mp3" \
  -F model="whisper-large-v3" \
  -F response_format="text" \
  -F temperature="0.2"

レスポンス形式

JSON形式(デフォルト)

{
  "text": "これは転写されたテキストの内容です"
}

詳細JSON形式(verbose_json)

{
  "task": "transcribe",
  "language": "japanese",
  "duration": 8.470000267028809,
  "text": "これは転写されたテキストの内容です",
  "segments": [
    {
      "id": 0,
      "seek": 0,
      "start": 0.0,
      "end": 8.470000267028809,
      "text": " これは転写されたテキストの内容です",
      "tokens": [50364, 50365, 50365, 50365],
      "temperature": 0.2,
      "avg_logprob": -0.9929364013671875,
      "compression_ratio": 0.8888888888888888,
      "no_speech_prob": 0.0963134765625
    }
  ]
}

テキスト形式

これは転写されたテキストの内容です

SRT形式

1
00:00:00,000 --> 00:00:08,470
これは転写されたテキストの内容です

VTT形式

WEBVTT

00:00:00.000 --> 00:00:08.470
これは転写されたテキストの内容です

ベストプラクティス

  1. 日本語オーディオ処理whisper-large-v3モデルを使用、language="ja"を設定、temperature=0.2、適切な日本語プロンプトを提供
  2. 英語オーディオ処理:より高速な処理速度を得るためにdistil-whisper-large-v3-enを使用可能
  3. ノイズ処理:バックグラウンドノイズを無視したり、どもりを除去するようにプロンプトを使用
  4. 長いオーディオ処理:APIが長いオーディオを自動的にセグメント処理、最良の結果を得るためオーディオ品質の前処理を推奨
  5. タイムスタンプが必要な場合:正確なタイムスタンプが必要な時はverbose_json形式とtimestamp_granularitiesを使用
  6. 字幕作成:追加処理なしでsrtまたはvtt形式出力を直接使用