TL;DR
- 万相 Wan 2.7 是阿里的视频模型,在 HiAPI 上有文生视频
wan2.7-video/text-to-video和图生视频wan2.7-video/image-to-video,单条 2–15 秒。打开模型页 就能在线生成,新用户注册送 200 积分。 - 按秒计费,文生和图生同价:720P 每秒 $0.10,1080P 每秒 $0.167。5 秒 720P 是 $0.50。
- 两个容易踩的坑:分辨率要写大写
720P/1080P,默认是 1080P;文生视频的画幅参数叫ratio,不是aspect_ratio。
先看效果
文生视频,模型页示例,中文提示词:
一位穿着白色毛衣的年轻女子坐在咖啡馆窗边,窗外是雨天的街道,她轻轻端起咖啡杯,目光望向窗外,暖黄色灯光映照在她的脸上,雨滴顺着玻璃缓缓流下,电影级浅景深,35mm胶片质感,温暖色调,慢镜头特写
用这个提示词生成 →(1080P、16:9)
wan2.7-video/text-to-video 模型页示例,1080P,约 8 秒,按现价约 $1.336。
图生视频,用一张黏土风农场图当首帧:

黏土动画风格,欢乐农场场景缓缓活起来。奶牛妈妈慢慢咀嚼嘴里的青草,小牛好奇地歪头张望。身后的母鸡们低头啄食地上的谷粒,小狗摇着尾巴朝镜头方向小跑几步。泥坑里的小猪满足地打了个滚,溅起小小的泥花。远处红色谷仓的风车缓缓转动,绿色山丘上白云悠悠飘过。地面上的小花随微风轻轻摇摆,整个画面充满温暖的午后阳光,定格动画质感,童趣十足。
用这个提示词生成 →(上传你的首帧图)
wan2.7-video/image-to-video 模型页示例,1080P,约 8 秒,按现价约 $1.336。
图生视频的提示词按「谁在做什么」逐个写:奶牛嚼草、母鸡啄食、小狗小跑、小猪打滚。画面里每个角色给一个小动作,整张图就活了。
两条上手路线
在线试用(不写代码)
- 打开 Wan 2.7 文生视频 模型页,注册或登录。
- 粘贴提示词,选时长、分辨率、画幅。
- 点生成,出片后直接下载。
API 调用
- 在控制台创建 API Key。
POST https://api.hiapi.ai/v1/tasks提交任务,返回taskId。GET /v1/tasks/{taskId}查状态,status为success时从output[0].url下载视频。
curl:第一条视频
5 秒 720P,$0.50:
curl -X POST https://api.hiapi.ai/v1/tasks \
-H "Authorization: Bearer $HIAPI_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "wan2.7-video/text-to-video",
"input": {
"prompt": "一只橘猫趴在洒满阳光的窗台上打哈欠,尾巴轻轻摆动,暖色调,浅景深",
"resolution": "720P",
"ratio": "16:9",
"duration": 5
}
}'
返回:
{"code": 200, "data": {"taskId": "tk-hiapi-..."}, "message": "success"}
查结果:
curl https://api.hiapi.ai/v1/tasks/tk-hiapi-... \
-H "Authorization: Bearer $HIAPI_KEY"
Python:提交、轮询、下载
# pip install requests;先 export HIAPI_KEY=你的 Key
import os, time, uuid, requests
KEY = os.environ["HIAPI_KEY"]
H = {"Authorization": f"Bearer {KEY}"}
def generate(model, timeout_s=900, **params):
body = {"model": model, "input": params}
# 重试提交同一个任务时带同一个 Idempotency-Key,避免重复扣费
headers = {**H, "Idempotency-Key": str(uuid.uuid4())}
r = requests.post("https://api.hiapi.ai/v1/tasks", json=body, headers=headers, timeout=30)
r.raise_for_status()
res = r.json()
if res.get("code") != 200:
raise RuntimeError(res)
task_id = res["data"]["taskId"]
deadline = time.time() + timeout_s
while time.time() < deadline:
d = requests.get(f"https://api.hiapi.ai/v1/tasks/{task_id}", headers=H, timeout=30).json()["data"]
if d["status"] == "success":
return d["output"][0]["url"]
if d["status"] == "fail":
raise RuntimeError(d)
time.sleep(10)
raise TimeoutError(task_id)
url = generate(
"wan2.7-video/text-to-video",
prompt="一只橘猫趴在洒满阳光的窗台上打哈欠,尾巴轻轻摆动,暖色调,浅景深",
resolution="720P", ratio="9:16", duration=5,
)
with open("clip.mp4", "wb") as f:
f.write(requests.get(url).content)
图生视频:用 media 传素材
图生视频不用 image_url,而是 media 数组,每一项写明类型和地址,1–3 项:
{
"model": "wan2.7-video/image-to-video",
"input": {
"prompt": "镜头缓慢推进,花瓣被风吹起,人物转头微笑",
"media": [
{"type": "first_frame", "url": "https://your-cdn.example.com/start.jpg"},
{"type": "last_frame", "url": "https://your-cdn.example.com/end.jpg"}
],
"resolution": "720P",
"duration": 5
}
}
type 有四种:
type | 作用 |
|---|---|
first_frame | 首帧图 |
last_frame | 尾帧图,配合首帧做过渡 |
driving_audio | 驱动音频,让画面跟着声音动 |
first_clip | 首段视频,接着它往下生成 |
参数一览
| 参数 | 取值 | 说明 |
|---|---|---|
prompt | 字符串,必填 | 最长 5000 字符,中英文都可以 |
negative_prompt | 字符串 | 不想出现的内容,最长 500 字符 |
resolution | 720P / 1080P,默认 1080P | 大写,直接决定价格 |
ratio | 16:9 9:16 1:1 4:3 3:4,默认 16:9 | 仅文生视频 |
duration | 2–15 的整数,默认 5 | 单位秒 |
audio_url | wav/mp3,2–30 秒,最大 15 MB | 仅文生视频,可选 |
prompt_extend | 默认 true | 自动优化提示词;想完全按原文生成就设为 false |
seed | 0–2147483647 | 固定种子方便复现 |
watermark | 默认 false | 是否加 AI 生成水印 |
算一下费用
| 时长 | 720P($0.10/秒) | 1080P($0.167/秒) |
|---|---|---|
| 2 秒 | $0.20 | $0.334 |
| 5 秒 | $0.50 | $0.835 |
| 10 秒 | $1.00 | $1.67 |
| 15 秒 | $1.50 | $2.505 |
$10 在 720P 下能生成 100 秒。resolution 默认 1080P,调提示词时写 720P,能省 40%。
上线前注意
- 用回调代替轮询:请求顶层(和
input同级)加"callback": {"url": "https://你的域名/hiapi/callback"},按taskId去重。 - 及时转存:
output[0].url是临时链接,拿到后马上存到自己的存储。 - 重试带幂等键:请求头加
Idempotency-Key,同一个键重试只创建一次任务。 - 失败自动退款:只按成功生成的视频计费。
常见问题
分辨率能写小写 720p 吗?
不能。小写会直接返回 400:resolution: value must be one of '720P', '1080P'。
为什么传 aspect_ratio 报错?
Wan 2.7 文生视频的画幅参数叫 ratio。传 aspect_ratio 会返回 400:additional properties 'aspect_ratio' not allowed。
图生视频画幅怎么设?
图生视频没有画幅参数,跟随首帧。
能生成 15 秒的视频吗?
能,duration 范围是 2–15 秒。
Wan 2.7 和 Wan 3.0 怎么选?
HiAPI 上的 Wan 3.0 是参考生视频,用参考图锁定人物和商品;只要文生或图生,用 Wan 2.7。
更多写法看 Wan 2.7 文生视频提示词案例(英文)。想先试一条,去模型页生成。





