迁移

Sora API 关停:导出资产并迁移视频工作流

TTokenhot Team2026年8月14日更新于 2026年9月14日约 10 分钟阅读
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 日前完成切换

  1. 归档所需的 Sora 输出,并验证可从自己的存储播放。
  2. 使用有代表性的片段和明确验收标准选择替代路径。
  3. 验证请求校验、提交记录、查询解析、失败任务和输出获取。
  4. 将一部分受控的新工作路由到替代方案,并监控已完成资产、成本和失败情况。
  5. 提前停止创建新的 Sora 任务,为截止日期前处理剩余工作留出时间。
  6. 切换后保持旧任务记录可读,并记录一个不依赖 Sora 仍可用的回退方案。

如果你也在选择网关,OpenRouter 替代方案指南涵盖路径选择和兼容性检查。实施时,请先从 Tokenhot API 文档中准确的视频模型页面开始,然后在自己的环境中验证完整任务生命周期。

总结

Sora API 访问将于 2026 年 9 月 24 日结束。请保留已完成的视频和任务元数据,用自己的片段评估 Kling 与 Seedance,并迁移提交和任务处理逻辑。本文区分已确认的关停细节与实施选择,并展示文档中规定的 Tokenhot Seedance 请求格式。

相关文章