はじめに
Anima Turbo 画像から画像 は、プロンプトの指示に沿って、元画像 1 枚をアニメイラストに描き直します。CircleStone Labs の 20 億パラメーターのアニメモデルを蒸留した Anima Turbo で動きます。0 から 1 の strength の値で、結果が元画像からどこまで離れるかを決めます。出力は元画像のアスペクト比を保ち、フィルターはかかりません。
手元の素材からモードを選ぶ
| 手元にあるもの | モード |
|---|---|
| スタイルを変えたい画像 | Anima Turbo 画像から画像 |
| 文章で書いた説明だけ | Anima Turbo テキストから画像 |
主な機能とハイライト
見通しの立つ strength
同じイラストを、別の内容を求めるプロンプトとともに 5 つの設定で試しました。0 では元画像がそのまま返り、0.3 ではほぼ同じ、0.6 では細部が少し変わり、既定の 0.8 では内容はプロンプトに従いつつポーズと部屋は残り、1 では元画像は関係なくなりました。写真は画風がもっと早く変わり、0.6 の時点で、当社の写真はすでにイラストらしく見えていました。
写真を入れれば、アニメが返る
strength 0.75 で、ステージの写真もホテルの窓辺の写真も、同じ構図、ポーズ、光のイラストになって返りました。プロンプトが場面を説明し、モデルが表現媒体を与えます。
形は元画像に従う
結果は常に元画像のアスペクト比を保ちます。解像度は画素数だけを決め、1k なら約 100 万画素、1.5k なら約 240 万画素です。
規制なし
入力画像もプロンプトも結果も、フィルターにかけられることはありません。当社のコンテンツ検証では、既定の強度で書いた通りの結果が返ってきました。
リクエストパラメーター
| パラメーター | 必須 | 説明 |
|---|---|---|
prompt | はい | 変更点だけでなく、返ってきてほしい画全体を書きます。誰がいて、何を着ていて、どこにいるのか。 1 文字以上 · 5000 文字以内 |
image_url | はい | 描き直したい画像です。結果はそのアスペクト比を保ち、返る画素数は解像度で決まります。 |
resolution | いいえ | 1k は約 100 万画素で既定、1.5k は約 240 万画素で料金は高くなります。アスペクト比は常に元画像に従います。 |
strength | いいえ | 元画像からどこまで離れるかを 0 から 1 で指定し、既定は 0.8 です。0 では元画像がそのまま返り、0.3 では写真はまだ写真のままで、0.75 前後では同じ構図のアニメになり、1 では元画像は無視されます。 |
seed | いいえ | strength を調整する間、結果を比べられる状態に保ちます。毎回まったく同じ画素になることを保証するものではありません。 |
料金
解像度ごとに 1 枚単位で課金され、料金はテキストから画像と同じです。
| 仕様 | 料金 |
|---|---|
| $0.012 / 枚 |
| $0.024 / 枚 |
ユースケース
写真のアニメ版
ポートレート、カップルの写真、旅先のスナップ、撮影のスチルが、元の構図を保ったイラストになります。アバター、カバー、SNS の投稿にそのまま使えます。
異なる素材に共通のルックを
別々のカメラで撮った写真や、ほかのツールのレンダリングを、同じプロンプトの型と strength で通し、セット全体を統一したアニメ調にそろえます。
規制なしのスタイル変換
手持ちの画像を、審査なし、結果へのフィルターなしで描き直せます。料金はテキストから画像と同じ 1 枚ごとの料金です。
プロンプトガイドと実践のヒント
変更点ではなく、画そのものを書く
このエンドポイントは画風を変換するもので、「ドレスを替えて」のような指示には従いません。最終的な画に含まれるものを書いてください。既存のイラストに新しい服装や別の時間帯を求めたときは、ほとんど変わりませんでした。
写真は 0.75 から
写真がまだ透けて見えるなら strength を 0.05 ずつ上げ、ポーズや顔がずれるなら下げます。比べる間は seed を固定してください。
プロンプトを元画像に合わせる
元画像に実際にある髪、服、舞台を書きます。画と矛盾するプロンプトは、結果を元画像から引き離します。
きれいな元画像を送る
被写体が 1 つはっきりしていて、枠、キャプション、透かしのない画像が適しています。モデルは見えるものをすべて描き直し、残すつもりのなかったものまで描きます。
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": "circlestone-labs/anima-turbo/edit",
"input": {
"image_url": "https://example.com/reference.png",
"prompt": "A ceramic teapot on a linen cloth, soft window light, muted palette",
"resolution": "1k"
}
}'
# 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 リファレンスを参照してください。










