音声文字起こし
/v1/audio/transcriptions音声文字起こしAPIです。multipart file、file_id、url、audio_urlに対応し、audio_dataには対応していません。
文字起こしモードの選択
| シナリオ | model | 返却形式 |
|---|---|---|
| 通常の音声文字起こし | moss-transcribe-1.0 | JSON / text |
| 複数話者の文字起こし | moss-transcribe-diarize-pro | JSON(segmentsを含む)。stream=trueでSSEを返すこともできます |
リクエストパラメータ
モデルID。通常の文字起こしにはmoss-transcribe-1.0を使用し、複数話者の文字起こし、ホットワード、SSEストリーミング出力にはmoss-transcribe-diarize-proを使用します。
multipart/form-dataでローカルの音声ファイルまたは動画ファイルを直接アップロードします。先にファイルアップロードAPIを呼び出す必要はありません。async=trueを指定しない場合は、文字起こし結果を同期的に返します。1ファイルあたり最大512 MB。
POST /v1/filesが返すファイルIDを参照します。
サーバーからアクセス可能なパブリックな音声URL。localhost、ループバックアドレス、プライベートネットワークのアドレスを指定することはできません。
urlの互換フィールドで、アクセス制限も同じです。新規の呼び出しではurlの使用を推奨します。
trueに設定すると話者分離の結果を返します。moss-transcribe-diarize-proのみ対応しています。指定しない場合またはfalseの場合は、完全なテキストのみを返します。
ホットワードのリスト。固有名詞、人名、ブランド名、業務用語の認識精度を向上させるために使用します。moss-transcribe-diarize-proのみ対応しています。最大20個、各30文字までです。指定しない場合または[]の場合は無効になります。multipart/form-dataを使用する場合は、JSON文字列配列として渡します(例:["MOSS","SGLang"])。
trueの指定にはmoss-transcribe-diarize-proのみが対応しており、SSEの文字起こしイベントを返すために使用します。async=trueと同時に指定することはできません。
文字起こし結果のフォーマット。非ストリーミングのデフォルトはjsonです。ストリーミングでは常にSSEイベントを返すため、verbose_jsonを明示的に指定することを推奨します。
trueに設定すると非同期タスクを作成し、タスクオブジェクトを即座に返します。stream=trueと同時に使用することはできません。
非同期タスクの完了後にコールバックするHTTPS URL。
対応フォーマットとアップロード制限
| 項目 | 説明 |
|---|---|
| 1ファイルのサイズ | 最大512 MB。直接アップロードと/v1/filesで同じ制限です。 |
| 対応フォーマット | AAC、AMR、FLAC、M4A、ALAC、MOV、MP3、MP4、MPG、OGG、OPUS、WAV、WebM、WMA |
| 音声・動画コンテナ | MOV、MP4、MPG、WebMはいずれも文字起こしできます |
戻り値
response_format=jsonでdiarizeを有効にしていない場合、文字起こしの完全なテキストを返します。
diarizeを有効にした場合、またはresponse_format=diarized_jsonを使用した場合、完全なテキストと話者ごとのセグメントを返します。
response_format=textの場合、プレーンテキストを直接返します。
stream=trueの場合、完了または失敗するまでサーバーイベントを継続的に返します。例ではストリーミング専用のverbose_jsonを使用しています。
async=trueの場合、タスクオブジェクトを即座に返します。結果はタスク照会APIで取得します。
エラーコード
入力ソース、ストリーミング / 非同期の組み合わせ、またはホットワードが不正です。
エラーの説明
以下の場合はパラメータエラーを返します。
keytermsが文字列の配列ではない。keytermsに文字列以外の要素が含まれている。- 通常の
moss-transcribe-1.0で空でないkeytermsを指定している。