HiAPI
ブログ

チュートリアル

Wan 2.7 動画 API の使い方?テキスト・画像から動画生成する中国語チュートリアル

curl と Python のサンプル、media 配列の渡し方、先頭・末尾フレームと駆動音声、そして大文字の解像度のようなつまずきやすいポイント。

Oct 15, 2026
Wan 2.7 動画 API の使い方?テキスト・画像から動画生成する中国語チュートリアル

TL;DR

  • Wan 2.7 はアリババの動画モデルで、HiAPI ではテキスト生成動画 wan2.7-video/text-to-video と画像生成動画 wan2.7-video/image-to-video が利用でき、1 本 2〜15 秒です。モデルページを開く とオンラインで生成でき、新規ユーザー登録で 200 クレジットがもらえます。
  • 秒単位の課金で、テキスト生成と画像生成は同価格です:720P は 1 秒 $0.10、1080P は 1 秒 $0.167。5 秒の 720P は $0.50 です。
  • つまずきやすいポイントが 2 つ:解像度は大文字で 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。

画像生成動画のプロンプトは「誰が何をしているか」を 1 つずつ書きます:牛が草を噛む、雌鶏がついばむ、子犬が小走りする、子豚が転がる。画面の各キャラクターに小さな動きを与えると、画像全体が生き生きとします。

2 つの導入ルート

オンラインで試す(コードを書かない)

  1. Wan 2.7 テキスト生成動画 モデルページを開き、登録またはログインします。
  2. プロンプトを貼り付け、長さ、解像度、アスペクト比を選択します。
  3. 生成をクリックし、完成後にそのままダウンロードします。

API 呼び出し

  1. コンソールで API Key を作成します。
  2. POST https://api.hiapi.ai/v1/tasks でタスクを送信し、taskId が返ります。
  3. GET /v1/tasks/{taskId} でステータスを確認し、status が success のとき output[0].url から動画をダウンロードします。

curl:最初の 1 本

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 は 4 種類あります:

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 を追加すると、同じキーでのリトライはタスクを 1 回だけ作成します。
  • 失敗時は自動返金:正常に生成された動画のみ課金されます。

よくある質問

解像度を小文字の 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 テキスト生成動画プロンプト事例(英語)をご覧ください。まず 1 本試したいなら、モデルページで生成してください。

永続的なAIアーティファクトで開発を始める

APIキーを取得して、タスクベースの1つのAPIで画像・動画・音声モデルを呼び出せます。

APIドキュメントを読む