OpenAI: Whisper Large V3
Whisper large-v3 是 OpenAI 的開放權重多語言語音辨識模型檢查點,可進行轉錄及將語音翻譯成英語。它將錄製的語音轉成文字,文件列有語言選擇、時間戳記,以及可處理超過其 30 秒聲學視窗的長篇音訊流程。
關於模型
此說明介紹模型的能力。Ailoot 可用的輸入、輸出與選項,依所選方法列於下方。
Whisper large-v3 是 OpenAI 已發布的語音辨識模型檢查點,約有 15.5 億個參數。它採用多語言編碼器與解碼器架構:音訊輸入編碼器,解碼器則預測文字與任務相關 token。主要任務包括將語音轉錄為原語言文字,以及將語音翻譯成英語。這是開放權重模型的身分,應與託管服務的模型識別碼,以及該服務的上傳與回應格式規則分開看待。
Large-v3 延續早期大型 Whisper 檢查點的架構,並有兩項明列的變更:頻譜圖輸入使用 128 個 Mel 頻率分箱,而非 80 個,並新增粵語語言 token。製作者的模型卡記載,訓練資料包括 100 萬小時弱標註音訊,以及使用 Whisper large-v2 製作的 400 萬小時偽標註音訊。這個混合資料集用於兩個訓練週期。此版本是特定的 large-v3 檢查點,並非 Whisper 系列所有模型的通稱。
文件所述推論工作流程預設執行轉錄,保留錄音中說話的語言。它能自動偵測原始語言,也能接受已知語言的指定。若選擇翻譯,多語言大型模型可將非英語語音轉為英語文字。請明確選擇任務:同語言轉錄稿與英語翻譯是不同的成果。處理訪談時,保留原語言措辭;製作英語參考文件時,應指定需要的是口述內容的翻譯。
音訊準備是輸入流程的一部分。OpenAI 的載入器會將錄音解碼為單聲道波形,並重新取樣至 16 kHz。模型的聲學感受野為 30 秒,這是處理視窗,而非整場訪談或講座的最長時間。長篇推論可以依序推進滑動視窗,也可以將長錄音切成重疊區塊,再合併各區塊的轉錄稿。製作者的模型卡指出,優先考量準確度時可採循序處理;若更重視單一長錄音的完成時間,則可採分塊處理。
已發布的設定列出單次解碼序列有 448 個解碼器位置。較長錄音由長篇處理流程處理,不能將這個數字當成所有轉錄稿的通用上限。文件所述工作流程可在辨識文字旁傳回片段層級或單字層級的時間戳記。這些時間資訊有助於瀏覽錄音及準備字幕,而最終字幕容器或轉錄檔案格式,則屬於另外的輸出格式選擇。若轉錄稿將與原始素材對齊,準備音訊時應保留錄音的時間關係。
Whisper 的預定用途是辨識及翻譯語音。講座轉錄稿、訪談紀錄或可搜尋的口述素材集都是實用成果;摘要或詮釋可以在取得文字後另做一步。模型卡並未將穩健的自動說話者分類或說話者分離,確立為基礎檢查點的標準輸出。若任務需要說話者標籤,應另外處理這項需求,而不能僅以轉錄準確來宣稱已具備。實用的需求說明應交代原始語言、需要轉錄還是英語翻譯,以及是否需要時間資訊。
實質限制包括產生從未被說出的文字,以及重複文字;這些現象與含雜訊資料的弱監督訓練和序列到序列設計有關。辨識品質會隨語言、口音及方言而異,訓練素材較少的情況表現也較弱。因此,用來評估是否適用的樣本應包含實際雜訊、專業詞彙及多人重疊說話的情況。請將名稱、數量及重要陳述與錄音比對,並檢查沒有說話的段落或重複句子,不能把流暢的轉錄稿當成每個字都確實被聽到的證明。
完整結果應保留辨識文字、其語言及任何要求的時間資訊,並附上原始錄音的參照。轉錄應與後續編輯分開:修訂後的出版用轉錄稿可能刪除口語填充詞,而辨識轉錄稿則保留模型實際傳回的內容。Large-v3 的身分與翻譯能力,也應與速度更快的 Turbo 版本區分。實際處理速度取決於語言、說話速度、硬體及推論方法;僅憑檢查點名稱,不能推定特定託管服務的延遲、最大上傳大小或已啟用的應用程式路由。
Ailoot Ultra · 語音辨識 POST /v1/audio/transcriptions openai/whisper-large-v3
openai/whisper-large-v3入門
Whisper large-v3 是 OpenAI 的開放權重多語言語音辨識模型檢查點,可進行轉錄及將語音翻譯成英語。它將錄製的語音轉成文字,文件列有語言選擇、時間戳記,以及可處理超過其 30 秒聲學視窗的長篇音訊流程。
- 接受的輸入
- 音訊
- 結果
- transcription
Ailoot 可用 · 輸入與方法
Ailoot Ultra · 語音辨識 POST /v1/audio/transcriptions
- 輸入
audio- 輸出
transcription- 輸出格式
- json
| 欄位 | 類型 | 要求 | 值與限制 | 預設值 |
|---|---|---|---|---|
欄位model | 類型string | 要求必填 | 值與限制 openai/whisper-large-v3 | 預設值— |
欄位input_audio | 類型object | 要求必填 | 值與限制 | 預設值— |
欄位language | 類型string | 要求選填 | 值與限制 | 預設值— |
欄位temperature | 類型number | 要求選填 | 值與限制 最小值: 0 最大值: 1 | 預設值— |
欄位response_format | 類型string | 要求選填 | 值與限制 json, verbose_json | 預設值json |
欄位timestamp_granularities | 類型array | 要求選填 | 值與限制 | 預設值— |
欄位provider | 類型object | 要求選填 | 值與限制 | 預設值— |
輸入素材組合
speech_to_text · 必填: actual matching-format audio file
方法參數與生命週期
| 參數 | 規格 |
|---|---|
參數content_types | 規格application/json, multipart/form-data |
參數required | 規格model, input_audio |
參數material_types | 規格audio |
參數JSON_audio | 規格以 base64 編碼的實際原始音訊位元組,以及相符的格式 |
參數multipart_required | 規格model, file |
參數multipart_cap_bytes | 規格26214400 |
參數optional_controls | 規格language, temperature, response_format, timestamp_granularities, provider |
參數default_response_format | 規格json |
參數optional_features | 規格詳細輸出、diarize/keyterms,以及 URL/較大的內嵌音訊,均須符合確切模型/供應商的能力與費率。 |
生命週期: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · 實際回傳的 task_id 或媒體庫紀錄
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
請使用完全相符的模型與文件記載的輸入欄位。
請保留完整回應、每個實際輸出,以及原始回傳的 ID。
方案
費率資訊不會增加請求選項。支援的參數列於所選方法中。
- 快速模式
- 未指定 選取快速模式時
- flex 模式
- 未指定 選取 flex 模式時
- 最高推理強度
- 未指定 最高推理強度採用 default 調整值時
Ailoot 費率
各設定的價格
請逐一核對各項費用與所列條件。每組互為替代選項的設定只套用一種費率。
| 設定 | 費率表 | 計費單位 | 費用 |
|---|---|---|---|
| 設定基礎 token 費率 | 費率表基本費率 | 計費單位— | 費用 輸入 · 輸入 Token — / 1K Token 輸出 · 輸出 Token — / 1K Token 輸入 · 讀取快取 — / 1K Token 輸入 · 寫入快取 — / 1K Token 輸入 · 寫入快取,1 小時 — / 1K Token |
| 設定Ultra | 費率表— | 計費單位每秒輸入音訊 | 費用 輸入 · 輸入音訊秒數 $0.000015 每秒輸入音訊 |
Ailoot 會在請求前預留估算金額。取得結果後,依實測用量結算最終費用。串流結算採用最終用量紀錄。預留金額與結算的運作方式 →
參考費率詳情
模型層級的參考費率表不會變更方法選擇、報價或費用。實際計費採用所選 Ailoot 方法的費率。
OpenAI: Whisper Large V3
各設定的價格
| 設定 | 計費條件 | 費用 |
|---|---|---|
| 設定OpenAI: Whisper Large V3 · 預設設定 | 計費條件預設設定 | 費用 輸入 · 輸入音訊秒數 US$0.000015 每秒輸入音訊 |
請求範例
Ailoot Ultra · 語音辨識
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_AUDIO_FILE:?Set the path to your actual WAV recording}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
import base64
audio=Path(os.environ['AILOOT_AUDIO_FILE']).read_bytes()
if not (audio[:4]==b'RIFF' and audio[8:12]==b'WAVE'): raise SystemExit('Supply an actual WAV audio file')
if len(audio)>26214400: raise SystemExit('Use a documented supported large-file flow')
request={'model': 'openai/whisper-large-v3', 'input_audio': {'data': '${BASE64_ACTUAL_WAV_BYTES}', 'format': 'wav'}}
request['input_audio']['data']=base64.b64encode(audio).decode('ascii')
Path('request.json').write_text(json.dumps(request,ensure_ascii=False),encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o response.bin
# Keep the complete original response and headers. Read every returned segment, word and usage field.
# Preserve actual operation/task/asset IDs; continue reads of the original result without resubmitting.
接收並儲存結果
Ailoot Ultra · 語音辨識
json
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
保留所有已完成的結果
請保留所有完整傳回的回應、檔案與內容區塊。
完整的原始 JSON、所有可用的文字/片段/單字/說話者/時間戳記與用量。
需要檢查原始回應時
請保留原始 operation_id/X-Client-Request-ID 與原始回應。請讀取實際的自有工作/資產紀錄,切勿重新提交;此處不會組出專用的音訊輪詢 URL。
回應欄位
| 欄位 | 類型 |
|---|---|
欄位text | 類型string |
欄位usage | 類型object |
欄位segments[] | 類型object |
欄位words[] | 類型object |
別名
模型別名
Ailoot Ultra openai/whisper-large-v3
方法路徑別名
請使用上方列出的 API 方法路徑。
相關呼叫用 ID
FAQ · OpenAI: Whisper Large V3
- 可以使用哪些輸入與結果?
POST /v1/audio/transcriptions·openai/whisper-large-v3:audio→transcription- 請求使用哪些欄位?
POST /v1/audio/transcriptions·openai/whisper-large-v3:model,input_audio,language,temperature,response_format,timestamp_granularities,provider- 適用哪些限制?
POST /v1/audio/transcriptions·openai/whisper-large-v3:temperature.minimum:0;temperature.maximum:1