Wan2.2-Animate 図形動作生成 は何をしますか?
参照動画の動作と表情を静的な人物画像に転写し、動的動画を生成します。阿里雲百煉 API を使用し、モデル名は固定で wan2.2-animate-move です。
事前チェック(毎回必ず実施)
本スキルには阿里雲百煉 API Key が必要です。まず作業ディレクトリを本 SKILL.md が存在するディレクトリに変更し、次を実行します:
python scripts/wan_animate.py check
このパスで「ファイルが見つかりません」とエラーが出た場合は、スキルディレクトリの絶対パスを使用して再試行します(scripts/wan_animate.py を <スキルディレクトリ>/scripts/wan_animate.py に置き換えてください)。スクリプトが見つからないからといって諦めたり、別の方法で自分でリクエストを書かないでください。
- 出力が
"api_key_set": true→ そのまま続行します。 - 出力が
false→ ユーザーに API Key を尋ねてください。自分で推測したりハードコードしたりしないでください。ユーザーに阿里雲百煉コンソールでキーを作成し、環境変数を設定するよう案内します:
# Windows PowerShell
$env:DASHSCOPE_API_KEY="sk-xxxx"
# macOS / Linux
export DASHSCOPE_API_KEY=sk-xxxx
ユーザーの API Key をファイル、メモ、会話サマリーに書き込まないでください。 現在のセッション内でのみ環境変数で渡します。
ユーザーがビジネススペース専用ドメイン(より高速で安定)を使用したい場合は、ユーザーに提供してもらい、DASHSCOPE_API_HOST を設定します:
https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com またはシンガポールリージョン
https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com。北京とシンガポールの API Key は互換性がないことに注意してください。
実行
python scripts/wan_animate.py run \
--image <キャラクター画像のパスまたはURL> \
--video <参照動画のパスまたはURL> \
--mode wan-std \
--out ./output
パラメータ説明:
| パラメータ | 説明 |
|---|---|
--image | 必須。キャラクター画像。ローカルパスまたは公開URL。ローカルファイルはスクリプトが自動的に百煉一時ストレージにアップロードします |
--video | 必須。参照動画。同上。長さ2~30秒 |
--mode | wan-std 標準モード、高速かつ低コスト、デフォルト。wan-pro プロフェッショナルモード、より滑らかだが低速で高コスト |
--watermark | 「AI生成」透かしを追加。デフォルトではなし |
--out | 出力ディレクトリ。デフォルト ./wan_animate_output |
--no-download | 結果リンクのみを返し、ローカルに保存しない。結果リンクは24時間有効。通常はローカルにダウンロードするほうが良い |
スクリプトは自動的に以下を実行します:ローカル素材のアップロード → 非同期タスクの作成 → 15秒ごとのポーリング → 成果物のローカルダウンロード。
1つの動画には通常数分かかりますが、これは正常です。途中でエラーとみなさず、ポーリングが完了するまで待ちます。
最終的に RESULT_JSON_BEGIN / RESULT_JSON_END の間で結果JSONが出力されるので、その中の動画パスをユーザーに伝えます。
素材制限(提出前に事前チェックすることで、失敗の手間を省けます)
- 画像:JPG/JPEG/PNG/BMP/WEBP、幅と高さ200~4096ピクセル、アスペクト比1:3~3:1、5MB以下
- 動画:MP4/AVI/MOV、長さ2~30秒、幅と高さ200~2048ピクセル、アスペクト比1:3~3:1、200MB以下
- 両方の素材は公開アクセス可能なURLまたはローカルファイルである必要があります。通常のURLでログインが必要だったりホットリンク防止がかかっている場合は失敗します。その場合はユーザーにファイルをローカルにダウンロードしてもらい、ローカルパスを使用します
制限を超えている場合は、呼び出し前にユーザーに伝え、どのように対処すべきか(トリミング、圧縮、トランスコード)を説明してください。無理に送信しないでください。
効果最適化(出力品質が悪い場合、まず以下を確認)
- 画像と参照動画内の人物のフレーム占有率が近いこと——全身と半身ではほぼ確実に失敗します
- 両者の人物の体格比率が一致していること
- 参照動画は解像度とフレームレートが高いほど良い——ぼやけた動画は直接的に成果物の画質を低下させます
- 最初は
wan-stdで動作が合っているか確認し、満足したらwan-proで最終版を出力します——pro モードはコストが高いので、いきなり使わないでください
一般的なエラー処理
スクリプトは百煉のエラーコードをわかりやすい日本語に変換します。それをそのままユーザーに伝えてください:
UrlOrFileNotReachable/downloadFail→ リンクが通じないか認証が必要。ローカルファイルアップロードに切り替えDataInspectionFailed/IPInfringementSuspect→ 素材がコンテンツ審査を通らなかったか、権利侵害の疑い。素材を変更Arrearage/FreeQuotaExhausted→ アカウントが未払いか無料枠を使い切った。チャージまたは有料プランへの切り替えが必要InvalidApiKey→ Key が無効。ユーザーに再生成を依頼Throttling→ レート制限に抵触。少し待ってからリトライInvalidParameter→ 素材のサイズや長さが仕様に合わない。上記の制限を確認
課金体系:入力は無料、成功した動画の秒数に応じて課金、呼び出し失敗時は課金されません。 具体的な単価は百煉コンソールを参照してください。ユーザーから尋ねられた場合は「モデル価格」ページを確認するよう伝え、記憶で見積もらないでください。
ユーザーがまだ素材を提供していない場合は、まず画像と動画がどこにあるかを尋ね、ファイルパスを捏造しないでください。