{
  "aboutHtml": "<p>GPT-4o Transcribe 是 OpenAI 以 GPT-4o 為基礎的語音轉文字模型。它接受音訊及可選的文字引導，輸出辨識出的文字。它與 GPT-4o Mini Transcribe 版本及專門標記說話者的 GPT-4o Transcribe Diarize 分開。使用這個設定檔準備忠實的發言文字紀錄，並保留來源錄音，供檢閱與後續編輯使用。</p><h4>檔案輸入與長篇素材準備</h4><p>OpenAI 的轉錄指南記載上傳上限為 25 MB。目前的端點參考接受 FLAC、MP3、MP4、MPEG、MPGA、M4A、OGG、WAV 與 WebM，並建議提供可識別格式的檔案中繼資料，包括帶有副檔名的檔名與適當的內容類型。較大的錄音可依開發商較長輸入指引壓縮，或分成有順序、每個不超過 25 MB 的部分。避免在句子中間切割，並保留各部分在完整錄音中的位置。</p><p>訪談中，將各輸入檔案連到錄音及其涵蓋段落。技術簡報中，準備相關產品名稱、縮寫與領域詞彙作為脈絡，再將拼法對照說話者實際發言檢查。帶有數值的錄音解說，應先將逐字稿與來源一起檢閱，再改成書面程序。第一個需要的成品是以文字呈現的辨識語音；精簡報告或翻譯文件可以在另一個步驟中由這份文字製作。</p><h4>錄音專用提示詞與語言選擇</h4><p>開發商指南明確將 GPT-4o Transcribe 納入提示詞支援範圍。提示詞可以提供正確拼法、前一片段的脈絡，以及標點、大小寫、語助填充詞或書寫系統偏好。參考文件表示提示詞應符合錄音語言。簡短且相關的主題與詞彙說明，可為轉錄提供有用脈絡，同時不把未說出的詞語當成必要輸出。</p><p>這個設定檔支援單數 language 提示，文件記載採 ISO 639-1 形式。提供實際輸入語言可協助辨識。GPT Transcribe 較新的 keywords 與複數 languages 欄位屬於該另行命名的模型，不應假設 GPT-4o Transcribe 也具備。讓語言設定對應正在轉錄的發言，並在後續翻譯或風格改寫前保留原始用字。</p><h4>結果格式、機率與專用輸出</h4><p>目前的端點參考將 JSON 記為 GPT-4o Transcribe 支援的回應格式。結果含有辨識文字，也可在這個 JSON 格式中要求可選的 token 對數機率。機率資料描述模型如何選擇 token，可以協助判斷哪些段落值得檢查，但困難的名稱、數字或字句是否被逐字稿重現，仍需對照音訊確認。</p><p>標準設定檔的 JSON 結果不提供原生字幕格式、詳細逐字時間戳或說話者指派。需要這些輸出時，OpenAI 記載了其他模型與格式選項；GPT-4o Transcribe Diarize 是獨立的說話者標籤版本。字幕任務應保留檢查過的逐字稿，供適當的時間標記步驟使用。對話中，不要只因逐字稿段落看似改變主題或聲音，就虛構說話者名稱。</p><h4>已完成檔案的結果串流</h4><p>OpenAI 的語音轉文字指南表示，既有 GPT-4o Transcribe 整合支援檔案串流。應用程式先提供錄音，再於處理該錄音時接收逐字稿文字，並保留完成結果。這是在串流傳送已完成錄音的逐字稿，而非接收持續傳入的麥克風音訊。確切模型卡也列出轉錄與 Realtime 端點家族；模型特有的工作階段行為必須對應這個設定檔，不應從較新的持續串流模型借用。</p><h4>模型限制與最終成品檢查</h4><p>目前的 GPT-4o Transcribe 規格列出 16,000 個 token 的上下文視窗、2,000 個 token 的最大輸出，以及 2024 年 6 月 1 日的知識截止日。這些 token 限制不是固定音訊時長，也不取代檔案轉錄準備規則。較長錄音應保留來源順序及相關前文，再確認完成文字涵蓋每個預定片段的結尾。</p><p>有用的最終逐字稿可以成為可搜尋的訪談資料、技術文件的來源，或後續字幕流程的文字。將不確定的詞彙、數量、標點、口音與重疊發言對照錄音檢查。將辨識文字與後續修正或摘要分開，並透過周邊流程的識別碼保留來源連結。模型提供文字紀錄；仔細準備輸入與檢閱來源，決定這份紀錄是否適合下一個用途。</p>",
  "aboutText": "GPT-4o Transcribe 是 OpenAI 以 GPT-4o 為基礎的語音轉文字模型。它接受音訊及可選的文字引導，輸出辨識出的文字。它與 GPT-4o Mini Transcribe 版本及專門標記說話者的 GPT-4o Transcribe Diarize 分開。使用這個設定檔準備忠實的發言文字紀錄，並保留來源錄音，供檢閱與後續編輯使用。\n\n### 檔案輸入與長篇素材準備\n\nOpenAI 的轉錄指南記載上傳上限為 25 MB。目前的端點參考接受 FLAC、MP3、MP4、MPEG、MPGA、M4A、OGG、WAV 與 WebM，並建議提供可識別格式的檔案中繼資料，包括帶有副檔名的檔名與適當的內容類型。較大的錄音可依開發商較長輸入指引壓縮，或分成有順序、每個不超過 25 MB 的部分。避免在句子中間切割，並保留各部分在完整錄音中的位置。\n\n訪談中，將各輸入檔案連到錄音及其涵蓋段落。技術簡報中，準備相關產品名稱、縮寫與領域詞彙作為脈絡，再將拼法對照說話者實際發言檢查。帶有數值的錄音解說，應先將逐字稿與來源一起檢閱，再改成書面程序。第一個需要的成品是以文字呈現的辨識語音；精簡報告或翻譯文件可以在另一個步驟中由這份文字製作。\n\n### 錄音專用提示詞與語言選擇\n\n開發商指南明確將 GPT-4o Transcribe 納入提示詞支援範圍。提示詞可以提供正確拼法、前一片段的脈絡，以及標點、大小寫、語助填充詞或書寫系統偏好。參考文件表示提示詞應符合錄音語言。簡短且相關的主題與詞彙說明，可為轉錄提供有用脈絡，同時不把未說出的詞語當成必要輸出。\n\n這個設定檔支援單數 language 提示，文件記載採 ISO 639-1 形式。提供實際輸入語言可協助辨識。GPT Transcribe 較新的 keywords 與複數 languages 欄位屬於該另行命名的模型，不應假設 GPT-4o Transcribe 也具備。讓語言設定對應正在轉錄的發言，並在後續翻譯或風格改寫前保留原始用字。\n\n### 結果格式、機率與專用輸出\n\n目前的端點參考將 JSON 記為 GPT-4o Transcribe 支援的回應格式。結果含有辨識文字，也可在這個 JSON 格式中要求可選的 token 對數機率。機率資料描述模型如何選擇 token，可以協助判斷哪些段落值得檢查，但困難的名稱、數字或字句是否被逐字稿重現，仍需對照音訊確認。\n\n標準設定檔的 JSON 結果不提供原生字幕格式、詳細逐字時間戳或說話者指派。需要這些輸出時，OpenAI 記載了其他模型與格式選項；GPT-4o Transcribe Diarize 是獨立的說話者標籤版本。字幕任務應保留檢查過的逐字稿，供適當的時間標記步驟使用。對話中，不要只因逐字稿段落看似改變主題或聲音，就虛構說話者名稱。\n\n### 已完成檔案的結果串流\n\nOpenAI 的語音轉文字指南表示，既有 GPT-4o Transcribe 整合支援檔案串流。應用程式先提供錄音，再於處理該錄音時接收逐字稿文字，並保留完成結果。這是在串流傳送已完成錄音的逐字稿，而非接收持續傳入的麥克風音訊。確切模型卡也列出轉錄與 Realtime 端點家族；模型特有的工作階段行為必須對應這個設定檔，不應從較新的持續串流模型借用。\n\n### 模型限制與最終成品檢查\n\n目前的 GPT-4o Transcribe 規格列出 16,000 個 token 的上下文視窗、2,000 個 token 的最大輸出，以及 2024 年 6 月 1 日的知識截止日。這些 token 限制不是固定音訊時長，也不取代檔案轉錄準備規則。較長錄音應保留來源順序及相關前文，再確認完成文字涵蓋每個預定片段的結尾。\n\n有用的最終逐字稿可以成為可搜尋的訪談資料、技術文件的來源，或後續字幕流程的文字。將不確定的詞彙、數量、標點、口音與重疊發言對照錄音檢查。將辨識文字與後續修正或摘要分開，並透過周邊流程的識別碼保留來源連結。模型提供文字紀錄；仔細準備輸入與檢閱來源，決定這份紀錄是否適合下一個用途。",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "033082cac8fc4f9802419c7736ad3894d539eec6120a0e0ae9fd8502927eea81",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "zh-hant-tw",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">O</span><h2 id=\"sheet-title\">OpenAI: GPT-4o Transcribe</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"關閉\">×</button></div><div class=\"idline\"><span>OpenAI /</span><code>openai/gpt-4o-transcribe</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|openai%2Fgpt-4o-transcribe\">辨識</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\">GPT-4o Transcribe 使用 OpenAI 的 GPT-4o 語音辨識能力將音訊轉成文字。它支援情境提示詞、輸入語言提示、JSON 逐字稿、檔案輸出串流，以及可選的 token 對數機率，用於檢閱不確定的用字。</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>GPT-4o Transcribe 是 OpenAI 以 GPT-4o 為基礎的語音轉文字模型。它接受音訊及可選的文字引導，輸出辨識出的文字。它與 GPT-4o Mini Transcribe 版本及專門標記說話者的 GPT-4o Transcribe Diarize 分開。使用這個設定檔準備忠實的發言文字紀錄，並保留來源錄音，供檢閱與後續編輯使用。</p><h4>檔案輸入與長篇素材準備</h4><p>OpenAI 的轉錄指南記載上傳上限為 25 MB。目前的端點參考接受 FLAC、MP3、MP4、MPEG、MPGA、M4A、OGG、WAV 與 WebM，並建議提供可識別格式的檔案中繼資料，包括帶有副檔名的檔名與適當的內容類型。較大的錄音可依開發商較長輸入指引壓縮，或分成有順序、每個不超過 25 MB 的部分。避免在句子中間切割，並保留各部分在完整錄音中的位置。</p><p>訪談中，將各輸入檔案連到錄音及其涵蓋段落。技術簡報中，準備相關產品名稱、縮寫與領域詞彙作為脈絡，再將拼法對照說話者實際發言檢查。帶有數值的錄音解說，應先將逐字稿與來源一起檢閱，再改成書面程序。第一個需要的成品是以文字呈現的辨識語音；精簡報告或翻譯文件可以在另一個步驟中由這份文字製作。</p><h4>錄音專用提示詞與語言選擇</h4><p>開發商指南明確將 GPT-4o Transcribe 納入提示詞支援範圍。提示詞可以提供正確拼法、前一片段的脈絡，以及標點、大小寫、語助填充詞或書寫系統偏好。參考文件表示提示詞應符合錄音語言。簡短且相關的主題與詞彙說明，可為轉錄提供有用脈絡，同時不把未說出的詞語當成必要輸出。</p><p>這個設定檔支援單數 language 提示，文件記載採 ISO 639-1 形式。提供實際輸入語言可協助辨識。GPT Transcribe 較新的 keywords 與複數 languages 欄位屬於該另行命名的模型，不應假設 GPT-4o Transcribe 也具備。讓語言設定對應正在轉錄的發言，並在後續翻譯或風格改寫前保留原始用字。</p><h4>結果格式、機率與專用輸出</h4><p>目前的端點參考將 JSON 記為 GPT-4o Transcribe 支援的回應格式。結果含有辨識文字，也可在這個 JSON 格式中要求可選的 token 對數機率。機率資料描述模型如何選擇 token，可以協助判斷哪些段落值得檢查，但困難的名稱、數字或字句是否被逐字稿重現，仍需對照音訊確認。</p><p>標準設定檔的 JSON 結果不提供原生字幕格式、詳細逐字時間戳或說話者指派。需要這些輸出時，OpenAI 記載了其他模型與格式選項；GPT-4o Transcribe Diarize 是獨立的說話者標籤版本。字幕任務應保留檢查過的逐字稿，供適當的時間標記步驟使用。對話中，不要只因逐字稿段落看似改變主題或聲音，就虛構說話者名稱。</p><h4>已完成檔案的結果串流</h4><p>OpenAI 的語音轉文字指南表示，既有 GPT-4o Transcribe 整合支援檔案串流。應用程式先提供錄音，再於處理該錄音時接收逐字稿文字，並保留完成結果。這是在串流傳送已完成錄音的逐字稿，而非接收持續傳入的麥克風音訊。確切模型卡也列出轉錄與 Realtime 端點家族；模型特有的工作階段行為必須對應這個設定檔，不應從較新的持續串流模型借用。</p><h4>模型限制與最終成品檢查</h4><p>目前的 GPT-4o Transcribe 規格列出 16,000 個 token 的上下文視窗、2,000 個 token 的最大輸出，以及 2024 年 6 月 1 日的知識截止日。這些 token 限制不是固定音訊時長，也不取代檔案轉錄準備規則。較長錄音應保留來源順序及相關前文，再確認完成文字涵蓋每個預定片段的結尾。</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>openai/gpt-4o-transcribe</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\">請逐一核對各項費用與所列條件。每組互為替代選項的設定只套用一種費率。</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>基礎 token 費率</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>輸入 · 輸入 Token</span> <b>—</b> <span class=\"price-unit\">/ 1K Token</span></div><div><span>輸出 · 輸出 Token</span> <b>—</b> <span class=\"price-unit\">/ 1K Token</span></div><div><span>輸入 · 讀取快取</span> <b>—</b> <span class=\"price-unit\">/ 1K Token</span></div><div><span>輸入 · 寫入快取</span> <b>—</b> <span class=\"price-unit\">/ 1K Token</span></div><div><span>輸入 · 寫入快取，1 小時</span> <b>—</b> <span class=\"price-unit\">/ 1K Token</span></div></td></tr><tr><th data-cell-label=\"設定\" scope=\"row\"><span class=\"card-cell-label\">設定</span>輸入 token</th><td data-cell-label=\"費率表\"><span class=\"card-cell-label\">費率表</span>—</td><td data-cell-label=\"計費單位\"><span class=\"card-cell-label\">計費單位</span>/ 1K Token</td><td data-cell-label=\"費用\"><span class=\"card-cell-label\">費用</span><div><span>輸入</span> <b>$0.005</b> <span class=\"price-unit\">/ 1K Token</span></div></td></tr><tr><th data-cell-label=\"設定\" scope=\"row\"><span class=\"card-cell-label\">設定</span>輸出 token</th><td data-cell-label=\"費率表\"><span class=\"card-cell-label\">費率表</span>—</td><td data-cell-label=\"計費單位\"><span class=\"card-cell-label\">計費單位</span>/ 1K Token</td><td data-cell-label=\"費用\"><span class=\"card-cell-label\">費用</span><div><span>輸出</span> <b>$0.02</b> <span class=\"price-unit\">/ 1K Token</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot 會在請求前預留估算金額。取得結果後，依實測用量結算最終費用。串流結算採用最終用量紀錄。<a href=\"/docs/zh-hant-tw/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-2049-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2049-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-2049-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2049-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;openai/gpt-4o-transcribe&#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=openai%2Fgpt-4o-transcribe&amp;route=Ultra&amp;caller=openai%2Fgpt-4o-transcribe&amp;fmt=transcriptions\"><code>openai/gpt-4o-transcribe</code></a></span></p><h4>方法路徑別名</h4><p class=\"note-s\">請使用上方列出的 API 方法路徑。</p><h4>相關呼叫用 ID</h4><p class=\"note-s\"><a href=\"#m=openai%2Fgpt-4o-transcribe&amp;route=Ultra&amp;caller=openai%2Fgpt-4o-transcribe&amp;fmt=transcriptions\"><code>openai/gpt-4o-transcribe</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "openai/gpt-4o-transcribe",
        "fmt": "transcriptions",
        "http": "POST",
        "path": "/v1/audio/transcriptions",
        "request_model_id": "openai/gpt-4o-transcribe",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|transcriptions|/v1/audio/transcriptions|openai%2Fgpt-4o-transcribe",
      "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": [
                  "openai/gpt-4o-transcribe"
                ],
                "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": [
                    "openai/gpt-4o-transcribe"
                  ],
                  "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": "openai/gpt-4o-transcribe"
              },
              "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": "/ 1K tokens"
            },
            "label": "input token",
            "units": [
              {
                "amount": "0.005000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_token",
                "label": "input token",
                "native_amount_usd_per_unit": "0.000005",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "/ 1K tokens"
            },
            "label": "output token",
            "units": [
              {
                "amount": "0.02000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_token",
                "label": "output token",
                "native_amount_usd_per_unit": "0.00002",
                "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"
              }
            ]
          }
        ],
        "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': 'openai/gpt-4o-transcribe', '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": {
            "input_token": 5e-06,
            "output_token": 2e-05
          }
        },
        "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": "/ 1K tokens"
            },
            "label": "input token",
            "units": [
              {
                "amount": "0.005000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_token",
                "label": "input token",
                "native_amount_usd_per_unit": "0.000005",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "/ 1K tokens"
            },
            "label": "output token",
            "units": [
              {
                "amount": "0.02000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_token",
                "label": "output token",
                "native_amount_usd_per_unit": "0.00002",
                "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"
              }
            ]
          }
        ],
        "request_model_id": "openai/gpt-4o-transcribe",
        "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.005000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_token",
            "label": "input token",
            "native_amount_usd_per_unit": "0.000005",
            "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": "0.02000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_token",
            "label": "output token",
            "native_amount_usd_per_unit": "0.00002",
            "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"
          }
        ]
      }
    }
  ],
  "model_id": "openai/gpt-4o-transcribe",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "c3ea29940a28a1f36ba09debc6077ee1697aa23613fed86d0a0e2d7362fd48a8",
    "input_html_sha256": "c2ddfb01c40317c4a567a181c8de565ae6fe2e8ea0192f9c7759cf2d8ae03990",
    "private_audit_sha256": "9762b0a907ab8ce03061335a7540d1ff21487014e0956ca20627d9cfddeeb435",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/zh-hant-tw/openai-gpt-4o-transcribe/",
    "description": "GPT-4o Transcribe 使用 OpenAI 的 GPT-4o 語音辨識能力將音訊轉成文字。它支援情境提示詞、輸入語言提示、JSON 逐字稿、檔案輸出串流，以及可選的 token 對數機率，用於檢閱不確定的用字。",
    "locale": "zh-hant-tw",
    "md_url": "https://ailoot.ai/models/zh-hant-tw/openai-gpt-4o-transcribe/index.md",
    "title": "OpenAI: GPT-4o Transcribe — Ailoot",
    "url": "https://ailoot.ai/models/zh-hant-tw/openai-gpt-4o-transcribe/"
  },
  "rawModel": {
    "about": "GPT-4o Transcribe 是 OpenAI 以 GPT-4o 為基礎的語音轉文字模型。它接受音訊及可選的文字引導，輸出辨識出的文字。它與 GPT-4o Mini Transcribe 版本及專門標記說話者的 GPT-4o Transcribe Diarize 分開。使用這個設定檔準備忠實的發言文字紀錄，並保留來源錄音，供檢閱與後續編輯使用。\n\n### 檔案輸入與長篇素材準備\n\nOpenAI 的轉錄指南記載上傳上限為 25 MB。目前的端點參考接受 FLAC、MP3、MP4、MPEG、MPGA、M4A、OGG、WAV 與 WebM，並建議提供可識別格式的檔案中繼資料，包括帶有副檔名的檔名與適當的內容類型。較大的錄音可依開發商較長輸入指引壓縮，或分成有順序、每個不超過 25 MB 的部分。避免在句子中間切割，並保留各部分在完整錄音中的位置。\n\n訪談中，將各輸入檔案連到錄音及其涵蓋段落。技術簡報中，準備相關產品名稱、縮寫與領域詞彙作為脈絡，再將拼法對照說話者實際發言檢查。帶有數值的錄音解說，應先將逐字稿與來源一起檢閱，再改成書面程序。第一個需要的成品是以文字呈現的辨識語音；精簡報告或翻譯文件可以在另一個步驟中由這份文字製作。\n\n### 錄音專用提示詞與語言選擇\n\n開發商指南明確將 GPT-4o Transcribe 納入提示詞支援範圍。提示詞可以提供正確拼法、前一片段的脈絡，以及標點、大小寫、語助填充詞或書寫系統偏好。參考文件表示提示詞應符合錄音語言。簡短且相關的主題與詞彙說明，可為轉錄提供有用脈絡，同時不把未說出的詞語當成必要輸出。\n\n這個設定檔支援單數 language 提示，文件記載採 ISO 639-1 形式。提供實際輸入語言可協助辨識。GPT Transcribe 較新的 keywords 與複數 languages 欄位屬於該另行命名的模型，不應假設 GPT-4o Transcribe 也具備。讓語言設定對應正在轉錄的發言，並在後續翻譯或風格改寫前保留原始用字。\n\n### 結果格式、機率與專用輸出\n\n目前的端點參考將 JSON 記為 GPT-4o Transcribe 支援的回應格式。結果含有辨識文字，也可在這個 JSON 格式中要求可選的 token 對數機率。機率資料描述模型如何選擇 token，可以協助判斷哪些段落值得檢查，但困難的名稱、數字或字句是否被逐字稿重現，仍需對照音訊確認。\n\n標準設定檔的 JSON 結果不提供原生字幕格式、詳細逐字時間戳或說話者指派。需要這些輸出時，OpenAI 記載了其他模型與格式選項；GPT-4o Transcribe Diarize 是獨立的說話者標籤版本。字幕任務應保留檢查過的逐字稿，供適當的時間標記步驟使用。對話中，不要只因逐字稿段落看似改變主題或聲音，就虛構說話者名稱。\n\n### 已完成檔案的結果串流\n\nOpenAI 的語音轉文字指南表示，既有 GPT-4o Transcribe 整合支援檔案串流。應用程式先提供錄音，再於處理該錄音時接收逐字稿文字，並保留完成結果。這是在串流傳送已完成錄音的逐字稿，而非接收持續傳入的麥克風音訊。確切模型卡也列出轉錄與 Realtime 端點家族；模型特有的工作階段行為必須對應這個設定檔，不應從較新的持續串流模型借用。\n\n### 模型限制與最終成品檢查\n\n目前的 GPT-4o Transcribe 規格列出 16,000 個 token 的上下文視窗、2,000 個 token 的最大輸出，以及 2024 年 6 月 1 日的知識截止日。這些 token 限制不是固定音訊時長，也不取代檔案轉錄準備規則。較長錄音應保留來源順序及相關前文，再確認完成文字涵蓋每個預定片段的結尾。\n\n有用的最終逐字稿可以成為可搜尋的訪談資料、技術文件的來源，或後續字幕流程的文字。將不確定的詞彙、數量、標點、口音與重疊發言對照錄音檢查。將辨識文字與後續修正或摘要分開，並透過周邊流程的識別碼保留來源連結。模型提供文字紀錄；仔細準備輸入與檢閱來源，決定這份紀錄是否適合下一個用途。",
    "alias_of": null,
    "aliases": [],
    "author": "OpenAI",
    "capabilities": {
      "context_length": 128000,
      "manufacturer_input": [
        "audio"
      ],
      "manufacturer_output": [
        "transcription"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.005000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_token",
            "label": "input token",
            "native_amount_usd_per_unit": "0.000005",
            "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": "0.02000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_token",
            "label": "output token",
            "native_amount_usd_per_unit": "0.00002",
            "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"
          }
        ],
        "summary": "完整的設定價格資訊請見詳細資料。"
      }
    ],
    "ctx": null,
    "formats": [
      "transcriptions"
    ],
    "id": "openai/gpt-4o-transcribe",
    "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": [
                  "openai/gpt-4o-transcribe"
                ],
                "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": [
                    "openai/gpt-4o-transcribe"
                  ],
                  "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": "openai/gpt-4o-transcribe"
              },
              "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": "/ 1K tokens"
            },
            "label": "input token",
            "units": [
              {
                "amount": "0.005000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_token",
                "label": "input token",
                "native_amount_usd_per_unit": "0.000005",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "/ 1K tokens"
            },
            "label": "output token",
            "units": [
              {
                "amount": "0.02000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_token",
                "label": "output token",
                "native_amount_usd_per_unit": "0.00002",
                "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"
              }
            ]
          }
        ],
        "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': 'openai/gpt-4o-transcribe', '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": {
            "input_token": 5e-06,
            "output_token": 2e-05
          }
        },
        "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": "/ 1K tokens"
            },
            "label": "input token",
            "units": [
              {
                "amount": "0.005000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_token",
                "label": "input token",
                "native_amount_usd_per_unit": "0.000005",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "/ 1K tokens"
            },
            "label": "output token",
            "units": [
              {
                "amount": "0.02000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_token",
                "label": "output token",
                "native_amount_usd_per_unit": "0.00002",
                "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"
              }
            ]
          }
        ],
        "request_model_id": "openai/gpt-4o-transcribe",
        "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.005000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_token",
            "label": "input token",
            "native_amount_usd_per_unit": "0.000005",
            "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": "0.02000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_token",
            "label": "output token",
            "native_amount_usd_per_unit": "0.00002",
            "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"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "openai/gpt-4o-transcribe",
        "request_model_id": "openai/gpt-4o-transcribe",
        "route_label": "Ultra"
      }
    ],
    "name": "OpenAI: GPT-4o Transcribe",
    "price": {
      "in": null,
      "in_label": null,
      "out": 0.02,
      "out_label": "/ 1K tokens",
      "sort_in": null,
      "sort_out": 0.02,
      "varies": true
    },
    "short": "GPT-4o Transcribe 使用 OpenAI 的 GPT-4o 語音辨識能力將音訊轉成文字。它支援情境提示詞、輸入語言提示、JSON 逐字稿、檔案輸出串流，以及可選的 token 對數機率，用於檢閱不確定的用字。"
  },
  "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": "GPT-4o Transcribe 使用 OpenAI 的 GPT-4o 語音辨識能力將音訊轉成文字。它支援情境提示詞、輸入語言提示、JSON 逐字稿、檔案輸出串流，以及可選的 token 對數機率，用於檢閱不確定的用字。",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "29854e58b0b6033bc02dd18af11bd43a37ebd739c0b6600967d7e9e91032e31d",
    "renderer_sha256": "13a3fc1b22d07359278e2249d630bfc9bb9e6416c71ba53def933fb5a903660b"
  },
  "sourceRevision": "09b89662aad125587eb1dca8b95bfaeee9b2f7452fd4054e076b3829aac7b8b0"
}
