Sora API 停止服務:匯出資產並遷移影片工作流程

Sora API 將於 2026 年 9 月 24 日停止服務。如果你的應用程式仍在提交 Sora 任務,請利用剩餘時間保存輸出,並驗證替代影片工作流程。OpenAI 的 Sora 網頁與應用程式體驗已於 2026 年 4 月 26 日結束;這個較早的日期與 API 截止日期不同。OpenAI 的停止服務通知說明了兩個日期和匯出流程。
切換至 Kling 或 Seedance 並不只是選擇一個新模型。請求主體、參考輸入、任務狀態、結果 URL 和支援時長都可能不同。當應用程式能透過新路徑提交、追蹤、擷取並保留可接受的影片時,遷移才算完成。
文件查核日期:2026 年 9 月 14 日。以下範例已依公開 schema 核對;它們不是付費生成測試的報告。
Sora API 停止服務前要保存什麼
先盤點應用程式需要保留的 Sora 任務。保存供應商任務 ID、你的內部任務 ID、模型、提示詞、參考資產位置、請求設定、狀態和已完成輸出。依照你現有的存取與保留規則存放這些紀錄。
對於 API 生成的影片,目前 OpenAI API 將任務中繼資料和可下載媒體分開處理:
| 用途 | OpenAI API 路徑 |
|---|---|
| 建立影片 | POST /v1/videos |
| 擷取任務中繼資料 | GET /v1/videos/{video_id} |
| 下載已完成內容 | GET /v1/videos/{video_id}/content |
建立、擷取和下載參考資料記錄了這些操作。將實際媒體位元組保存到你控制的儲存空間;任務 ID 清單不是影片封存。確認下載檔案可以開啟,而且應用程式無須呼叫 Sora 就能找到它們。
對於在 Sora 應用程式中建立的內容,請使用 OpenAI 通知所述的匯出流程。不要假設應用程式匯出也會封存應用程式的 API 任務。OpenAI 提到了可能的最終匯出窗口和透過電子郵件通知;該通知並不能據此承諾 API 截止日會立即刪除每個資產,也不能承諾其後可無限期復原。在仍可存取時封存你需要的內容。
用實際產出的片段選擇替代方案
從能代表正式工作的小型評估集開始:產品特寫、含動作的場景、由參考素材驅動的鏡頭、需要時加入對話,以及目前工作流程處理不佳的困難提示詞。在所有候選方案中維持輸入資產和驗收標準一致。
| 候選方案 | 值得測試的已記錄能力 | 遷移問題 |
|---|---|---|
| Kling 3.0 | 官方模型指南中的原生音訊、多鏡頭生成和首尾幀工作流程 | 你選擇的 API 路徑是否提供所需模式、時長、音訊控制和參考處理? |
| Seedance 2.5 | 多模態參考、影片編輯和延展,以及最長 30 秒的生成 | 該路徑是否支援所需解析度、參考角色和任務特定的參數組合? |
這些是能力摘要,不是品質排名。請參閱 Kling 3.0 模型指南和字節跳動的 Seedance 2.5 公告。供應商應用程式中可用的功能,不會自動在每個 API 或閘道中都可用。
**Seedance 與 Seedream 是不同的模型家族。**Seedance 生成影片;Seedream 5.0 Pro是圖像模型。圖像生成價格不能作為每秒影片報價。
在 Tokenhot 模型目錄中瀏覽候選路徑,接著在實作前閱讀所選模型的 API 頁面。記錄精確的模型識別碼和評估日期,以便日後有意義地比較結果。
調整請求主體,而不只是基礎 URL
OpenAI 的 Sora 建立操作使用 prompt、seconds 和 size 等欄位,並有自身支援的值。Tokenhot 文件中的 Seedance 2.5 操作則使用 content、duration、ratio 和 resolution。Tokenhot 路徑是 /v1/video/generations,其中 video 為單數。
以下文字轉影片提交遵循 Tokenhot Seedance 2.5 文件。安裝 requests,在環境中設定 TOKENHOT_API_KEY,而且只在確實打算建立可能計費的任務時執行。
import json
import os
from pathlib import Path
import requests
record_path = Path("seedance-submission.json")
if record_path.exists():
raise RuntimeError("A submission record exists; inspect it before creating another job.")
response = requests.post(
"https://api.tokenhot.ai/v1/video/generations",
headers={"Authorization": f"Bearer {os.environ['TOKENHOT_API_KEY']}"},
json={
"model": "doubao-seedance-2.5",
"content": [{
"type": "text",
"text": "A ceramic cup on a wooden table, slow camera push-in, soft daylight."
}],
"duration": 5,
"ratio": "16:9",
"resolution": "720p",
"generate_audio": False,
"output_format": "mp4"
},
timeout=(10, 60),
)
response.raise_for_status()
job = response.json()
task_id = job["id"]
record_path.write_text(json.dumps(job, indent=2), encoding="utf-8")
print(f"Submitted task: {task_id}")
此範例只提交一次並保存回應。網路逾時可能使提交結果不確定:即使用戶端未收到任務 ID,伺服器也可能已接受任務。再次提交前,請調查既有請求。這裡的本機檔案保護只是範例便利措施,不是正式環境的冪等機制。
目前 Seedance 2.5 頁面說明支援 480p 和 720p 輸出,時長為 4 至 30 秒,或使用自適應值 -1。影片編輯要求 duration=-1 和 ratio=adaptive;首幀、首尾幀和延展任務也要求自適應比例。請依任務類型驗證規則,不要將文字轉影片 payload 複製到每種模式中。不支援的組合可能在非同步處理開始後失敗。Tokenhot 參數要求。
讓提交與輪詢 schema 保持分離
已接受的提交不等於已完成的影片。Seedance 2.5 提交頁面記錄了頂層 id,以及包括 queued、processing、succeeded 和 failed 的狀態。
另外發布的 Seedance 2.0 任務查詢頁面記錄了 GET /v1/video/generations/{task_id},並展示巢狀回應:data.status 為 SUCCESS,而 data.result_url 包含輸出地址。由於該頁面標示為 2.0,在重用 2.0 輪詢剖析器前,請確認所選 2.5 路徑的查詢契約。
為每個已驗證路徑建立一個小型轉接器。它應將供應商回應轉譯為應用程式自身的狀態,例如等待、執行中、已完成和失敗。保留原始任務 ID 和錯誤細節以便排除問題。未知狀態應觸發調查,而不是被當成成功。
工作程序應具備有界輪詢間隔、整體截止時間,並明確處理驗證錯誤、限流和暫時性伺服器故障。當本機輪詢截止時間到期時,保留任務 ID,讓另一工作程序能繼續檢查。不要只因原始任務耗時超過預期就提交替代任務。
任務成功後,請及時擷取結果,並依應用程式的保留政策保存。除非服務明確記錄其他規則,否則請將簽名輸出 URL 視為暫時存取機制。已完成的供應商任務與安全保留的客戶資產是兩個不同里程碑。
比較每個通過驗收片段的成本
比較相同解析度、時長、音訊設定、輸入模式和存取路徑下的價格。供應商應用程式點數、直接 API 價格和閘道報價可能採用不同計費規則。我們的 API 價格比較說明如何讓計費單位與供應商路徑保持區分。
一個實用的評估指標是:
Cost per accepted clip = total billed evaluation cost / accepted clips
例如,如果評估花費 $12,並產出八個通過要求的片段,觀察到的成本為每個通過驗收片段 $1.50。這是說明性計算,不是 Kling 或 Seedance 的價格報價。請將計費的被拒嘗試納入分子,並在它們影響決策時另外計入儲存、編輯和人工審核。
除了視覺品質外,也要追蹤完成時間和失敗率。如果工作流程反覆重新生成不可用輸出,低標價的幫助有限。
在 9 月 24 日前完成切換
- 封存所需的 Sora 輸出,並驗證可從自己的儲存空間播放。
- 使用具代表性的片段和明確驗收標準選擇替代路徑。
- 驗證請求驗證、提交紀錄、查詢剖析、失敗任務和輸出擷取。
- 將一部分受控的新工作導向替代方案,並監控已完成資產、成本和失敗情況。
- 提早停止建立新的 Sora 任務,為截止日期前處理剩餘工作預留時間。
- 切換後保持舊任務紀錄可讀,並記錄一個不依賴 Sora 仍可用的備援方案。
如果你也在選擇閘道,OpenRouter 替代方案指南涵蓋路徑選擇和相容性檢查。實作時,請先從 Tokenhot API 文件中精確的影片模型頁面開始,接著在自己的環境中驗證完整任務生命週期。
Sora API 存取將於 2026 年 9 月 24 日結束。請保存已完成的影片和任務中繼資料,用自己的片段評估 Kling 與 Seedance,並遷移提交和任務處理邏輯。本文區分已確認的停止服務細節與實作選擇,並展示文件規定的 Tokenhot Seedance 請求格式。


