DashScope 与 Ark SDK
用官方 DashScope 与 Ark Python SDK 创建并轮询 Wan 与 Seedance 视频任务,只需改 base URL
两个官方视频 SDK 只改 base URL 就能用于 ModelSite。两者都是先创建任务,再轮询到结束。
状态:已对 ModelSite 实测,2026-10-24:dashscope 2.0.1(Wan 3.0,480P,2 秒)与 volcengine-python-sdk 5.0.54(Seedance 2.0 mini,480p,4 秒)。各创建了一个任务、轮询到成功,并拿到了视频地址。
DashScope SDK(Wan、HappyHorse)
要在导入 SDK 之前设置 base URL:
import os
os.environ["DASHSCOPE_HTTP_BASE_URL"] = "https://api.modelsite.ai/api/v1"
from dashscope import VideoSynthesis
import time
api_key = os.environ["MODELSITE_API_KEY"]
task = VideoSynthesis.async_call(
api_key=api_key,
model="wan3.0-video",
prompt="A small orange cat stretches on a rainy window sill, neon city outside, slow push-in.",
resolution="480P", duration=2, ratio="adaptive", prompt_extend=False,
)
while True:
time.sleep(10)
result = VideoSynthesis.fetch(task, api_key=api_key)
if result.output.task_status in ("SUCCEEDED", "FAILED", "CANCELED"):
break
print(result.output.task_status, getattr(result.output, "video_url", None))我们的 Wan 3.0 任务约 50 秒完成。参数因模型而异,见「视频生成」下的 Wan 与 HappyHorse 页面。
Ark SDK(Seedance)
import os, time
from volcenginesdkarkruntime import Ark
client = Ark(base_url="https://api.modelsite.ai/api/v3", api_key=os.environ["MODELSITE_API_KEY"])
task = client.content_generation.tasks.create(
model="dreamina-seedance-2-0-mini",
content=[{"type": "text", "text": "A small orange cat stretches on a rainy window sill, neon city outside, slow push-in."}],
extra_body={"resolution": "480p", "ratio": "16:9", "duration": 4, "generate_audio": False},
)
while True:
time.sleep(10)
t = client.content_generation.tasks.get(task_id=task.id)
if t.status in ("succeeded", "failed", "cancelled", "expired"):
break
print(t.status, t.content.video_url if t.status == "succeeded" else None)我们的 Seedance 任务从 queued 到 succeeded 用了约两分钟。这次测试用的是同一入口的 /v1 形式(base URL 填 https://api.modelsite.ai/v1);/api/v3 是 Seedance 页面记录的形式,也与 SDK 自带的默认路径一致。
不要传 callback_url。 ModelSite 不发送完成回调;带了它的请求会被 400 拒绝。请按上面的方式轮询任务。
限制
- 视频地址是临时的,请保存文件。
- 这些验证创建的是文生视频任务。图生视频和参考输入请按各模型页面里的字段。