メインコンテンツへスキップ
このページでは、Voice File Job の作成、音声のアップロード、結果の取得までのエンドツーエンドの流れを説明します。現在の実装では、クライアントからアップロード完了を通知する方式(S3 イベントは使用しません)を採用しています。

必要なもの

  • API key: Authorization: Bearer {id}.{secret}
  • transcriptLocaleHints: 最大 1 つ(任意)
    • 指定しない場合、言語は自動的に検出されます
  • translationLocales: 最大 5 つ(任意)

エンドツーエンドのチェックリスト

  1. ジョブを作成 → { id, uploadUri } を受け取る
  2. 音声を uploadUri にアップロード
  3. PUT /v1/external/voice-file/jobs/{jobId}/upload-complete を呼び出す
  4. ジョブのステータスを完了までポーリング
  5. transcript と(任意で)translations を取得
  6. コンテンツをより深く理解するために paragraph summary を取得

ポーリング戦略(推奨)

  • GET /v1/external/voice-file/jobs/{jobId} を指数バックオフでポーリングします
    • 1〜2 秒間隔から始め、4 秒、8 秒と増やし、最大 30 秒まで
    • 停止条件:
      • 成功: status = COMPLETED
      • 失敗: status = FAILED
    • 成功後:
      • 必ず transcript を取得: GET /v1/external/voice-file/jobs/{jobId}/transcript
      • translations をリクエストした場合: GET /v1/external/voice-file/jobs/{jobId}/translations またはロケール別のエンドポイント
      • paragraph summary を取得:
        • transcript の場合: GET /v1/external/voice-file/jobs/{jobId}/transcript/paragraph-summary
        • translations の場合: GET /v1/external/voice-file/jobs/{jobId}/translations/{locale}/paragraph-summary
処理が正常に完了した場合の最終ステータスは COMPLETED です。これは、transcript、translation(リクエストした場合)、およびその両方の paragraph summary を含む、すべての処理が完了したことを意味します。

ファイルの制限と要件

サポートされる音声フォーマット

業界標準の STT 機能に基づき、Tiro は以下のフォーマットをサポートしています。 音声フォーマット:
FormatMIME TypeExtension
MP3audio/mpeg.mp3
WAVaudio/wav.wav
M4Aaudio/mp4.m4a
動画フォーマット(音声抽出):
FormatMIME TypeExtension
MP4video/mp4.mp4

ファイルサイズと長さの制限

制限の種類備考
最大ファイルサイズ500 MBほとんどのユースケースで十分な実用的な上限
最大の長さ4 時間ほとんどの会議やインタビューをカバー
最小サンプルレート8 kHz音声認識の最小値
推奨サンプルレート16 kHz+精度に最適
最大サンプルレート48 kHzスタジオ品質に対応
チャンネルモノラルまたはステレオ複数話者に対応

処理時間の目安

処理時間は、長いファイルに対する並列処理によって最適化されています。
ファイルの長さ一般的な処理時間
5 分未満45〜75 秒
5〜20 分1〜3 分
20〜60 分3〜6 分
1〜4 時間6〜18 分

Paragraph Summary 機能

Paragraph Summary 機能は、音声コンテンツのインテリジェントな要約を提供し、transcript や translation を段落単位の理解しやすい要約に分割します。

仕組み

  1. Transcript の処理: 文字起こしが完了すると、CompositeTextSplitter を使ってテキストが自動的に論理的な段落に分割されます
  2. 要約の生成: 各段落は ParagraphSummarizer を通して処理され、簡潔な要約が作成されます
  3. Translation との統合: translations がリクエストされた場合、各ロケールについて、翻訳されたコンテンツに基づいて要約が再生成されます
  4. 非同期処理: 要約の生成は、transcript / translation の完了後に非同期で行われます

シーケンス

試してみる準備はできましたか? ステップバイステップ・チュートリアル で、アップロードからポーリング、そして最初の transcript の取得まで、一連の流れを最後まで体験できます。