OpenAI: Whisper 1
Whisper 1 將完整錄製的音訊檔案轉錄為文字,支援多語言辨識,以及單字或片段時間戳記。製作者提供字幕格式與獨立的英語翻譯流程;轉錄結果則保留錄音的語言。
關於模型
此說明介紹模型的能力。Ailoot 可用的輸入、輸出與選項,依所選方法列於下方。
Whisper 1 是 OpenAI 的通用語音辨識 API 模型,文件記載其由開源 Whisper V2 模型驅動。它接受音訊檔案並傳回文字。製造商列有多語言辨識、語言識別及獨立的語音翻譯任務。轉錄會保留說話的語言;製作者的獨立翻譯介面則傳回英語文字。
實用的應用情境是將訪談、語音備忘錄或錄製的對話,整理成可供後續搜尋及編輯的內容。請提供完整錄音,並在已知時指定輸入語言。OpenAI 記載支援 98 種語言,並提醒辨識準確度會隨語言而異。單一語言提示使用 ISO 639-1 代碼;其他轉錄模型較新的多語言及關鍵字欄位,則是另外的控制項。
製作者的檔案轉錄流程接受最大 25 MB 的檔案,格式可為 MP3、MP4、MPEG、MPGA、M4A、WAV 或 WebM。較大的錄音可使用壓縮格式,或切成符合上限的區塊。請保留句子邊界與區塊順序,讓合併後的轉錄稿仍能對應原始錄音。影片容器在此任務中提供的是音訊,而非視覺描述的輸入。
提示可提供名稱、縮寫、錄音特有的詞彙,以及前一片段的上下文。Whisper 的提示上限為 224 個 token,提示語言也應與音訊相同。製造商指出,Whisper 不會像通用文字模型那樣遵循指令。請將提示用作相關的轉錄上下文,再對照錄音確認重要字詞的拼寫,而不能將術語清單視為說話者一定說過的內容。
製作者記載的轉錄格式包括 JSON、純文字、SRT、VTT 及 verbose JSON。單字與片段時間戳記需要使用 verbose JSON,可要求其中一種粒度,或同時要求兩種。API 參考文件指出,片段時間戳記不會增加額外延遲,單字時間戳記則需要額外處理。這些輸出有助於製作字幕,以及在編輯時定位段落;說話者分離註記則屬於另一個專門模型的功能。
Whisper 1 不支援檔案轉錄串流。其參考文件也列有 0 至 1 的取樣溫度;設定為 0 時,若解碼門檻要求,模型可以自動提高溫度。這描述的是製作者的處理控制,並不保證每份錄音都會產生完全相同或毫無錯誤的轉錄稿。
請定義最終成果:用於搜尋的轉錄稿、字幕檔案,或帶有單字/片段時間資訊的文字。將原始錄音、區塊順序及相關原始時間參照與結果一併保留。後續文字編輯可以修正拼寫或製作摘要,但應將變更與音訊比對,以保留說話者的原意。辨識出的文字是下一項任務的依據,而非對口述問題生成的回答。
Ailoot Ultra · 語音辨識 POST /v1/audio/transcriptions openai/whisper-1
openai/whisper-1入門
Whisper 1 將完整錄製的音訊檔案轉錄為文字,支援多語言辨識,以及單字或片段時間戳記。製作者提供字幕格式與獨立的英語翻譯流程;轉錄結果則保留錄音的語言。
- 接受的輸入
- 音訊
- 結果
- transcription
Ailoot 可用 · 輸入與方法
Ailoot Ultra · 語音辨識 POST /v1/audio/transcriptions
- 輸入
audio- 輸出
transcription- 輸出格式
- json
| 欄位 | 類型 | 要求 | 值與限制 | 預設值 |
|---|---|---|---|---|
欄位model | 類型string | 要求必填 | 值與限制 openai/whisper-1 | 預設值— |
欄位file | 類型file | 要求必填 | 值與限制 內容類型: multipart/form-data | 預設值— |
欄位response_format | 類型string | 要求選填 | 值與限制 json | 預設值— |
欄位input_audio.data | 類型base64_string | 要求必填 | 值與限制 適用條件: WhisperOR JSON 輸入 | 預設值— |
欄位input_audio.format | 類型string | 要求必填 | 值與限制 wav, mp3, flac, ogg, m4a, webm 適用條件: WhisperOR JSON 輸入 | 預設值— |
輸入素材組合
· 必填: model, file
方法參數與生命週期
| 參數 | 規格 |
|---|---|
參數contours | 規格{"content_types":["application/json","multipart/form-data"],"required_json":["model","input_audio.data","input_audio.format"],"required_multipart":["model","file"],"file_formats":["wav","mp3","flac","ogg","m4a","webm"],"response_format_optional":["json"]}, {"content_types":["multipart/form-data"],"required":["model","file"],"file_formats":["mp3"],"response_format_option":false} |
參數max_bytes | 規格26214400 |
參數material_types | 規格audio |
生命週期: 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 |
| 設定輸入音訊秒數 | 費率表— | 計費單位每秒輸入音訊 | 費用 輸入 · 輸入音訊秒數 $0.0002 每秒輸入音訊 |
參考費率詳情
模型層級的參考費率表不會變更方法選擇、報價或費用。實際計費採用所選 Ailoot 方法的費率。
OpenAI: Whisper 1
各設定的價格
| 設定 | 計費條件 | 費用 |
|---|---|---|
| 設定OpenAI: Whisper 1 · 預設設定 | 計費條件預設設定 | 費用 輸入 · 輸入音訊秒數 US$0.0002 每秒輸入音訊 |
Ailoot 會在請求前預留估算金額。取得結果後,依實測用量結算最終費用。串流結算採用最終用量紀錄。預留金額與結算的運作方式 →
請求範例
Ailoot Ultra · 語音辨識
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_AUDIO_FILE:?Set the path to your actual MP3 recording}"
export AILOOT_AUDIO_FILE
python3 - <<'PY_REQUEST'
import os
from pathlib import Path
p=Path(os.environ["AILOOT_AUDIO_FILE"])
if not p.is_file() or p.suffix.lower()!=".mp3":raise SystemExit("Choose an existing MP3 recording")
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \
-H "Authorization: Bearer $AILOOT_API_KEY" \
--form-string model=openai/whisper-1 -F "file=@$AILOOT_AUDIO_FILE" \
-D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("result.json").read_text())))
PY_RESULT
接收並儲存結果
Ailoot Ultra · 語音辨識
json
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
其他內容讀取方式
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-assets.json
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_MEDIA_TASK_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_MEDIA_TASK_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_MEDIA_TASK_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/tasks/$resource_id" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-task.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-task.json").read_text())))
PY_RESULT
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_ASSET_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_ASSET_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_ASSET_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/assets/$resource_id" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-asset.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-asset.json").read_text())))
PY_RESULT
保留所有已完成的結果
請保留所有完整傳回的回應、檔案與內容區塊。
請保留完整 JSON,而非僅保留文字;所有可用的片段/說話者/時間戳記與實際工作/資產身分均須保留。
需要檢查原始回應時
保留原始 operation_id/X-Client-Request-ID 以供核對,請勿重新提交;沒有專用的音訊輪詢路由。
回應欄位
| 欄位 | 類型 |
|---|---|
欄位text | 類型string |
欄位segments[] | 類型object |
欄位task_id | 類型string |
欄位asset_url | 類型string |
欄位usage | 類型object |
錯誤與後續步驟
| 回應 | 條件 | 下一步 |
|---|---|---|
回應400 · invalid_request_error | 條件必要欄位、素材表示方式或參數值無效 | 下一步提出新的建立請求前,先修正指定欄位。 |
回應server_error | 條件回傳的回應表示該作業或結果需要檢查 | 下一步保留原始回傳的作業/任務 ID、請求標頭與回應;繼續以支援的方式讀取該原始作業。請勿重新提交建立請求。 |
別名
模型別名
Ailoot Ultra openai/whisper-1
方法路徑別名
請使用上方列出的 API 方法路徑。
相關呼叫用 ID
FAQ · OpenAI: Whisper 1
- 可以使用哪些輸入與結果?
POST /v1/audio/transcriptions·openai/whisper-1:audio→transcription- 請求使用哪些欄位?
POST /v1/audio/transcriptions·openai/whisper-1:model,file,response_format