アップロード&FLUX Kontext

上級

これはDesign, AI, Marketing分野の自動化ワークフローで、27個のノードを含みます。主にIf, Set, Wait, Merge, Githubなどのノードを使用、AI技術を活用したスマート自動化を実現。 FLUX Kontextを使ってキャラクター一貫の画像を作成し、アップロードしてソーシャル・メディアに投稿

前提条件
  • GitHub Personal Access Token
  • ターゲットAPIの認証情報が必要な場合あり
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
  "id": "AdtCs47Lt1Wtf2Dt",
  "meta": {
    "instanceId": "fb924c73af8f703905bc09c9ee8076f48c17b596ed05b18c0ff86915ef8a7c4a",
    "templateCredsSetupCompleted": true
  },
  "name": "Upload-Post And FLUX Kontext",
  "tags": [],
  "nodes": [
    {
      "id": "ed7d240f-9181-4f23-9e3a-24e7886c7e31",
      "name": "「ワークフロー実行」クリック時",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -180,
        0
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "4656ae65-d58b-4126-ada3-eda97fde5c4e",
      "name": "準備完了?",
      "type": "n8n-nodes-base.if",
      "position": [
        500,
        400
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "or",
          "conditions": [
            {
              "id": "3cf5b451-9ff5-4c2a-864f-9aa7d286871a",
              "operator": {
                "name": "filter.operator.equals",
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.status }}",
              "rightValue": "Ready"
            },
            {
              "id": "a9b6d102-bb38-443f-a204-1c07476cb360",
              "operator": {
                "type": "number",
                "operation": "gt"
              },
              "leftValue": "={{ $runIndex }}",
              "rightValue": 5
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "f8dbc367-1052-4548-b3b8-33f6ede4d0ba",
      "name": "FLUXステータス確認",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        340,
        400
      ],
      "parameters": {
        "url": "https://api.bfl.ml/v1/get_result",
        "options": {},
        "sendQuery": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "queryParameters": {
          "parameters": [
            {
              "name": "id",
              "value": "={{ $json.id }}"
            }
          ]
        }
      },
      "credentials": {
        "httpHeaderAuth": {
          "id": "4eQN9wBw8SniKcPw",
          "name": "bfl-FLUX"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "9624cdc6-1f7b-459f-b16a-eab69d23b45c",
      "name": "付箋1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -60,
        320
      ],
      "parameters": {
        "color": 7,
        "width": 862,
        "height": 282,
        "content": "# Image processing part"
      },
      "typeVersion": 1
    },
    {
      "id": "c6393bc7-6b7a-4a25-a524-8a7bd6b2c781",
      "name": "他ワークフロー実行時",
      "type": "n8n-nodes-base.executeWorkflowTrigger",
      "position": [
        -380,
        400
      ],
      "parameters": {
        "inputSource": "passthrough"
      },
      "typeVersion": 1.1
    },
    {
      "id": "4f3717a6-2580-4664-8182-efa1c8652589",
      "name": "FLUX Kontext",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        0,
        400
      ],
      "parameters": {
        "url": "https://api.bfl.ml/v1/flux-kontext-pro",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "authentication": "genericCredentialType",
        "bodyParameters": {
          "parameters": [
            {
              "name": "input_image",
              "value": "={{ $json[$('When Executed by Another Workflow').first().json.binaryin] }}"
            },
            {
              "name": "prompt",
              "value": "={{ $('When Executed by Another Workflow').first().json.prompt }}"
            },
            {
              "name": "prompt_upsampling",
              "value": "={{ false }}"
            },
            {
              "name": "output_format",
              "value": "png"
            },
            {
              "name": " aspect_ratio",
              "value": "1:1"
            }
          ]
        },
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {
        "httpHeaderAuth": {
          "id": "4eQN9wBw8SniKcPw",
          "name": "bfl-FLUX"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "2a48ecd4-07bc-4202-abe3-3bc0bfbfed6d",
      "name": "マージ",
      "type": "n8n-nodes-base.merge",
      "position": [
        420,
        0
      ],
      "parameters": {
        "mode": "combine",
        "options": {
          "includeUnpaired": true
        },
        "combineBy": "combineByPosition"
      },
      "typeVersion": 3.1
    },
    {
      "id": "cc5f96a9-ed87-4526-85c2-074dc5c8e166",
      "name": "2秒待機",
      "type": "n8n-nodes-base.wait",
      "position": [
        180,
        400
      ],
      "webhookId": "3df5a762-edab-49df-ac70-be3b56545212",
      "parameters": {
        "amount": 2
      },
      "typeVersion": 1.1
    },
    {
      "id": "54cf0d0d-c3a0-4243-b425-ba8cdfaf1063",
      "name": "付箋",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -20,
        -240
      ],
      "parameters": {
        "width": 380,
        "height": 260,
        "content": "## Define prompts here\nPrepare an array of prompts that will be used one by one on the next steps. Update limit in the `Number of Steps` node if you need more than 5 iterations."
      },
      "typeVersion": 1
    },
    {
      "id": "add02353-b31e-4990-83ad-2d936343ab7f",
      "name": "付箋2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -20,
        60
      ],
      "parameters": {
        "width": 380,
        "height": 220,
        "content": "## Load the initial image"
      },
      "typeVersion": 1
    },
    {
      "id": "8367ef9f-cf00-4987-91ec-09fe3ec6918d",
      "name": "付箋3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -340,
        -420
      ],
      "parameters": {
        "width": 260,
        "height": 400,
        "content": "## Initial example\n![](https://raw.githubusercontent.com/teds-tech-talks/n8n-community-leaderboard/main/_creators/eduard/mascot.png)"
      },
      "typeVersion": 1
    },
    {
      "id": "c4a52815-ba73-4f9c-8c44-fca40cab6440",
      "name": "GitHubからファイル取得",
      "type": "n8n-nodes-base.github",
      "position": [
        20,
        120
      ],
      "webhookId": "e70d0c46-6478-4c11-85a6-8b7e1f9588de",
      "parameters": {
        "owner": {
          "__rl": true,
          "mode": "name",
          "value": "teds-tech-talks"
        },
        "filePath": "_creators/eduard/mascot.png",
        "resource": "file",
        "operation": "get",
        "repository": {
          "__rl": true,
          "mode": "name",
          "value": "n8n-community-leaderboard"
        },
        "authentication": "oAuth2",
        "asBinaryProperty": false,
        "additionalParameters": {}
      },
      "credentials": {
        "githubOAuth2Api": {
          "id": "SBUgEkMg70oFZRct",
          "name": "TTT GitHub account"
        }
      },
      "typeVersion": 1.1
    },
    {
      "id": "bb48cde8-fc79-407e-8daa-4322398d8385",
      "name": "初期画像ダウンロード",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        220,
        120
      ],
      "parameters": {
        "url": "={{ $json.download_url }}",
        "options": {
          "response": {
            "response": {
              "responseFormat": "file",
              "outputPropertyName": "data0"
            }
          }
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "ffc484fe-c183-4858-8303-8733596e2afc",
      "name": "条件分岐",
      "type": "n8n-nodes-base.if",
      "position": [
        680,
        0
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "4d3dcb8f-c435-40fd-aca6-a37647fc3a10",
              "operator": {
                "type": "number",
                "operation": "lt"
              },
              "leftValue": "={{ $runIndex }}",
              "rightValue": "={{ $json.Steps }}"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "6fbd6310-7596-4460-8a85-3cc0b1253509",
      "name": "ステップ数",
      "type": "n8n-nodes-base.set",
      "position": [
        220,
        -120
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "9e3d00d0-467a-41c8-aaa1-f1d29694737c",
              "name": "Steps",
              "type": "number",
              "value": "={{ Math.min($json.Prompts.length,5) }}"
            }
          ]
        },
        "includeOtherFields": true
      },
      "typeVersion": 3.4
    },
    {
      "id": "6bacc1b2-7154-428c-ab0f-76f356c59e35",
      "name": "全プロンプト",
      "type": "n8n-nodes-base.set",
      "position": [
        20,
        -120
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "64e9c28e-a60a-499b-aa89-177bf952959f",
              "name": "Prompts",
              "type": "array",
              "value": "=[\"Make this animal mascot coming out of the builing with wearing an official business suite. Preserve the exact character features and style\",\"Now make this animal mascot sitting in the terrace mediterranian cafe. Preserve the exact character features and style, but wearing hawaii shorts instead of trouses\",\"Now make this animal mascot standing on the beach with a starfish in it's hands, waring only hawaii shorts. Preserve the exact character features and style.\"]"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "913b8c79-e9ed-4221-853a-2ea6071f8c5a",
      "name": "FLUX実行",
      "type": "n8n-nodes-base.executeWorkflow",
      "position": [
        1120,
        -100
      ],
      "parameters": {
        "options": {},
        "workflowId": {
          "__rl": true,
          "mode": "list",
          "value": "AdtCs47Lt1Wtf2Dt",
          "cachedResultName": "Upload-Post And FLUX Kontext"
        },
        "workflowInputs": {
          "value": {},
          "schema": [],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": true
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "8c7089e9-45ea-4626-9c7d-01dc9df2137e",
      "name": "現在のステップ",
      "type": "n8n-nodes-base.set",
      "position": [
        880,
        0
      ],
      "parameters": {
        "include": "selected",
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "64e9c28e-a60a-499b-aa89-177bf952959f",
              "name": "prompt",
              "type": "string",
              "value": "={{ $json.Prompts[$runIndex] }}"
            },
            {
              "id": "aee3c455-ced2-4520-a088-18ffaf6db11c",
              "name": "binaryin",
              "type": "string",
              "value": "=data{{ $runIndex }}"
            },
            {
              "id": "61cccca2-7b0c-4ea6-82f3-5dc2a377c3cb",
              "name": "binaryout",
              "type": "string",
              "value": "=data{{ Number($runIndex)+1 }}"
            },
            {
              "id": "0cbe4309-e6f0-4c65-87f6-95bf6609aade",
              "name": "currentstep",
              "type": "number",
              "value": "={{ $runIndex }}"
            }
          ]
        },
        "includeFields": "Prompts, Steps",
        "includeOtherFields": true
      },
      "typeVersion": 3.4
    },
    {
      "id": "8eb4790f-ecf9-4136-813a-a87bd1d40edd",
      "name": "マージ3",
      "type": "n8n-nodes-base.merge",
      "position": [
        1320,
        -20
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineByPosition"
      },
      "typeVersion": 3.2
    },
    {
      "id": "49eb0be4-4ebc-48bd-a77d-20fb02779ad1",
      "name": "付箋4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        620,
        -200
      ],
      "parameters": {
        "width": 860,
        "height": 380,
        "content": "## Iterate over prompts\n- On each step a next prompt it taken from the original array\n- Outputs from the previous FLUX Kontext request are moved forward to the subsequent generation"
      },
      "typeVersion": 1
    },
    {
      "id": "361cd8ac-29be-40a9-a5f8-d12656373c96",
      "name": "付箋5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1100,
        220
      ],
      "parameters": {
        "color": 5,
        "width": 260,
        "height": 280,
        "content": "## [Post several images via Upload Post](https://www.upload-post.com/?linkId=lp_144414&sourceId=post-now&tenantId=upload-post-app)\n[Click to create your own account](https://www.upload-post.com/?linkId=lp_144414&sourceId=post-now&tenantId=upload-post-app)"
      },
      "typeVersion": 1
    },
    {
      "id": "af34e5a7-d1cc-446f-a210-5aa96c271640",
      "name": "アップロード投稿",
      "type": "n8n-nodes-upload-post.uploadPost",
      "position": [
        1120,
        340
      ],
      "parameters": {
        "user": "Ed",
        "title": "Testing n8n uploads with Upload Post community node hotfix and FLUX1. Kontext",
        "photos": "={{ Array.from({length: $json.Steps}, (_, i) => `data${i + 1}`).join(',') }}",
        "platform": [
          "x"
        ]
      },
      "credentials": {
        "uploadPostApi": {
          "id": "xLY6thqjSJUCWssD",
          "name": "Upload Post account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "32836601-6a7d-4e1a-9fc4-74d6f5f78187",
      "name": "画像をBase64に変換",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        -200,
        400
      ],
      "parameters": {
        "options": {},
        "operation": "binaryToPropery",
        "destinationKey": "={{ $('When Executed by Another Workflow').first().json.binaryin }}",
        "binaryPropertyName": "={{ $('When Executed by Another Workflow').first().json.binaryin }}"
      },
      "typeVersion": 1
    },
    {
      "id": "d40118c7-0ab6-4276-b733-22419e5521d6",
      "name": "画像取得",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        680,
        400
      ],
      "parameters": {
        "url": "={{ $json.result.sample }}",
        "options": {
          "response": {
            "response": {
              "responseFormat": "file",
              "outputPropertyName": "={{ $('When Executed by Another Workflow').first().json.binaryout }}"
            }
          }
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "e35f7544-b687-4ee5-a59f-3f98d26b1d12",
      "name": "付箋6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        620,
        -620
      ],
      "parameters": {
        "width": 260,
        "height": 400,
        "content": "## Step 1\n![](https://pbs.twimg.com/media/Gs7SwU_XYAASZBn?format=jpg&name=medium)"
      },
      "typeVersion": 1
    },
    {
      "id": "230498f5-69f5-4282-bb25-854720b1d536",
      "name": "付箋7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        920,
        -620
      ],
      "parameters": {
        "width": 260,
        "height": 400,
        "content": "## Step 2\n![](https://pbs.twimg.com/media/Gs7SwovWQAAncQT?format=jpg&name=medium)"
      },
      "typeVersion": 1
    },
    {
      "id": "425c3696-4532-401e-8131-78553358c8c8",
      "name": "付箋8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1220,
        -620
      ],
      "parameters": {
        "width": 260,
        "height": 400,
        "content": "## Step 3\n![](https://pbs.twimg.com/media/Gs7SxHsXYAAkhPF?format=jpg&name=medium)"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "callerPolicy": "workflowsFromSameOwner",
    "executionOrder": "v1",
    "saveDataSuccessExecution": "all"
  },
  "versionId": "94bff334-aee9-4139-acb9-966013fca4ea",
  "connections": {
    "ffc484fe-c183-4858-8303-8733596e2afc": {
      "main": [
        [
          {
            "node": "8c7089e9-45ea-4626-9c7d-01dc9df2137e",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "af34e5a7-d1cc-446f-a210-5aa96c271640",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2a48ecd4-07bc-4202-abe3-3bc0bfbfed6d": {
      "main": [
        [
          {
            "node": "ffc484fe-c183-4858-8303-8733596e2afc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8eb4790f-ecf9-4136-813a-a87bd1d40edd": {
      "main": [
        [
          {
            "node": "ffc484fe-c183-4858-8303-8733596e2afc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "913b8c79-e9ed-4221-853a-2ea6071f8c5a": {
      "main": [
        [
          {
            "node": "8eb4790f-ecf9-4136-813a-a87bd1d40edd",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "4656ae65-d58b-4126-ada3-eda97fde5c4e": {
      "main": [
        [
          {
            "node": "d40118c7-0ab6-4276-b733-22419e5521d6",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "cc5f96a9-ed87-4526-85c2-074dc5c8e166",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "cc5f96a9-ed87-4526-85c2-074dc5c8e166": {
      "main": [
        [
          {
            "node": "f8dbc367-1052-4548-b3b8-33f6ede4d0ba",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "6bacc1b2-7154-428c-ab0f-76f356c59e35": {
      "main": [
        [
          {
            "node": "6fbd6310-7596-4460-8a85-3cc0b1253509",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8c7089e9-45ea-4626-9c7d-01dc9df2137e": {
      "main": [
        [
          {
            "node": "913b8c79-e9ed-4221-853a-2ea6071f8c5a",
            "type": "main",
            "index": 0
          },
          {
            "node": "8eb4790f-ecf9-4136-813a-a87bd1d40edd",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "4f3717a6-2580-4664-8182-efa1c8652589": {
      "main": [
        [
          {
            "node": "cc5f96a9-ed87-4526-85c2-074dc5c8e166",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "32836601-6a7d-4e1a-9fc4-74d6f5f78187": {
      "main": [
        [
          {
            "node": "4f3717a6-2580-4664-8182-efa1c8652589",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "6fbd6310-7596-4460-8a85-3cc0b1253509": {
      "main": [
        [
          {
            "node": "2a48ecd4-07bc-4202-abe3-3bc0bfbfed6d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f8dbc367-1052-4548-b3b8-33f6ede4d0ba": {
      "main": [
        [
          {
            "node": "4656ae65-d58b-4126-ada3-eda97fde5c4e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c4a52815-ba73-4f9c-8c44-fca40cab6440": {
      "main": [
        [
          {
            "node": "bb48cde8-fc79-407e-8daa-4322398d8385",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "bb48cde8-fc79-407e-8daa-4322398d8385": {
      "main": [
        [
          {
            "node": "2a48ecd4-07bc-4202-abe3-3bc0bfbfed6d",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "c6393bc7-6b7a-4a25-a524-8a7bd6b2c781": {
      "main": [
        [
          {
            "node": "32836601-6a7d-4e1a-9fc4-74d6f5f78187",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ed7d240f-9181-4f23-9e3a-24e7886c7e31": {
      "main": [
        [
          {
            "node": "c4a52815-ba73-4f9c-8c44-fca40cab6440",
            "type": "main",
            "index": 0
          },
          {
            "node": "6bacc1b2-7154-428c-ab0f-76f356c59e35",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
よくある質問

このワークフローの使い方は?

上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。

このワークフローはどんな場面に適していますか?

上級 - デザイン, 人工知能, マーケティング

有料ですか?

このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。

ワークフロー情報
難易度
上級
ノード数27
カテゴリー3
ノードタイプ12
難易度説明

上級者向け、16ノード以上の複雑なワークフロー

外部リンク
n8n.ioで表示

このワークフローを共有

カテゴリー

カテゴリー: 34