
Sheetsからコンテンツ計画
01テーマ別の肖像、衣装違い、カバー案をGoogle Sheetsに整理。小さなキューを生成し、公開前に画像とプロンプトを並べて確認します。
最初に変えるポイント
固有の行 ID を使い、実行準備のできたプロンプトに todo を設定します。開始用テンプレートは 1 回に最大 4 行を処理し、各画像の状態を記録します。
n8n Cloud・セルフホスト / ワークフローテンプレート
NSFW クリエイターのアイデアをまとめたシートを、整理された画像制作キューに変えます。1 回に最大 4 枚の Z-Image Turbo のコンセプト画像を生成し、各画像をプロンプト、状態、結果へのリンクと並べて確認できます。
Cloud版は組み込みのHTTPノード、セルフホスト版はSpicyAPIコミュニティノードを使います。以下で対応する設定手順を選んでください。

どの構想が成功したか、対応するタスクは何か、どの行を確認すべきかが分かる制作表。実行記録には、次の公開工程や保存工程に使えるダウンロード済み画像も含まれます。
処理の流れ
todo行を読む
最大4行に絞る
生成してダウンロード
同じ行を更新
NSFW / キャラクター / スタイル

テーマ別の肖像、衣装違い、カバー案をGoogle Sheetsに整理。小さなキューを生成し、公開前に画像とプロンプトを並べて確認します。
最初に変えるポイント
固有の行 ID を使い、実行準備のできたプロンプトに todo を設定します。開始用テンプレートは 1 回に最大 4 行を処理し、各画像の状態を記録します。

イラスト集、キャラクターカード、ビジュアルノベル向けにオリジナルの成人キャラクターを作成。対応するスタイルLoRAで線や仕上がりを探れます。
最初に変えるポイント
Z-Image Turbo用のLoRAとトリガーワードを選び、別のアダプターを加える前に1シーンを比較します。

窓辺のポートレート、夜の衣装、バルコニーでの一枚をひとつの物語に。まず4シーンで方向性を探し、気に入った雰囲気を広げましょう。
最初に変えるポイント
各シーンで元の参照画像を再利用します。顔と髪を保ち、衣装と場所を変えましょう。
ワークフローの使い方
組み込みHTTPノードでキューを処理するならCloud版JSONを使います。送信前に元のリクエストを記録し、待機前に受理済みタスクIDを書き戻します。タスクのある行は、その処理を再開します。
Cloud版JSONをn8nに読み込みます。Quote Request、Create Task、Get TaskでGeneric Credential Type → Bearer Authを選び、同じ認証情報を指定します。そのBearer Token欄にAPIキーを入力します。すべてのSheetsノードには同じGoogle Sheets OAuth2認証情報を選びます。設定中はワークフローを無効のままにします。
列名はid、prompt、status、taskId、resultUrl、cost、error、idempotencyKey、firstAttemptAt、requestJsonの10個です。各行に、英字・数字・アンダースコア・ハイフンで1〜48文字の一意なidを付けます。promptに制作指示を入れ、新しい行はtodoにします。新規行の復旧用3列は空にしておき、ワークフローに入力させます。
SettingsにdocumentIdとsheetNameを入力します。maxItemsを1〜4、maxCostUsdを0より大きく1枚あたり0.10 USD以下にします。Read Rowsが表を読み、Select Rowsが対象項目を選びます。表、認証情報、予算が整ったらenabled=trueにします。2つの実行が同じ行を選ばないよう、一度に1つだけ実行してください。
手動実行を開始します。Save Requestが送信前に元のリクエストと再送キーを記録し、Save Accepted Taskが状態確認前にtaskIdを記録します。新規タスクは見積もりと最大請求額の確認を通る必要があります。Get Taskの待機は1項目あたり最大60回または300秒で、進行中のリクエスト分が加わります。Download ImageはAPI認証情報を使いません。Write Resultsは一致するidの行をdoneかneeds_reviewに更新し、成功したファイルはBatch Resultsのbinary.dataに入ります。
processingまたはneeds_reviewでtaskIdがある行は、次回実行で新規作成せずに取得します。IDがなければ、保存済みの実行記録とコンソールを先に確認します。23時間以内に元のリクエストを変えず再送するには、idempotencyKey、firstAttemptAt、requestJsonを保ったままstatus=todoにします。期限を過ぎた場合は、受理済みtaskIdを探してください。別の創作を試すなら、一意のid、status=todo、空のtaskIdと復旧用3列を持つ新しい行を追加します。元の結果と費用記録を残すためです。ダウンロードした画像は別途保存してください。resultUrlは一時的なものです。
ご自身のセルフホストn8nに、公式SpicyAPIコミュニティノードをインストールして使うバージョンです。
id、prompt、status、taskId、resultUrl、cost、errorの列を作ります。各行に一意で変わらないidを付け、実行したい構想だけをtodoにします。
Google Sheetsの認証情報を選び、Generate ImageとGet Image Resultには同じSpicyAPI認証情報を設定します。SettingsでdocumentIdとsheetNameを設定すると、読み取り・更新ノードが共通で使います。更新は画面上の行番号ではなく、固定したidで照合します。
statusフィルターはtodoのままにします。このテンプレートのGoogle Sheets読み取りノードでは、Return only First Matching Rowをオフに保ちます。次の手順で、一致した1行だけでなく最大4行を選べます。
maxItemsを1〜4、maxCostUsdを0より大きく0.10 USD以下の1枚あたりの上限に設定します。現在のZ-Image Turbo料金と認証情報を確認し、キュー実行前にenabledをtrueにします。
結果確認後、各行はdoneまたはneeds_reviewになります。needs_reviewは新しく試す前に記録済みtaskIdを取得し、結果を確認します。IDがない場合は、保存済みの実行記録とコンソールを確認してください。新たな生成を意図する場合だけtodoに戻し、doneの行はキューから外しておきます。
創作例です。ご自身の架空の成人キャラクターと元画像に合わせて変更してください。
An original adult anime character, age 30, with short silver hair and emerald eyes, wearing a dark green evening dress at a neon-lit hotel lounge. Visual novel gallery cover, expressive cel shading, detailed fabric, clean composition, no lettering.この方向で試す参照画像の編集は Qwen Image 2.1、新しいアイデアは Z-Image Turbo から始めます。より具体的な NSFW の画風を求める場合は、バッチの規模を拡大する前に、対応する LoRA モデルと Spicy コレクションを確認しましょう。
1回の実行で最大4行を処理し、新しい行ごとに画像生成タスクが1件発生します。予定費用は選んだ各項目の見積もり合計です。needs_reviewは処理中の可能性があるため、まず記録済みtaskIdを取得します。別の創作を試す場合は、一意のidを持つ新しいtodo行を追加し、元の結果と費用記録は残してください。
既存タスクを確認するまで、行をneeds_reviewのままにします。Cloud版はtaskIdのある行を次回実行で取得します。IDがない場合は、元のリクエストを再送する前に保存済みの実行記録とコンソールを確認します。セルフホスト版では、記録済みtaskIdを指定してTask → Getを使います。待機が終わっただけで行をリセットしないでください。
セルフホストのプラグイン版は、読み取りノードのReturn only First Matching Rowをオフに保ちます。Cloud版は表を読み、Select Rowsで対象行を選びます。バッチを増やす前にmaxItemsと行の状態を確認してください。
実行記録のダウンロード済みバイナリをDriveなどの保存処理へ渡し、恒久的なリンクを書き戻します。このテンプレートにはDriveへの保存ノードは含まれていません。
テンプレートをダウンロードするか、一連の処理を接続する前にPlaygroundで同じモデルを試してみましょう。