{
  "aboutHtml": "<p>ElevenLabs Scribe v2は、録音済みの音声、文字起こし、字幕作成、キャプション作成向けのバッチ音声認識モデルです。Scribe v1を基盤に、長い録音、間、声の調子の変化、長い無音区間への対応を改善しています。結果は、時刻情報と、任意の話者・音声イベント注釈を含む発話テキストです。Scribe v2 Realtimeは別のライブ文字起こし版であり、このモデルの目的は録音全体の処理です。</p><p>メーカーは、90を超える言語での認識と、途中で言語が切り替わる録音を含む自動言語検出を文書化しています。言語がわかっている場合、そのヒントは音声の解釈に役立ちます。明瞭な録音を準備し、元の言語と名前を維持して、深刻なクリッピングや、発話の細部を失わせる不要な処理を避けてください。文書化された一般的な入力には、WAV、MP3、FLAC、M4A、AAC、OGG、Opus、WebMがあります。文字起こしの実装が対応する入力表現を選び、確認用に元の録音を保持します。</p><p>標準の応答には、認識したテキスト、検出した言語の情報、時刻付きの単語列が含まれます。単語レコードには、開始・終了時刻、話者識別子、認識の対数確率が含まれることがあります。これらにより、字幕、検索可能なインタビュー、該当する音声に戻れる編集環境で結果を活用できます。時刻情報付きの結果を元の音声とともに保持してください。例えばポッドキャストでは、編集可能な文字起こしと、字幕を配置する前に訂正箇所を見つけられる単語対応の記録を成果物にできます。</p><p>話者分離は、複数の話者が含まれる音声で、誰がいつ話したかをラベル付けします。メーカーは最大32人の話者を文書化しています。発話の切り替わりが重要な場合は有効にし、話者数がわかっている場合は妥当な人数を指定してください。検出された話者ラベルと、確認済みの人物名を区別します。インタビューや会議では、特に声が重なる部分や声が似ている部分で、発話の切り替わりを録音と照合してください。ラベルは文字起こしの整理に役立ちますが、それだけで話者の身元を確定するものではありません。</p><p>各チャンネルに一人の話者がいる録音は、複数の声を一つのチャンネルに混ぜた録音とは構造が異なります。開発元のインターフェースでは、最大5チャンネルを独立して処理し、個別の文字起こし、またはチャンネル番号付きで時刻順にまとめた文字起こしを返せます。意味のあるチャンネル構成は維持してください。分離した通話録音を文字起こし前に一つに混ぜると、有用な話者情報が失われることがあります。チャンネルに基づく帰属と、混合音声から推定した話者分離を区別します。複数チャンネルをまとめた応答にはタイムスタンプが必要で、エンティティ検出やマスキングは含められません。</p><p>キーワードの指定は、名前、製品用語、専門語彙の認識を文脈から導きます。現行のバッチ文書では最大1,000件の用語を認め、各用語は50文字未満、かつ5単語以内とされています。広範で無関係な一覧ではなく、関連する綴りを提供してください。技術インタビューなら、登場しそうな製品名や略語を指定し、結果のタイムスタンプで確認します。キーワードは認識に方向付けを与えるものであり、録音に根拠がない語を挿入する指示ではありません。</p><p>読みやすく整える前に、文字起こしの目的を選びます。逐語記録は発話の文言を残し、文書化されたno-verbatimオプションは、フィラー、言いかけ、発話のつかえを除いて読みやすくします。動的な音声タグ付けは、笑い声や足音など、発話以外の音のイベントを識別できます。整えた文字起こしは字幕や閲覧に役立つ場合がありますが、繰り返し、言い直し、発話以外の音が重要な作業では、元の記録を黙って置き換えてはいけません。</p><p>メーカーは、エンティティ検出と試験的な文字起こし編集も文書化しています。開発元のインターフェースでは、文字起こし編集と、エンティティ検出、エンティティのマスキング、複数チャンネルの文字起こしを組み合わせることはできません。検出したエンティティは、文字起こし内の選択された情報について、構造化された位置を示します。任意のエンティティのマスキングは、検出したテキストを代替ラベルで隠します。エンティティ検出に依存し、有効時にはエンティティ一覧が返されません。マスキングは文字起こし中に行われ、汎用の置換マーカー、分類ラベル、番号付き分類ラベルを使います。自動マスキングでは機微情報を見落とすことがあるため、共有前にマスキング済みの文字起こしを確認してください。自然言語による編集は、元の結果と並べて編集後のテキストを返し、元の時刻情報と話者記録も利用可能なままにします。これらの成果物は区別して保持します。綴りの訂正や文の再整形は、音声と対応付けたり後続の抽出に使ったりする前に、改めて確認が必要な場合があります。これらの機能は文字起こしを処理するもので、重要な詳細がすべて正しく認識されたことを証明するものではありません。</p><p>文字起こしを仕上げるには、対応する音声に戻り、名前、数字、否定、話者の交代を確認します。文章の自然さだけで品質を判断せず、音量の小さい区間、声の重なり、言語の切り替わりに注意してください。聞き取れない部分をもっともらしい文で補うのではなく、不確かな文言を訂正用に残します。有用な結果は、用途に必要な時刻情報と話者情報を備えた、確認済みのテキスト記録です。その後、別の要約、翻訳、分析工程への入力として文字起こしを使えます。</p>",
  "aboutText": "ElevenLabs Scribe v2は、録音済みの音声、文字起こし、字幕作成、キャプション作成向けのバッチ音声認識モデルです。Scribe v1を基盤に、長い録音、間、声の調子の変化、長い無音区間への対応を改善しています。結果は、時刻情報と、任意の話者・音声イベント注釈を含む発話テキストです。Scribe v2 Realtimeは別のライブ文字起こし版であり、このモデルの目的は録音全体の処理です。\n\nメーカーは、90を超える言語での認識と、途中で言語が切り替わる録音を含む自動言語検出を文書化しています。言語がわかっている場合、そのヒントは音声の解釈に役立ちます。明瞭な録音を準備し、元の言語と名前を維持して、深刻なクリッピングや、発話の細部を失わせる不要な処理を避けてください。文書化された一般的な入力には、WAV、MP3、FLAC、M4A、AAC、OGG、Opus、WebMがあります。文字起こしの実装が対応する入力表現を選び、確認用に元の録音を保持します。\n\n標準の応答には、認識したテキスト、検出した言語の情報、時刻付きの単語列が含まれます。単語レコードには、開始・終了時刻、話者識別子、認識の対数確率が含まれることがあります。これらにより、字幕、検索可能なインタビュー、該当する音声に戻れる編集環境で結果を活用できます。時刻情報付きの結果を元の音声とともに保持してください。例えばポッドキャストでは、編集可能な文字起こしと、字幕を配置する前に訂正箇所を見つけられる単語対応の記録を成果物にできます。\n\n話者分離は、複数の話者が含まれる音声で、誰がいつ話したかをラベル付けします。メーカーは最大32人の話者を文書化しています。発話の切り替わりが重要な場合は有効にし、話者数がわかっている場合は妥当な人数を指定してください。検出された話者ラベルと、確認済みの人物名を区別します。インタビューや会議では、特に声が重なる部分や声が似ている部分で、発話の切り替わりを録音と照合してください。ラベルは文字起こしの整理に役立ちますが、それだけで話者の身元を確定するものではありません。\n\n各チャンネルに一人の話者がいる録音は、複数の声を一つのチャンネルに混ぜた録音とは構造が異なります。開発元のインターフェースでは、最大5チャンネルを独立して処理し、個別の文字起こし、またはチャンネル番号付きで時刻順にまとめた文字起こしを返せます。意味のあるチャンネル構成は維持してください。分離した通話録音を文字起こし前に一つに混ぜると、有用な話者情報が失われることがあります。チャンネルに基づく帰属と、混合音声から推定した話者分離を区別します。複数チャンネルをまとめた応答にはタイムスタンプが必要で、エンティティ検出やマスキングは含められません。\n\nキーワードの指定は、名前、製品用語、専門語彙の認識を文脈から導きます。現行のバッチ文書では最大1,000件の用語を認め、各用語は50文字未満、かつ5単語以内とされています。広範で無関係な一覧ではなく、関連する綴りを提供してください。技術インタビューなら、登場しそうな製品名や略語を指定し、結果のタイムスタンプで確認します。キーワードは認識に方向付けを与えるものであり、録音に根拠がない語を挿入する指示ではありません。\n\n読みやすく整える前に、文字起こしの目的を選びます。逐語記録は発話の文言を残し、文書化されたno-verbatimオプションは、フィラー、言いかけ、発話のつかえを除いて読みやすくします。動的な音声タグ付けは、笑い声や足音など、発話以外の音のイベントを識別できます。整えた文字起こしは字幕や閲覧に役立つ場合がありますが、繰り返し、言い直し、発話以外の音が重要な作業では、元の記録を黙って置き換えてはいけません。\n\nメーカーは、エンティティ検出と試験的な文字起こし編集も文書化しています。開発元のインターフェースでは、文字起こし編集と、エンティティ検出、エンティティのマスキング、複数チャンネルの文字起こしを組み合わせることはできません。検出したエンティティは、文字起こし内の選択された情報について、構造化された位置を示します。任意のエンティティのマスキングは、検出したテキストを代替ラベルで隠します。エンティティ検出に依存し、有効時にはエンティティ一覧が返されません。マスキングは文字起こし中に行われ、汎用の置換マーカー、分類ラベル、番号付き分類ラベルを使います。自動マスキングでは機微情報を見落とすことがあるため、共有前にマスキング済みの文字起こしを確認してください。自然言語による編集は、元の結果と並べて編集後のテキストを返し、元の時刻情報と話者記録も利用可能なままにします。これらの成果物は区別して保持します。綴りの訂正や文の再整形は、音声と対応付けたり後続の抽出に使ったりする前に、改めて確認が必要な場合があります。これらの機能は文字起こしを処理するもので、重要な詳細がすべて正しく認識されたことを証明するものではありません。\n\n文字起こしを仕上げるには、対応する音声に戻り、名前、数字、否定、話者の交代を確認します。文章の自然さだけで品質を判断せず、音量の小さい区間、声の重なり、言語の切り替わりに注意してください。聞き取れない部分をもっともらしい文で補うのではなく、不確かな文言を訂正用に残します。有用な結果は、用途に必要な時刻情報と話者情報を備えた、確認済みのテキスト記録です。その後、別の要約、翻訳、分析工程への入力として文字起こしを使えます。",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "8d2b00952375f9dbdb6950217bfa3d93731f968ff35e0033985ae5858aec6509",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "ja",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">ElevenLabs: Scribe v2</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"閉じる\">×</button></div><div class=\"idline\"><span>ElevenLabs /</span><code>elevenlabs/scribe-v2</code><button type=\"button\" id=\"copy-id\">IDをコピー</button></div><nav class=\"card-jump-nav\" aria-label=\"モデルカードのセクション\"><button type=\"button\" data-card-jump=\"overview\">はじめに</button><button type=\"button\" data-card-jump=\"methods\">入力とメソッド</button><button type=\"button\" data-card-jump=\"pricing\">料金</button><button type=\"button\" data-card-jump=\"examples\">例</button><button type=\"button\" data-card-jump=\"results\">結果</button><button type=\"button\" data-card-jump=\"aliases\">エイリアス</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"APIメソッド\"><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-0\" data-card-method=\"Ultra|transcriptions|/v1/audio/transcriptions|elevenlabs%2Fscribe-v2\">認識</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">はじめに</h3><p class=\"mdesc-full\">ElevenLabs Scribe v2は、90以上の言語の録音音声を、単語単位の時刻情報、任意の話者分離、発話以外の音のイベントタグ付きで文字起こしします。長時間の録音、字幕、編集可能な文字起こし向けに設計され、文脈に応じたキーワード指定と、逐語または読みやすく整える文字起こしを選べます。</p><dl class=\"card-io\" data-card-io><div><dt>対応する入力</dt><dd>音声</dd></div><div><dt>結果</dt><dd>テキスト</dd></div></dl><details class=\"card-about\"><summary>モデルについて</summary><p class=\"note-s\" data-model-method-boundary>この説明はモデルの機能を紹介するものです。Ailootで利用できる入力、出力、オプションは、選択したメソッドごとに以下に記載されています。</p><div class=\"mabout\" id=\"m-about\"><p>ElevenLabs Scribe v2は、録音済みの音声、文字起こし、字幕作成、キャプション作成向けのバッチ音声認識モデルです。Scribe v1を基盤に、長い録音、間、声の調子の変化、長い無音区間への対応を改善しています。結果は、時刻情報と、任意の話者・音声イベント注釈を含む発話テキストです。Scribe v2 Realtimeは別のライブ文字起こし版であり、このモデルの目的は録音全体の処理です。</p><p>メーカーは、90を超える言語での認識と、途中で言語が切り替わる録音を含む自動言語検出を文書化しています。言語がわかっている場合、そのヒントは音声の解釈に役立ちます。明瞭な録音を準備し、元の言語と名前を維持して、深刻なクリッピングや、発話の細部を失わせる不要な処理を避けてください。文書化された一般的な入力には、WAV、MP3、FLAC、M4A、AAC、OGG、Opus、WebMがあります。文字起こしの実装が対応する入力表現を選び、確認用に元の録音を保持します。</p><p>標準の応答には、認識したテキスト、検出した言語の情報、時刻付きの単語列が含まれます。単語レコードには、開始・終了時刻、話者識別子、認識の対数確率が含まれることがあります。これらにより、字幕、検索可能なインタビュー、該当する音声に戻れる編集環境で結果を活用できます。時刻情報付きの結果を元の音声とともに保持してください。例えばポッドキャストでは、編集可能な文字起こしと、字幕を配置する前に訂正箇所を見つけられる単語対応の記録を成果物にできます。</p><p>話者分離は、複数の話者が含まれる音声で、誰がいつ話したかをラベル付けします。メーカーは最大32人の話者を文書化しています。発話の切り替わりが重要な場合は有効にし、話者数がわかっている場合は妥当な人数を指定してください。検出された話者ラベルと、確認済みの人物名を区別します。インタビューや会議では、特に声が重なる部分や声が似ている部分で、発話の切り替わりを録音と照合してください。ラベルは文字起こしの整理に役立ちますが、それだけで話者の身元を確定するものではありません。</p><p>各チャンネルに一人の話者がいる録音は、複数の声を一つのチャンネルに混ぜた録音とは構造が異なります。開発元のインターフェースでは、最大5チャンネルを独立して処理し、個別の文字起こし、またはチャンネル番号付きで時刻順にまとめた文字起こしを返せます。意味のあるチャンネル構成は維持してください。分離した通話録音を文字起こし前に一つに混ぜると、有用な話者情報が失われることがあります。チャンネルに基づく帰属と、混合音声から推定した話者分離を区別します。複数チャンネルをまとめた応答にはタイムスタンプが必要で、エンティティ検出やマスキングは含められません。</p><p>キーワードの指定は、名前、製品用語、専門語彙の認識を文脈から導きます。現行のバッチ文書では最大1,000件の用語を認め、各用語は50文字未満、かつ5単語以内とされています。広範で無関係な一覧ではなく、関連する綴りを提供してください。技術インタビューなら、登場しそうな製品名や略語を指定し、結果のタイムスタンプで確認します。キーワードは認識に方向付けを与えるものであり、録音に根拠がない語を挿入する指示ではありません。</p><p>読みやすく整える前に、文字起こしの目的を選びます。逐語記録は発話の文言を残し、文書化されたno-verbatimオプションは、フィラー、言いかけ、発話のつかえを除いて読みやすくします。動的な音声タグ付けは、笑い声や足音など、発話以外の音のイベントを識別できます。整えた文字起こしは字幕や閲覧に役立つ場合がありますが、繰り返し、言い直し、発話以外の音が重要な作業では、元の記録を黙って置き換えてはいけません。</p><p>メーカーは、エンティティ検出と試験的な文字起こし編集も文書化しています。開発元のインターフェースでは、文字起こし編集と、エンティティ検出、エンティティのマスキング、複数チャンネルの文字起こしを組み合わせることはできません。検出したエンティティは、文字起こし内の選択された情報について、構造化された位置を示します。任意のエンティティのマスキングは、検出したテキストを代替ラベルで隠します。エンティティ検出に依存し、有効時にはエンティティ一覧が返されません。マスキングは文字起こし中に行われ、汎用の置換マーカー、分類ラベル、番号付き分類ラベルを使います。自動マスキングでは機微情報を見落とすことがあるため、共有前にマスキング済みの文字起こしを確認してください。自然言語による編集は、元の結果と並べて編集後のテキストを返し、元の時刻情報と話者記録も利用可能なままにします。これらの成果物は区別して保持します。綴りの訂正や文の再整形は、音声と対応付けたり後続の抽出に使ったりする前に、改めて確認が必要な場合があります。これらの機能は文字起こしを処理するもので、重要な詳細がすべて正しく認識されたことを証明するものではありません。</p><p>文字起こしを仕上げるには、対応する音声に戻り、名前、数字、否定、話者の交代を確認します。文章の自然さだけで品質を判断せず、音量の小さい区間、声の重なり、言語の切り替わりに注意してください。聞き取れない部分をもっともらしい文で補うのではなく、不確かな文言を訂正用に残します。有用な結果は、用途に必要な時刻情報と話者情報を備えた、確認済みのテキスト記録です。その後、別の要約、翻訳、分析工程への入力として文字起こしを使えます。</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Ailootで利用可能 · 入力とメソッド</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · 文字起こし</b> <code>POST /v1/audio/transcriptions</code></summary><dl class=\"method-capabilities\"><div><dt>入力の種類</dt><dd><code>audio</code></dd></div><div><dt>出力の種類</dt><dd><code>text</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>フィールド</th><th>種類</th><th>要件</th><th>値と制限</th><th>デフォルト</th></tr></thead><tbody><tr><th data-cell-label=\"フィールド\" scope=\"row\"><span class=\"card-cell-label\">フィールド</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"種類\" data-field-type><span class=\"card-cell-label\">種類</span><code>string</code></td><td data-cell-label=\"要件\"><span class=\"card-cell-label\">要件</span>必須</td><td data-cell-label=\"値と制限\"><span class=\"card-cell-label\">値と制限</span><div>elevenlabs/scribe-v2</div></td><td data-cell-label=\"デフォルト\" data-default=\"unspecified\"><span class=\"card-cell-label\">デフォルト</span>—</td></tr><tr><th data-cell-label=\"フィールド\" scope=\"row\"><span class=\"card-cell-label\">フィールド</span><code class=\"card-field-name\">input_audio</code></th><td data-cell-label=\"種類\" data-field-type><span class=\"card-cell-label\">種類</span><code>object</code></td><td data-cell-label=\"要件\"><span class=\"card-cell-label\">要件</span>必須</td><td data-cell-label=\"値と制限\"><span class=\"card-cell-label\">値と制限</span></td><td data-cell-label=\"デフォルト\" data-default=\"unspecified\"><span class=\"card-cell-label\">デフォルト</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>メソッドのパラメータとライフサイクル</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>パラメータ</th><th>仕様</th></tr></thead><tbody><tr><th data-cell-label=\"パラメータ\" scope=\"row\"><span class=\"card-cell-label\">パラメータ</span><code>content_type</code></th><td data-cell-label=\"仕様\"><span class=\"card-cell-label\">仕様</span>application/json</td></tr><tr><th data-cell-label=\"パラメータ\" scope=\"row\"><span class=\"card-cell-label\">パラメータ</span><code>required</code></th><td data-cell-label=\"仕様\"><span class=\"card-cell-label\">仕様</span>model, input_audio</td></tr><tr><th data-cell-label=\"パラメータ\" scope=\"row\"><span class=\"card-cell-label\">パラメータ</span><code>material_types</code></th><td data-cell-label=\"仕様\"><span class=\"card-cell-label\">仕様</span>audio</td></tr><tr><th data-cell-label=\"パラメータ\" scope=\"row\"><span class=\"card-cell-label\">パラメータ</span><code>material_conditions</code></th><td data-cell-label=\"仕様\"><span class=\"card-cell-label\">仕様</span>この例では、実際の空でないPCM WAVファイルを読み込み、ファイル全体のバイト列をbase64にエンコードして、input_audio.formatをwavとして送信します。</td></tr></tbody></table></div><p>ライフサイクル: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · 既存の所有メディアレコードにある正確なtask_id</p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}/content</code></p><p class=\"note-s\"><code>GET /v1/media/assets</code></p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}</code></p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">料金</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>料金情報はリクエストの機能を追加しません。対応するパラメーターは選択したメソッドに記載されています。</p><dl data-price-conditions><dt>高速モード</dt><dd>未指定 <span class=\"note-s\">高速モードが選択されている場合</span></dd><dt>Flex モード</dt><dd>未指定 <span class=\"note-s\">flex モードが選択されている場合</span></dd><dt>最大推論量</dt><dd>未指定 <span class=\"note-s\">推論量が最大で、調整に既定値（default）を使用する場合</span></dd></dl></div><div data-declared-tariff-pricing><h4>Ailootの料金</h4><h4>設定別の価格</h4><p class=\"note-s\">各料金を表示された条件と照合してください。選択肢となる設定の各組には、いずれか1つの料金を適用します。</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>設定</th><th>料金表</th><th>課金単位</th><th>料金</th></tr></thead><tbody><tr><th data-cell-label=\"設定\" scope=\"row\"><span class=\"card-cell-label\">設定</span>基本トークン料金</th><td data-cell-label=\"料金表\"><span class=\"card-cell-label\">料金表</span>基本料金</td><td data-cell-label=\"課金単位\"><span class=\"card-cell-label\">課金単位</span>—</td><td data-cell-label=\"料金\"><span class=\"card-cell-label\">料金</span><div><span>入力 · 入力トークン</span> <b>—</b> <span class=\"price-unit\">/ 1K トークン</span></div><div><span>出力 · 出力トークン</span> <b>—</b> <span class=\"price-unit\">/ 1K トークン</span></div><div><span>入力 · キャッシュ読み取り</span> <b>—</b> <span class=\"price-unit\">/ 1K トークン</span></div><div><span>入力 · キャッシュ書き込み</span> <b>—</b> <span class=\"price-unit\">/ 1K トークン</span></div><div><span>入力 · キャッシュ書き込み、1時間</span> <b>—</b> <span class=\"price-unit\">/ 1K トークン</span></div></td></tr><tr><th data-cell-label=\"設定\" scope=\"row\"><span class=\"card-cell-label\">設定</span>入力音声の秒</th><td data-cell-label=\"料金表\"><span class=\"card-cell-label\">料金表</span>—</td><td data-cell-label=\"課金単位\"><span class=\"card-cell-label\">課金単位</span>入力音声1秒あたり</td><td data-cell-label=\"料金\"><span class=\"card-cell-label\">料金</span><div><span>入力 · 入力音声の秒</span> <b>$0.0001222222222222</b> <span class=\"price-unit\">入力音声1秒あたり</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailootはリクエスト前に見積額を確保します。結果の取得後、実測使用量に基づいて最終料金を精算します。ストリーミング時の精算には最終の使用量記録を使用します。<a href=\"/docs/ja/billing/reserve/\">金額の確保と精算の仕組み →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">リクエスト例</h3><h4>Ailoot Ultra · 文字起こし</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"コードの種類\"><button class=\"cg-tab\" id=\"model-code-1328-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1328-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · 実際の WAV ファイルと元の結果全体</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"コードをコピー\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-1328-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1328-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\n: &quot;${AILOOT_AUDIO_FILE:?Set the path to your actual PCM WAV recording}&quot;\nexport AILOOT_AUDIO_FILE\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport base64, io, json, os, wave\nfrom pathlib import Path\naudio = Path(os.environ[&#39;AILOOT_AUDIO_FILE&#39;]).read_bytes()\nif not (audio[:4] == b&#39;RIFF&#39; and audio[8:12] == b&#39;WAVE&#39;):\n    raise SystemExit(&#39;Supply your actual PCM WAV audio file&#39;)\nwith wave.open(io.BytesIO(audio), &#39;rb&#39;) as recording:\n    if recording.getcomptype() != &#39;NONE&#39; or recording.getnframes() &lt;= 0:\n        raise SystemExit(&#39;Supply a nonempty PCM WAV recording&#39;)\nrequest = {&#39;model&#39;: &#39;elevenlabs/scribe-v2&#39;, &#39;input_audio&#39;: {&#39;data&#39;: base64.b64encode(audio).decode(&#39;ascii&#39;), &#39;format&#39;: &#39;wav&#39;}}\nPath(&#39;request.json&#39;).write_text(json.dumps(request, ensure_ascii=False), encoding=&#39;utf-8&#39;)\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete original response, headers and actual X-Client-Request-ID.\n# Read existing owned records for recovery; do not resubmit an uncertain operation.\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">結果を受け取って保存</h3><h4>Ailoot Ultra · 文字起こし</h4><p class=\"note-s\">元のレスポンス本文全体、ステータス、および転送されたヘッダー。このハンドラーは共通のJSON構造、テキストフィールド、タスクの外側の構造を追加しません。</p><ul class=\"card-result-paths\"><li><code>GET /v1/media/tasks/{task_id}</code></li><li><code>GET /v1/media/assets/{asset_id}/content</code></li><li><code>GET /v1/media/assets</code></li><li><code>GET /v1/media/assets/{asset_id}</code></li></ul><div class=\"card-result-process\" data-all-results><h5>完了した結果をすべて保存</h5><p class=\"note-s\">返された完全なレスポンス、ファイル、コンテンツ部分をすべて保存してください。</p><p class=\"note-s\">レスポンスとヘッダーの全体、実際の出力すべて、最初に返された識別子、使用量フィールドすべてを保存してください。作成リクエストを再送せずに、元の操作を復旧してください。</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>元のレスポンスを確認する場合</h5><p class=\"note-s\">実際のX-Client-Request-IDと完全なレスポンスを保持してください。元の所有アセットと、その正確な署名付きコンテンツURLを読み取ってください。結果が不確かな作成リクエストは、決して再送信しないでください。</p></div><details class=\"card-about\" data-output-fields><summary>レスポンスのフィールド</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>フィールド</th><th>種類</th></tr></thead><tbody><tr><th data-cell-label=\"フィールド\" scope=\"row\"><span class=\"card-cell-label\">フィールド</span><code class=\"card-field-name\">text (when present)</code></th><td data-cell-label=\"種類\" data-field-type><span class=\"card-cell-label\">種類</span></td></tr><tr><th data-cell-label=\"フィールド\" scope=\"row\"><span class=\"card-cell-label\">フィールド</span><code class=\"card-field-name\">usage (when present)</code></th><td data-cell-label=\"種類\" data-field-type><span class=\"card-cell-label\">種類</span></td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>エラーと次の手順</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>レスポンス</th><th>条件</th><th>次の手順</th></tr></thead><tbody><tr><th data-cell-label=\"レスポンス\" scope=\"row\"><span class=\"card-cell-label\">レスポンス</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"条件\"><span class=\"card-cell-label\">条件</span>JSON本文、または明示された正規モデルIDが無効です。</td><td data-cell-label=\"次の手順\"><span class=\"card-cell-label\">次の手順</span>レスポンスを保持し、指摘されたリクエストフィールドを修正してください。</td></tr><tr><th data-cell-label=\"レスポンス\" scope=\"row\"><span class=\"card-cell-label\">レスポンス</span>401 · <code>authentication_error</code></th><td data-cell-label=\"条件\"><span class=\"card-cell-label\">条件</span>Ailoot APIキーが無効です。</td><td data-cell-label=\"次の手順\"><span class=\"card-cell-label\">次の手順</span>利用権限のあるAiloot APIキーを使用してください。</td></tr><tr><th data-cell-label=\"レスポンス\" scope=\"row\"><span class=\"card-cell-label\">レスポンス</span>403 · <code>permission_error</code></th><td data-cell-label=\"条件\"><span class=\"card-cell-label\">条件</span>このキーのグループでは、このメソッドの利用が許可されていません。</td><td data-cell-label=\"次の手順\"><span class=\"card-cell-label\">次の手順</span>返されたエラーの詳細を保持してください。</td></tr><tr><th data-cell-label=\"レスポンス\" scope=\"row\"><span class=\"card-cell-label\">レスポンス</span>404 · <code>not_found_error</code></th><td data-cell-label=\"条件\"><span class=\"card-cell-label\">条件</span>選択したメソッドには、利用が許可されたルートがありません。</td><td data-cell-label=\"次の手順\"><span class=\"card-cell-label\">次の手順</span>返されたエラーの詳細を保持してください。</td></tr><tr><th data-cell-label=\"レスポンス\" scope=\"row\"><span class=\"card-cell-label\">レスポンス</span>422 · <code>price_unavailable</code></th><td data-cell-label=\"条件\"><span class=\"card-cell-label\">条件</span>受諾済みの料金体系に必要な入力量、またはその上限を取得できません。</td><td data-cell-label=\"次の手順\"><span class=\"card-cell-label\">次の手順</span>レスポンスを保持し、受諾済みの料金体系で必要とされる入力表現を使用してください。</td></tr><tr><th data-cell-label=\"レスポンス\" scope=\"row\"><span class=\"card-cell-label\">レスポンス</span>503 · <code></code></th><td data-cell-label=\"条件\"><span class=\"card-cell-label\">条件</span>必要な保存領域、ルート、メソッド料金、または料金の仮押さえを利用できません。</td><td data-cell-label=\"次の手順\"><span class=\"card-cell-label\">次の手順</span>元のレスポンス全体を保持してください。料金の仮押さえ状態が不明でも、再送信が認められるわけではありません。</td></tr><tr><th data-cell-label=\"レスポンス\" scope=\"row\"><span class=\"card-cell-label\">レスポンス</span>502 · <code>server_error</code></th><td data-cell-label=\"条件\"><span class=\"card-cell-label\">条件</span>元の結果、使用量、または精算を確認する必要があります。</td><td data-cell-label=\"次の手順\"><span class=\"card-cell-label\">次の手順</span>実際のリクエストIDと元のレスポンスを保持してください。既存の所有レコードを読み取ってください。作成リクエストを再送信しないでください。</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">エイリアス</h3><h4>モデルのエイリアス</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=elevenlabs%2Fscribe-v2&amp;route=Ultra&amp;caller=elevenlabs%2Fscribe-v2&amp;fmt=transcriptions\"><code>elevenlabs/scribe-v2</code></a></span></p><h4>メソッドパスのエイリアス</h4><p class=\"note-s\">上記に表示されたメソッドパスを使用してください。</p><h4>関連する呼び出し用ID</h4><p class=\"note-s\"><a href=\"#m=elevenlabs%2Fscribe-v2&amp;route=Ultra&amp;caller=elevenlabs%2Fscribe-v2&amp;fmt=transcriptions\"><code>elevenlabs/scribe-v2</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "elevenlabs/scribe-v2",
        "fmt": "transcriptions",
        "http": "POST",
        "path": "/v1/audio/transcriptions",
        "request_model_id": "elevenlabs/scribe-v2",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|transcriptions|/v1/audio/transcriptions|elevenlabs%2Fscribe-v2",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "errors": [
              {
                "code": null,
                "condition": "JSON本文、または明示された正規モデルIDが無効です。",
                "http_status": 400,
                "recovery": "レスポンスを保持し、指摘されたリクエストフィールドを修正してください。",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Ailoot APIキーが無効です。",
                "http_status": 401,
                "recovery": "利用権限のあるAiloot APIキーを使用してください。",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "このキーのグループでは、このメソッドの利用が許可されていません。",
                "http_status": 403,
                "recovery": "返されたエラーの詳細を保持してください。",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "選択したメソッドには、利用が許可されたルートがありません。",
                "http_status": 404,
                "recovery": "返されたエラーの詳細を保持してください。",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "受諾済みの料金体系に必要な入力量、またはその上限を取得できません。",
                "http_status": 422,
                "recovery": "レスポンスを保持し、受諾済みの料金体系で必要とされる入力表現を使用してください。",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "必要な保存領域、ルート、メソッド料金、または料金の仮押さえを利用できません。",
                "http_status": 503,
                "recovery": "元のレスポンス全体を保持してください。料金の仮押さえ状態が不明でも、再送信が認められるわけではありません。",
                "type": null
              },
              {
                "code": null,
                "condition": "元の結果、使用量、または精算を確認する必要があります。",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "実際のリクエストIDと元のレスポンスを保持してください。既存の所有レコードを読み取ってください。作成リクエストを再送信しないでください。",
                "response_headers": {
                  "x-should-retry": "false"
                },
                "type": "server_error"
              }
            ],
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed content URL"
                }
              ],
              "dedicated_method_polling_or_cancel": false,
              "mode": "synchronous_result_then_owned_library",
              "original_POST_adds_task_envelope": false,
              "status": [
                {
                  "http": "GET",
                  "id_source": "exact task_id from an existing owned media record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "実際のX-Client-Request-IDと完全なレスポンスを保持してください。元の所有アセットと、その正確な署名付きコンテンツURLを読み取ってください。結果が不確かな作成リクエストは、決して再送信しないでください。"
            },
            "outputs": {
              "all_results": "レスポンスとヘッダーの全体、実際の出力すべて、最初に返された識別子、使用量フィールドすべてを保存してください。作成リクエストを再送せずに、元の操作を復旧してください。",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "元のレスポンス本文全体、ステータス、および転送されたヘッダー。このハンドラーは共通のJSON構造、テキストフィールド、タスクの外側の構造を追加しません。"
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "elevenlabs/scribe-v2"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "input_audio",
                "required": true,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input_audio": {
                  "properties": {
                    "data": {
                      "contentEncoding": "base64",
                      "type": "string"
                    },
                    "format": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "data",
                    "format"
                  ],
                  "type": "object"
                },
                "model": {
                  "enum": [
                    "elevenlabs/scribe-v2"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input_audio"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": true,
              "body": {
                "input_audio": {
                  "data": "${BASE64_ACTUAL_WAV_BYTES}",
                  "format": "wav"
                },
                "model": "elevenlabs/scribe-v2"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "この例では、実際の空でないPCM WAVファイルを読み込み、ファイル全体のバイト列をbase64にエンコードして、input_audio.formatをwavとして送信します。"
            ],
            "material_types": [
              "audio"
            ],
            "required": [
              "model",
              "input_audio"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed content URL"
              }
            ],
            "dedicated_method_polling_or_cancel": false,
            "mode": "synchronous_result_then_owned_library",
            "original_POST_adds_task_envelope": false,
            "status": [
              {
                "http": "GET",
                "id_source": "既存の所有メディアレコードにある正確なtask_id",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain the actual X-Client-Request-ID and complete response. Read the original owned assets and their exact signed content URLs; never resubmit an uncertain creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/transcriptions"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "text",
            "fields": [
              {
                "description": null,
                "name": "text (when present)",
                "type": null
              },
              {
                "description": null,
                "name": "usage (when present)",
                "type": null
              }
            ],
            "result": "Complete original response body, status and forwarded headers. No universal JSON shape, text field or task envelope is added by this handler."
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.0001222222222222",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.0001222222222222",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_AUDIO_FILE:?Set the path to your actual PCM WAV recording}\"\nexport AILOOT_AUDIO_FILE\npython3 - <<'PY_REQUEST'\nimport base64, io, json, os, wave\nfrom pathlib import Path\naudio = Path(os.environ['AILOOT_AUDIO_FILE']).read_bytes()\nif not (audio[:4] == b'RIFF' and audio[8:12] == b'WAVE'):\n    raise SystemExit('Supply your actual PCM WAV audio file')\nwith wave.open(io.BytesIO(audio), 'rb') as recording:\n    if recording.getcomptype() != 'NONE' or recording.getnframes() <= 0:\n        raise SystemExit('Supply a nonempty PCM WAV recording')\nrequest = {'model': 'elevenlabs/scribe-v2', 'input_audio': {'data': base64.b64encode(audio).decode('ascii'), 'format': 'wav'}}\nPath('request.json').write_text(json.dumps(request, ensure_ascii=False), encoding='utf-8')\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete original response, headers and actual X-Client-Request-ID.\n# Read existing owned records for recovery; do not resubmit an uncertain operation.\n",
            "label": "curl · actual WAV file and complete original result",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "transcriptions",
        "hints": [
          "The example reads your actual nonempty PCM WAV file, encodes the complete file bytes as base64 and sends input_audio.format as wav.",
          "The format value in the example is the documented recipe; no model-specific format list, limit or default is asserted.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "audio"
        ],
        "label": "文字起こし",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_transcriptions",
        "out": null,
        "output": [
          "text"
        ],
        "path": "/v1/audio/transcriptions",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "per_request",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null,
          "unit_prices": {
            "audio_input_second": 0.0001222222222222
          }
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.0001222222222222",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.0001222222222222",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "request_model_id": "elevenlabs/scribe-v2",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.0001222222222222",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_second",
            "label": "input audio second",
            "native_amount_usd_per_unit": "0.0001222222222222",
            "native_quantity": 1,
            "public_unit_label": "per input audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_second"
          }
        ]
      }
    }
  ],
  "model_id": "elevenlabs/scribe-v2",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "9f634b546db982be9dfa6b383103c864ae3205e0bcbb1dcbf1d5d592189c8a7f",
    "input_html_sha256": "1ef2cc5cf424c27b9ec63723d79f8eb02fe9207fe19365b337ae46c4dda05da3",
    "private_audit_sha256": "6f45314f4ac73b9085e8f6f9d35ab46ee09d266ad1bbeaab22e74f8e881d73d7",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/ja/elevenlabs-scribe-v2/",
    "description": "ElevenLabs Scribe v2は、90以上の言語の録音音声を、単語単位の時刻情報、任意の話者分離、発話以外の音のイベントタグ付きで文字起こしします。長時間の録音、字幕、編集可能な文字起こし向けに設計され、文脈に応じたキーワード指定と、逐語または読みやすく整える文字起こしを選べます。",
    "locale": "ja",
    "md_url": "https://ailoot.ai/models/ja/elevenlabs-scribe-v2/index.md",
    "title": "ElevenLabs: Scribe v2 — Ailoot",
    "url": "https://ailoot.ai/models/ja/elevenlabs-scribe-v2/"
  },
  "rawModel": {
    "about": "ElevenLabs Scribe v2は、録音済みの音声、文字起こし、字幕作成、キャプション作成向けのバッチ音声認識モデルです。Scribe v1を基盤に、長い録音、間、声の調子の変化、長い無音区間への対応を改善しています。結果は、時刻情報と、任意の話者・音声イベント注釈を含む発話テキストです。Scribe v2 Realtimeは別のライブ文字起こし版であり、このモデルの目的は録音全体の処理です。\n\nメーカーは、90を超える言語での認識と、途中で言語が切り替わる録音を含む自動言語検出を文書化しています。言語がわかっている場合、そのヒントは音声の解釈に役立ちます。明瞭な録音を準備し、元の言語と名前を維持して、深刻なクリッピングや、発話の細部を失わせる不要な処理を避けてください。文書化された一般的な入力には、WAV、MP3、FLAC、M4A、AAC、OGG、Opus、WebMがあります。文字起こしの実装が対応する入力表現を選び、確認用に元の録音を保持します。\n\n標準の応答には、認識したテキスト、検出した言語の情報、時刻付きの単語列が含まれます。単語レコードには、開始・終了時刻、話者識別子、認識の対数確率が含まれることがあります。これらにより、字幕、検索可能なインタビュー、該当する音声に戻れる編集環境で結果を活用できます。時刻情報付きの結果を元の音声とともに保持してください。例えばポッドキャストでは、編集可能な文字起こしと、字幕を配置する前に訂正箇所を見つけられる単語対応の記録を成果物にできます。\n\n話者分離は、複数の話者が含まれる音声で、誰がいつ話したかをラベル付けします。メーカーは最大32人の話者を文書化しています。発話の切り替わりが重要な場合は有効にし、話者数がわかっている場合は妥当な人数を指定してください。検出された話者ラベルと、確認済みの人物名を区別します。インタビューや会議では、特に声が重なる部分や声が似ている部分で、発話の切り替わりを録音と照合してください。ラベルは文字起こしの整理に役立ちますが、それだけで話者の身元を確定するものではありません。\n\n各チャンネルに一人の話者がいる録音は、複数の声を一つのチャンネルに混ぜた録音とは構造が異なります。開発元のインターフェースでは、最大5チャンネルを独立して処理し、個別の文字起こし、またはチャンネル番号付きで時刻順にまとめた文字起こしを返せます。意味のあるチャンネル構成は維持してください。分離した通話録音を文字起こし前に一つに混ぜると、有用な話者情報が失われることがあります。チャンネルに基づく帰属と、混合音声から推定した話者分離を区別します。複数チャンネルをまとめた応答にはタイムスタンプが必要で、エンティティ検出やマスキングは含められません。\n\nキーワードの指定は、名前、製品用語、専門語彙の認識を文脈から導きます。現行のバッチ文書では最大1,000件の用語を認め、各用語は50文字未満、かつ5単語以内とされています。広範で無関係な一覧ではなく、関連する綴りを提供してください。技術インタビューなら、登場しそうな製品名や略語を指定し、結果のタイムスタンプで確認します。キーワードは認識に方向付けを与えるものであり、録音に根拠がない語を挿入する指示ではありません。\n\n読みやすく整える前に、文字起こしの目的を選びます。逐語記録は発話の文言を残し、文書化されたno-verbatimオプションは、フィラー、言いかけ、発話のつかえを除いて読みやすくします。動的な音声タグ付けは、笑い声や足音など、発話以外の音のイベントを識別できます。整えた文字起こしは字幕や閲覧に役立つ場合がありますが、繰り返し、言い直し、発話以外の音が重要な作業では、元の記録を黙って置き換えてはいけません。\n\nメーカーは、エンティティ検出と試験的な文字起こし編集も文書化しています。開発元のインターフェースでは、文字起こし編集と、エンティティ検出、エンティティのマスキング、複数チャンネルの文字起こしを組み合わせることはできません。検出したエンティティは、文字起こし内の選択された情報について、構造化された位置を示します。任意のエンティティのマスキングは、検出したテキストを代替ラベルで隠します。エンティティ検出に依存し、有効時にはエンティティ一覧が返されません。マスキングは文字起こし中に行われ、汎用の置換マーカー、分類ラベル、番号付き分類ラベルを使います。自動マスキングでは機微情報を見落とすことがあるため、共有前にマスキング済みの文字起こしを確認してください。自然言語による編集は、元の結果と並べて編集後のテキストを返し、元の時刻情報と話者記録も利用可能なままにします。これらの成果物は区別して保持します。綴りの訂正や文の再整形は、音声と対応付けたり後続の抽出に使ったりする前に、改めて確認が必要な場合があります。これらの機能は文字起こしを処理するもので、重要な詳細がすべて正しく認識されたことを証明するものではありません。\n\n文字起こしを仕上げるには、対応する音声に戻り、名前、数字、否定、話者の交代を確認します。文章の自然さだけで品質を判断せず、音量の小さい区間、声の重なり、言語の切り替わりに注意してください。聞き取れない部分をもっともらしい文で補うのではなく、不確かな文言を訂正用に残します。有用な結果は、用途に必要な時刻情報と話者情報を備えた、確認済みのテキスト記録です。その後、別の要約、翻訳、分析工程への入力として文字起こしを使えます。",
    "alias_of": null,
    "aliases": [],
    "author": "ElevenLabs",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "audio"
      ],
      "manufacturer_output": [
        "transcription"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.0001222222222222",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_second",
            "label": "input audio second",
            "native_amount_usd_per_unit": "0.0001222222222222",
            "native_quantity": 1,
            "public_unit_label": "per input audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_second"
          }
        ],
        "summary": "構成の料金情報はすべて詳細で確認できます。"
      }
    ],
    "ctx": null,
    "formats": [
      "transcriptions"
    ],
    "id": "elevenlabs/scribe-v2",
    "input": [
      "audio"
    ],
    "kind": "audio",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "errors": [
              {
                "code": null,
                "condition": "JSON本文、または明示された正規モデルIDが無効です。",
                "http_status": 400,
                "recovery": "レスポンスを保持し、指摘されたリクエストフィールドを修正してください。",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Ailoot APIキーが無効です。",
                "http_status": 401,
                "recovery": "利用権限のあるAiloot APIキーを使用してください。",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "このキーのグループでは、このメソッドの利用が許可されていません。",
                "http_status": 403,
                "recovery": "返されたエラーの詳細を保持してください。",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "選択したメソッドには、利用が許可されたルートがありません。",
                "http_status": 404,
                "recovery": "返されたエラーの詳細を保持してください。",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "受諾済みの料金体系に必要な入力量、またはその上限を取得できません。",
                "http_status": 422,
                "recovery": "レスポンスを保持し、受諾済みの料金体系で必要とされる入力表現を使用してください。",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "必要な保存領域、ルート、メソッド料金、または料金の仮押さえを利用できません。",
                "http_status": 503,
                "recovery": "元のレスポンス全体を保持してください。料金の仮押さえ状態が不明でも、再送信が認められるわけではありません。",
                "type": null
              },
              {
                "code": null,
                "condition": "元の結果、使用量、または精算を確認する必要があります。",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "実際のリクエストIDと元のレスポンスを保持してください。既存の所有レコードを読み取ってください。作成リクエストを再送信しないでください。",
                "response_headers": {
                  "x-should-retry": "false"
                },
                "type": "server_error"
              }
            ],
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed content URL"
                }
              ],
              "dedicated_method_polling_or_cancel": false,
              "mode": "synchronous_result_then_owned_library",
              "original_POST_adds_task_envelope": false,
              "status": [
                {
                  "http": "GET",
                  "id_source": "exact task_id from an existing owned media record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "実際のX-Client-Request-IDと完全なレスポンスを保持してください。元の所有アセットと、その正確な署名付きコンテンツURLを読み取ってください。結果が不確かな作成リクエストは、決して再送信しないでください。"
            },
            "outputs": {
              "all_results": "レスポンスとヘッダーの全体、実際の出力すべて、最初に返された識別子、使用量フィールドすべてを保存してください。作成リクエストを再送せずに、元の操作を復旧してください。",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "元のレスポンス本文全体、ステータス、および転送されたヘッダー。このハンドラーは共通のJSON構造、テキストフィールド、タスクの外側の構造を追加しません。"
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "elevenlabs/scribe-v2"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "input_audio",
                "required": true,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input_audio": {
                  "properties": {
                    "data": {
                      "contentEncoding": "base64",
                      "type": "string"
                    },
                    "format": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "data",
                    "format"
                  ],
                  "type": "object"
                },
                "model": {
                  "enum": [
                    "elevenlabs/scribe-v2"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input_audio"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": true,
              "body": {
                "input_audio": {
                  "data": "${BASE64_ACTUAL_WAV_BYTES}",
                  "format": "wav"
                },
                "model": "elevenlabs/scribe-v2"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "この例では、実際の空でないPCM WAVファイルを読み込み、ファイル全体のバイト列をbase64にエンコードして、input_audio.formatをwavとして送信します。"
            ],
            "material_types": [
              "audio"
            ],
            "required": [
              "model",
              "input_audio"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed content URL"
              }
            ],
            "dedicated_method_polling_or_cancel": false,
            "mode": "synchronous_result_then_owned_library",
            "original_POST_adds_task_envelope": false,
            "status": [
              {
                "http": "GET",
                "id_source": "既存の所有メディアレコードにある正確なtask_id",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain the actual X-Client-Request-ID and complete response. Read the original owned assets and their exact signed content URLs; never resubmit an uncertain creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/transcriptions"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "text",
            "fields": [
              {
                "description": null,
                "name": "text (when present)",
                "type": null
              },
              {
                "description": null,
                "name": "usage (when present)",
                "type": null
              }
            ],
            "result": "Complete original response body, status and forwarded headers. No universal JSON shape, text field or task envelope is added by this handler."
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.0001222222222222",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.0001222222222222",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_AUDIO_FILE:?Set the path to your actual PCM WAV recording}\"\nexport AILOOT_AUDIO_FILE\npython3 - <<'PY_REQUEST'\nimport base64, io, json, os, wave\nfrom pathlib import Path\naudio = Path(os.environ['AILOOT_AUDIO_FILE']).read_bytes()\nif not (audio[:4] == b'RIFF' and audio[8:12] == b'WAVE'):\n    raise SystemExit('Supply your actual PCM WAV audio file')\nwith wave.open(io.BytesIO(audio), 'rb') as recording:\n    if recording.getcomptype() != 'NONE' or recording.getnframes() <= 0:\n        raise SystemExit('Supply a nonempty PCM WAV recording')\nrequest = {'model': 'elevenlabs/scribe-v2', 'input_audio': {'data': base64.b64encode(audio).decode('ascii'), 'format': 'wav'}}\nPath('request.json').write_text(json.dumps(request, ensure_ascii=False), encoding='utf-8')\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete original response, headers and actual X-Client-Request-ID.\n# Read existing owned records for recovery; do not resubmit an uncertain operation.\n",
            "label": "curl · actual WAV file and complete original result",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "transcriptions",
        "hints": [
          "The example reads your actual nonempty PCM WAV file, encodes the complete file bytes as base64 and sends input_audio.format as wav.",
          "The format value in the example is the documented recipe; no model-specific format list, limit or default is asserted.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "audio"
        ],
        "label": "文字起こし",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_transcriptions",
        "out": null,
        "output": [
          "text"
        ],
        "path": "/v1/audio/transcriptions",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "per_request",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null,
          "unit_prices": {
            "audio_input_second": 0.0001222222222222
          }
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.0001222222222222",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.0001222222222222",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "request_model_id": "elevenlabs/scribe-v2",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.0001222222222222",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_second",
            "label": "input audio second",
            "native_amount_usd_per_unit": "0.0001222222222222",
            "native_quantity": 1,
            "public_unit_label": "per input audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_second"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "elevenlabs/scribe-v2",
        "request_model_id": "elevenlabs/scribe-v2",
        "route_label": "Ultra"
      }
    ],
    "name": "ElevenLabs: Scribe v2",
    "price": {
      "in": null,
      "in_label": null,
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": true
    },
    "short": "ElevenLabs Scribe v2は、90以上の言語の録音音声を、単語単位の時刻情報、任意の話者分離、発話以外の音のイベントタグ付きで文字起こしします。長時間の録音、字幕、編集可能な文字起こし向けに設計され、文脈に応じたキーワード指定と、逐語または読みやすく整える文字起こしを選べます。"
  },
  "renderer_schema": {
    "method_order": "Original DTO methods order; every exact route/format/path/caller survives.",
    "prices": "Original public DTO fields and original native display HTML; no flattened or normalized offers."
  },
  "representation": "exact-public-dto-and-native-renderer-html",
  "representationNotes": {
    "current_reference": {
      "about_json_pointer": "/aboutHtml",
      "methods": [
        {
          "contract_json_pointer": "/methods/0/rawMethod/contract",
          "html_json_pointer": "/methods/0/html",
          "method_ordinal": 0
        }
      ],
      "role": "current-semantic-reference"
    },
    "raw_input": {
      "examples_role": "historical-input-not-current-ready-examples",
      "json_pointers": [
        "/rawModel",
        "/methods/0/rawMethod"
      ],
      "role": "historical-owner-input"
    },
    "schema": "ailoot-native-model-representations-v1"
  },
  "schema": "ailoot-static-model-facts-v1",
  "schema_version": 1,
  "shortText": "ElevenLabs Scribe v2は、90以上の言語の録音音声を、単語単位の時刻情報、任意の話者分離、発話以外の音のイベントタグ付きで文字起こしします。長時間の録音、字幕、編集可能な文字起こし向けに設計され、文脈に応じたキーワード指定と、逐語または読みやすく整える文字起こしを選べます。",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "172a51918f256f9232c5d99afd7ea9f69b8986b730e4cd6b8c3f46d91562791f",
    "renderer_sha256": "b06e5309d3e585ab5fe0535c1a8bd6320bdc357ea8509c2389320e8fa40c36e5"
  },
  "sourceRevision": "19b0ea0febe05dab56258a245b0343802e1c871df6ea46b99b6936d9f6b410f0"
}
