はじめに
Wan 2.1 LoRA 画像から動画 は、Alibaba のオープンな 140 億パラメータの動画モデルに最大 3 つの LoRA ファイルを読み込み、1 枚の写真を動かします。クリップは 480p または 720p の 5 秒か 10 秒で、写真の形を保ち、コンテンツフィルターなしで返ります。
手元の素材からモードを選ぶ
| 手元にあるもの | モード |
|---|---|
| 文章で書いた説明 | Wan 2.1 LoRA テキストから動画 |
| 動かしたい写真 | Wan 2.1 LoRA 画像から動画 |
| スタイルを変えたいクリップ | Wan 2.1 LoRA 動画から動画 |
| クリップではなく静止画 | Wan 2.1 Image LoRA テキストから画像 |
主な機能とハイライト
カメラ LoRA とエフェクト LoRA
Wan 2.1 の画像から動画向けに学習したオービット、ドリーなどのエフェクト LoRA は、直接リンクで読み込めます。例では、オービット LoRA がカメラを被写体の背後へ回り込ませました。同じ seed でこれがなければ、カメラは動きませんでした。
再現しやすい実行
当社のテストでは、同じ seed と入力でバイト単位で同一のクリップが返りました。そのため、このエンドポイントは LoRA を調整するのにいちばんきれいな場所です。scale を 1 つずつ変えれば、見える違いはすべてその変更によるものです。
Wan 2.2 の低ノイズ側 LoRA
当社のテストでは、Wan 2.2 の画像から動画 LoRA の低ノイズ側ファイルが、Wan 2.1 版と同じ方向にクリップを変えました。新しい LoRA の多くもここで使えます。
カスタムウェイトで無検閲
LoRA は審査されず、出力もフィルターされません。送った写真も判定されません。
リクエストパラメーター
| パラメーター | 必須 | 説明 |
|---|---|---|
prompt | はい | 必須です。LoRA にトリガーワードがあれば先に書き、続けて最初のフレームのあとに何が起きるか、カメラがどう動くかを書きます。 1 文字以上 |
negative_prompt | いいえ | クリップに入れたくないもの(ぼやけ、余分な指、文字、透かしなど)。任意で、料金には影響しません。 |
image_url | はい | 最初のフレームです。クリップはこの写真の形を保ちます。 1 文字以上 |
resolution | いいえ | 480p(既定)か 720p。720p はクリップあたりの料金が高く、時間もかかります。 |
duration_seconds | いいえ | 5 秒(既定)か 10 秒。ほかの長さは拒否されます。 |
loras | いいえ | Wan 2.1 14B 向けに学習した {path, scale} を最大 3 つ(画像から動画の LoRA の多くは 480P チェックポイントで学習されていますが、720p でも動きます)。path は .safetensors ファイルへの公開の直接リンクで、scale は 0〜4(既定は 1)。 デフォルト値: |
guidance_scale | いいえ | クリップがプロンプトにどれだけ厳密に従うかで、0〜20、既定は 5。steps を下げながら上げると、彩度が上がりすぎてアーティファクトの多いフレームになりました。 |
flow_shift | いいえ | フローマッチングのタイムステップのシフトで、1〜10。指定しなければ 480p では 3、720p では 5 になります。 |
steps | いいえ | ノイズ除去のステップ数で、1〜40、既定は 30。少ないほど速く、柔らかい仕上がりになります。 |
seed | いいえ | 当社のテストでは、同じ seed と同じ入力でバイト単位で同一のクリップが返ったので、LoRA が何を変えているかを見るのにいちばん簡単な方法です。約束ではなく、比較のための道具として扱ってください。 |
料金
解像度と長さに応じて 1 クリップごとに課金されます。10 秒のクリップは 5 秒のクリップの 1.5 倍の料金です。LoRA と写真の形で料金は変わりません。
| 解像度 | 長さ: 5 | 長さ: 10 |
|---|---|---|
| $0.24 / リクエスト | $0.36 / リクエスト |
| $0.36 / リクエスト | $0.54 / リクエスト |
ユースケース
動くポートレート
静止画を、ゆっくりしたプッシュインからフルオービットまで、好きなカメラワークのショットにできます。顔と服装は写真のままです。
ファッションと商品の静止画
オービット LoRA なら、1 枚のよい写真から服装や物をあらゆる角度から見せられ、2 回目の撮影を省けます。
コンテンツフィルターのないプラットフォーム
利用者が求める LoRA で、自分の映像を動かしてください。画面に映るすべての人物は成人である必要があります。
プロンプトガイドと実践のヒント
トリガーフレーズを書く
エフェクト LoRA は、たいていトリガーワードが必要です。たとえば作者が記載しているオービット用のフレーズです。例のオービットと同じく、カメラを説明する文に入れてください。
変えたいことを頼む
モデルは写真に近いまま動くので、写真の服装や場所は保たれがちです。動作と変えたいことは、プロンプトの早い位置に、1 クリップにつき主な動作を 1 つだけ書いてください。
同じ seed で比べる
同じ seed で、loras を空にした実行と LoRA ありの実行を 1 回ずつ行います。ここではクリップを直接比べられるので、LoRA が何をしているかがそのまま見えます。
公開された直接リンクを使う
Hugging Face の「resolve/main」リンクのように、.safetensors ファイルそのものをダウンロードできる公開リンクを使ってください。リポジトリのページ、ログインが必要なファイル、サインインへリダイレクトされる Civitai のリンクではリクエストが失敗し、失敗したリクエストは課金されません。
API クイックスタート
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "alibaba/wan-2.1-lora/image-to-video",
"input": {
"duration_seconds": 5,
"image_url": "https://example.com/reference.png",
"prompt": "A slow aerial shot drifting over a misty pine forest at sunrise",
"resolution": "480p"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
認証、完全なスキーマ、ポーリング、エラー処理は API リファレンスを参照してください。
























