AutomationFlowsAI & RAG › AI Image Generator with Google Gemini

AI Image Generator with Google Gemini

Original n8n title: Flux All

flux_all. Uses httpRequest, formTrigger, lmChatGoogleGemini, chainLlm. Webhook trigger; 23 nodes.

Webhook trigger★★★★☆ complexityAI-powered23 nodesHTTP RequestForm TriggerGoogle Gemini ChatChain LlmS3
AI & RAG Trigger: Webhook Nodes: 23 Complexity: ★★★★☆ AI nodes: yes Added:

This workflow follows the Chainllm → Form Trigger recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "name": "flux_all",
  "nodes": [
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "9ec60f33-b940-40a6-9f8a-cb944b7065f1",
              "name": "stylePrompt",
              "type": "string",
              "value": "=rule of thirds, golden ratio, hyper-maximalist, vibrant neon, high-contrast, octane render, photorealism, 8k ::7 --ar 16:9 --s 1000\n\nDesign a fun, energetic scene filled with bold, neon colors, and playful shapes that pop off the screen. The image should evoke a sense of joy and movement, using fluid, organic forms and exaggerated, cartoon-like proportions. Focus on creating a lively atmosphere with contrasting, saturated tones and dynamic lighting. Use a mix of asymmetrical and balanced compositions to create a playful visual flow. Render in 8K with a hyper-maximalist approach using Octane Render for vibrant, high-gloss textures and photorealistic lighting effects. Include:"
            }
          ]
        },
        "includeOtherFields": true,
        "options": {}
      },
      "id": "1af37ea0-b66e-43c6-9fd0-44fe33596f9c",
      "name": "Vivid Pop Explosion",
      "type": "n8n-nodes-base.set",
      "position": [
        0,
        740
      ],
      "notesInFlow": true,
      "typeVersion": 3.4,
      "notes": " "
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "9ec60f33-b940-40a6-9f8a-cb944b7065f1",
              "name": "stylePrompt",
              "type": "string",
              "value": "=golden ratio, rule of thirds, cyberpunk, glitch art, octane render, cinematic realism, 8k ::7 --ar 16:9 --s 1000\n\nGenerate a futuristic, cyberpunk dystopia with metallic textures, digital glitches, and neon lights. Blend cold, dystopian structures with traces of organic life. Use photorealistic lighting and dynamic reflections to enhance the visual depth of the scene. Include:"
            }
          ]
        },
        "includeOtherFields": true,
        "options": {}
      },
      "id": "bd5e0e16-ac53-42c9-9a83-1150e1e7adef",
      "name": "AI Dystopia",
      "type": "n8n-nodes-base.set",
      "position": [
        0,
        380
      ],
      "notesInFlow": true,
      "typeVersion": 3.4,
      "notes": " "
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "9ec60f33-b940-40a6-9f8a-cb944b7065f1",
              "name": "stylePrompt",
              "type": "string",
              "value": "=asymmetric composition, golden ratio, neon colors, abstract forms, octane render, cinematic realism, unreal engine, 8k ::7 --ar 16:9 --s 1000\nCreate a bold, vivid composition using neon colors and fluid shapes that break away from reality. Focus on abstract forms, blending Fauvism's exaggerated color palette with modern digital art techniques. Use asymmetric composition and dynamic lighting. Render with a vibrant, high-energy aesthetic. Include:"
            }
          ]
        },
        "includeOtherFields": true,
        "options": {}
      },
      "id": "5aea7b0b-568e-420c-96b9-44f095e498b1",
      "name": "Neon Fauvism",
      "type": "n8n-nodes-base.set",
      "position": [
        0,
        560
      ],
      "notesInFlow": true,
      "typeVersion": 3.4,
      "notes": " "
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "9ec60f33-b940-40a6-9f8a-cb944b7065f1",
              "name": "stylePrompt",
              "type": "string",
              "value": "=Include: "
            }
          ]
        },
        "includeOtherFields": true,
        "options": {}
      },
      "id": "8c1bb772-1c20-4a8d-a63d-2913a922ba04",
      "name": "None",
      "type": "n8n-nodes-base.set",
      "position": [
        0,
        920
      ],
      "notesInFlow": true,
      "typeVersion": 3.4,
      "notes": " "
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "9ec60f33-b940-40a6-9f8a-cb944b7065f1",
              "name": "stylePrompt",
              "type": "string",
              "value": "=golden ratio, rule of thirds, cyberpunk, glitch art, octane render, cinematic realism, 8k ::7 --ar 16:9 --s 1000\nCreate a hyper-realistic yet surreal landscape that bends reality, incorporating dreamlike elements and exaggerated proportions. Use vibrant, almost neon colors, and focus on a sense of wonder, play, and fantasy. Include:\n"
            }
          ]
        },
        "includeOtherFields": true,
        "options": {}
      },
      "id": "3e7bf91a-21b0-4b6a-b8f3-1b562b343cdc",
      "name": "Hyper-Surreal Escape",
      "type": "n8n-nodes-base.set",
      "position": [
        0,
        0
      ],
      "notesInFlow": true,
      "typeVersion": 3.4,
      "notes": " "
    },
    {
      "parameters": {
        "respondWith": "json",
        "responseBody": "{\n  \"formSubmittedText\": \"CloudFlare R2\u5b58\u50a8\u6876\u4e0a\u4f20\u56fe\u7247\u5931\u8d25\uff0c\u8bf7\u68c0\u67e5\u7f51\u7edc\u6216\u8005\u8282\u70b9\u662f\u5426\u6709\u8bef\"\n}",
        "options": {}
      },
      "id": "18766e3d-a986-4397-834c-635d0e2af9eb",
      "name": "\u56de\u590d\u9519\u8bef",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        1100,
        680
      ],
      "typeVersion": 1.1
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "9ec60f33-b940-40a6-9f8a-cb944b7065f1",
              "name": "stylePrompt",
              "type": "string",
              "value": "=rule of thirds, asymmetric composition, glitch art, pixelation, VHS noise, octane render, unreal engine, 8k ::7 --ar 16:9 --s 1200\nDesign a glitchy, post-analog world with digital decay and broken visuals. Utilize pixelated elements, VHS noise, and neon glitches to create a fragmented aesthetic. Use bold, contrasting colors against muted backgrounds for a high-contrast, otherworldly feel. The composition should follow asymmetrical rules, focusing on chaotic yet intentional visual balance. Include:"
            }
          ]
        },
        "includeOtherFields": true,
        "options": {}
      },
      "id": "e5a8ca32-f8b3-43f3-9093-5f4ad88dbc65",
      "name": "Post-Analog Glitchscape",
      "type": "n8n-nodes-base.set",
      "position": [
        0,
        180
      ],
      "notesInFlow": true,
      "typeVersion": 3.4,
      "notes": " "
    },
    {
      "parameters": {
        "url": "={{ $('\u8c03\u7528 \u7845\u57fa\u6d41\u52a8 \u63a8\u7406 API').item.json.images[0].url }}",
        "options": {}
      },
      "id": "09bad666-c22b-4268-a95b-722e9c60d023",
      "name": "\u56fe\u7247\u8f6c\u6210\u4e8c\u8fdb\u5236\u6587\u4ef6",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        780,
        280
      ],
      "notesInFlow": true,
      "onError": "continueRegularOutput"
    },
    {
      "parameters": {
        "respondWith": "json",
        "responseBody": "{\n  \"formSubmittedText\": \"\u8b66\u544a\uff01\u751f\u6210\u7684\u56fe\u7247\u7591\u4f3c\u542b\u6709\u654f\u611f\u5185\u5bb9 \"\n}",
        "options": {}
      },
      "id": "f723a0e1-e8ed-44a3-af87-8b64e4234d18",
      "name": "\u7ed8\u753b\u542b\u6709\u654f\u611f\u5185\u5bb9",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        800,
        500
      ],
      "typeVersion": 1.1
    },
    {
      "parameters": {
        "conditions": {
          "options": {
            "caseSensitive": true,
            "leftValue": "",
            "typeValidation": "strict",
            "version": 2
          },
          "conditions": [
            {
              "id": "bcc59de6-80ae-4174-bf8f-320844566fe0",
              "leftValue": "={{ $('\u8c03\u7528 \u7845\u57fa\u6d41\u52a8 \u63a8\u7406 API').item.json.images[0].url }}",
              "rightValue": "",
              "operator": {
                "type": "string",
                "operation": "exists",
                "singleValue": true
              }
            }
          ],
          "combinator": "and"
        },
        "options": {}
      },
      "id": "52991dfd-6970-457f-8634-7c49030be22d",
      "name": "If\u6761\u4ef6\u5224\u65ad",
      "type": "n8n-nodes-base.if",
      "typeVersion": 2.2,
      "position": [
        540,
        360
      ],
      "retryOnFail": true,
      "notesInFlow": true,
      "onError": "continueRegularOutput"
    },
    {
      "parameters": {
        "method": "POST",
        "url": "https://api.siliconflow.cn/v1/images/generations",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpBearerAuth",
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {}
          ]
        },
        "sendBody": true,
        "bodyParameters": {
          "parameters": [
            {
              "name": "model",
              "value": "Pro/black-forest-labs/FLUX.1-schnell"
            },
            {
              "name": "prompt",
              "value": "={{ $('\u751f\u6210\u63d0\u793a\u8bcd').item.json.prompt }},style:{{ $json.stylePrompt }}"
            },
            {
              "name": "seed",
              "value": 20
            },
            {
              "name": "image_size",
              "value": "={{ $('n8n \u8868\u5355\u89e6\u53d1\u5668').item.json['\u56fe\u7247\u6bd4\u4f8b'] }}"
            }
          ]
        },
        "options": {}
      },
      "id": "832b1603-f970-40be-8963-21bad6720993",
      "name": "\u8c03\u7528 \u7845\u57fa\u6d41\u52a8 \u63a8\u7406 API",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        360,
        420
      ],
      "notesInFlow": true,
      "typeVersion": 4.2,
      "credentials": {
        "httpBearerAuth": {
          "name": "<your credential>"
        }
      },
      "onError": "continueErrorOutput",
      "notes": " "
    },
    {
      "parameters": {
        "path": "flux",
        "formTitle": "Flux\u7ed8\u753b\u751f\u6210",
        "formDescription": "\u6559\u7a0b\u89c1LinuxDo",
        "formFields": {
          "values": [
            {
              "fieldLabel": "Prompt",
              "fieldType": "textarea",
              "placeholder": "\u843d\u65e5\u665a\u971e",
              "requiredField": true
            },
            {
              "fieldLabel": "\u56fe\u7247\u6bd4\u4f8b",
              "fieldType": "dropdown",
              "fieldOptions": {
                "values": [
                  {
                    "option": "1024x1024"
                  },
                  {
                    "option": "768x1024"
                  },
                  {
                    "option": "1024x768"
                  }
                ]
              },
              "requiredField": true
            },
            {
              "fieldLabel": "Style",
              "fieldType": "dropdown",
              "fieldOptions": {
                "values": [
                  {
                    "option": "\u8d85\u73b0\u5b9e\u9003\u9038"
                  },
                  {
                    "option": "\u9713\u8679\u91ce\u517d\u6d3e"
                  },
                  {
                    "option": "\u540e\u6a21\u62df\u6545\u969c\u666f\u89c2"
                  },
                  {
                    "option": "AI \u53cd\u4e4c\u6258\u90a6"
                  },
                  {
                    "option": "\u9c9c\u8273\u6d41\u884c\u7206\u70b8"
                  }
                ]
              }
            },
            {
              "fieldLabel": "\u56fe\u751f\u56fe\uff08\u4e0a\u4f20\u542f\u7528\uff09",
              "fieldType": "file",
              "multipleFiles": false,
              "acceptFileTypes": " .jpg, .png, .webp"
            }
          ]
        },
        "responseMode": "responseNode",
        "options": {}
      },
      "id": "f664101b-bfe2-47a4-8ce2-64c0ddca1013",
      "name": "n8n \u8868\u5355\u89e6\u53d1\u5668",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        -1340,
        380
      ],
      "typeVersion": 2.1
    },
    {
      "parameters": {
        "modelName": "models/gemini-2.5-flash-preview-05-20",
        "options": {
          "maxOutputTokens": 8192
        }
      },
      "id": "3b2c7af7-a35b-4c05-9fca-812cedde11bd",
      "name": "Google Gemini Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "typeVersion": 1,
      "position": [
        -940,
        500
      ],
      "credentials": {
        "googlePalmApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "conditions": {
          "options": {
            "caseSensitive": true,
            "leftValue": "",
            "typeValidation": "strict",
            "version": 2
          },
          "conditions": [
            {
              "id": "bcc59de6-80ae-4174-bf8f-320844566fe0",
              "leftValue": "={{ $json['\u56fe\u751f\u56fe\uff08\u4e0a\u4f20\u542f\u7528\uff09'] }}",
              "rightValue": "\u5426",
              "operator": {
                "type": "object",
                "operation": "notExists",
                "singleValue": true
              }
            }
          ],
          "combinator": "and"
        },
        "options": {}
      },
      "id": "e8522e62-4a94-41fd-bf31-074eccc05f1b",
      "name": "If\u6761\u4ef6\u5224\u65ad2",
      "type": "n8n-nodes-base.if",
      "typeVersion": 2.2,
      "position": [
        -1180,
        380
      ],
      "retryOnFail": true,
      "notesInFlow": true,
      "onError": "continueRegularOutput"
    },
    {
      "parameters": {
        "modelName": "models/gemini-2.5-flash-preview-05-20",
        "options": {
          "maxOutputTokens": 8192
        }
      },
      "id": "e860662a-3b1b-452c-9a5a-8874fbb9bbcc",
      "name": "Google Gemini Chat Model1",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "typeVersion": 1,
      "position": [
        -940,
        780
      ],
      "credentials": {
        "googlePalmApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "promptType": "define",
        "text": "=\u4f60\u662f\u4e00\u4e2a\u57fa\u4e8eFlux.1\u6a21\u578b\u7684\u63d0\u793a\u8bcd\u751f\u6210\u673a\u5668\u4eba\u3002\u6839\u636e\u7528\u6237\u7684\u9700\u6c42\uff0c\u81ea\u52a8\u751f\u6210\u7b26\u5408Flux.1\u683c\u5f0f\u7684\u7ed8\u753b\u63d0\u793a\u8bcd\u3002\u867d\u7136\u4f60\u53ef\u4ee5\u53c2\u8003\u63d0\u4f9b\u7684\u6a21\u677f\u6765\u5b66\u4e60\u63d0\u793a\u8bcd\u7ed3\u6784\u548c\u89c4\u5f8b\uff0c\u4f46\u4f60\u5fc5\u987b\u5177\u5907\u7075\u6d3b\u6027\u6765\u5e94\u5bf9\u5404\u79cd\u4e0d\u540c\u9700\u6c42\u3002\u6700\u7ec8\u8f93\u51fa\u5e94\u4ec5\u9650\u63d0\u793a\u8bcd\uff0c\u65e0\u9700\u4efb\u4f55\u5176\u4ed6\u89e3\u91ca\u6216\u4fe1\u606f\u3002\u4f60\u7684\u56de\u7b54\u5fc5\u987b\u5168\u90e8\u4f7f\u7528\u82f1\u8bed\u8fdb\u884c\u56de\u590d\u6211\uff01\n\n### **\u63d0\u793a\u8bcd\u751f\u6210\u903b\u8f91**\uff1a\n\n1. **\u9700\u6c42\u89e3\u6790**\uff1a\u4ece\u7528\u6237\u7684\u63cf\u8ff0\u4e2d\u63d0\u53d6\u5173\u952e\u4fe1\u606f\uff0c\u5305\u62ec\uff1a\n   - \u89d2\u8272\uff1a\u5916\u8c8c\u3001\u52a8\u4f5c\u3001\u8868\u60c5\u7b49\u3002\n   - \u573a\u666f\uff1a\u73af\u5883\u3001\u5149\u7ebf\u3001\u5929\u6c14\u7b49\u3002\n   - \u98ce\u683c\uff1a\u827a\u672f\u98ce\u683c\u3001\u60c5\u611f\u6c1b\u56f4\u3001\u914d\u8272\u7b49\u3002\n   - \u5176\u4ed6\u5143\u7d20\uff1a\u7279\u5b9a\u7269\u54c1\u3001\u80cc\u666f\u6216\u7279\u6548\u3002\n\n2. **\u63d0\u793a\u8bcd\u7ed3\u6784\u89c4\u5f8b**\uff1a\n   - **\u7b80\u6d01\u3001\u7cbe\u786e\u4e14\u5177\u8c61**\uff1a\u63d0\u793a\u8bcd\u9700\u8981\u7b80\u5355\u3001\u6e05\u6670\u5730\u63cf\u8ff0\u6838\u5fc3\u5bf9\u8c61\uff0c\u5e76\u5305\u542b\u8db3\u591f\u7ec6\u8282\u4ee5\u5f15\u5bfc\u751f\u6210\u51fa\u7b26\u5408\u9700\u6c42\u7684\u56fe\u50cf\u3002\n   - **\u7075\u6d3b\u591a\u6837**\uff1a\u53c2\u8003\u4e0b\u5217\u6a21\u677f\u548c\u5df2\u6709\u793a\u4f8b\uff0c\u4f46\u9700\u6839\u636e\u5177\u4f53\u9700\u6c42\u751f\u6210\u591a\u6837\u5316\u7684\u63d0\u793a\u8bcd\uff0c\u907f\u514d\u56fa\u5b9a\u5316\u6216\u8fc7\u4e8e\u4f9d\u8d56\u6a21\u677f\u3002\n   - **\u7b26\u5408Flux.1\u98ce\u683c\u7684\u63cf\u8ff0**\uff1a\u63d0\u793a\u8bcd\u5fc5\u987b\u9075\u5faaFlux.1\u7684\u8981\u6c42\uff0c\u5c3d\u91cf\u5305\u542b\u827a\u672f\u98ce\u683c\u3001\u89c6\u89c9\u6548\u679c\u3001\u60c5\u611f\u6c1b\u56f4\u7684\u63cf\u8ff0\uff0c\u4f7f\u7528\u4e0eFlux.1\u6a21\u578b\u751f\u6210\u76f8\u7b26\u7684\u5173\u952e\u8bcd\u548c\u63cf\u8ff0\u6a21\u5f0f\u3002\n\n3. **\u4ec5\u4f9b\u4f60\u53c2\u8003\u548c\u5b66\u4e60\u7684\u51e0\u79cd\u573a\u666f\u63d0\u793a\u8bcd**\uff08\u4f60\u9700\u8981\u5b66\u4e60\u5e76\u7075\u6d3b\u8c03\u6574,\"[ ]\"\u4e2d\u5185\u5bb9\u89c6\u7528\u6237\u95ee\u9898\u800c\u5b9a\uff09\uff1a\n   - **\u89d2\u8272\u8868\u60c5\u96c6**\uff1a\n\u573a\u666f\u8bf4\u660e\uff1a\u9002\u5408\u52a8\u753b\u6216\u6f2b\u753b\u521b\u4f5c\u8005\u4e3a\u89d2\u8272\u8bbe\u8ba1\u591a\u6837\u7684\u8868\u60c5\u3002\u8fd9\u4e9b\u63d0\u793a\u8bcd\u53ef\u4ee5\u751f\u6210\u5c55\u793a\u540c\u4e00\u89d2\u8272\u5728\u4e0d\u540c\u60c5\u7eea\u4e0b\u7684\u8868\u60c5\u96c6\uff0c\u6db5\u76d6\u5feb\u4e50\u3001\u60b2\u4f24\u3001\u6124\u6012\u7b49\u591a\u79cd\u60c5\u611f\u3002\n\n\u63d0\u793a\u8bcd\uff1aAn anime [SUBJECT], animated expression reference sheet, character design, reference sheet, turnaround, lofi style, soft colors, gentle natural linework, key art, range of emotions, happy sad mad scared nervous embarrassed confused neutral, hand drawn, award winning anime, fully clothed\n\n[SUBJECT] character, animation expression reference sheet with several good animation expressions featuring the same character in each one, showing different faces from the same person in a grid pattern: happy sad mad scared nervous embarrassed confused neutral, super minimalist cartoon style flat muted kawaii pastel color palette, soft dreamy backgrounds, cute round character designs, minimalist facial features, retro-futuristic elements, kawaii style, space themes, gentle line work, slightly muted tones, simple geometric shapes, subtle gradients, oversized clothing on characters, whimsical, soft puffy art, pastels, watercolor\n\n   - **\u5168\u89d2\u5ea6\u89d2\u8272\u89c6\u56fe**\uff1a\n\u573a\u666f\u8bf4\u660e\uff1a\u5f53\u9700\u8981\u4ece\u73b0\u6709\u89d2\u8272\u8bbe\u8ba1\u4e2d\u751f\u6210\u4e0d\u540c\u89d2\u5ea6\u7684\u5168\u8eab\u56fe\u65f6\uff0c\u5982\u6b63\u9762\u3001\u4fa7\u9762\u548c\u80cc\u9762\uff0c\u9002\u7528\u4e8e\u89d2\u8272\u8bbe\u8ba1\u7ec6\u5316\u6216\u52a8\u753b\u5efa\u6a21\u3002\n\n\u63d0\u793a\u8bcd\uff1aA character sheet of [SUBJECT] in different poses and angles, including front view, side view, and back view\n\n   - **80 \u5e74\u4ee3\u590d\u53e4\u98ce\u683c**\uff1a\n\u573a\u666f\u8bf4\u660e\uff1a\u9002\u5408\u5e0c\u671b\u521b\u9020 80 \u5e74\u4ee3\u590d\u53e4\u98ce\u683c\u7167\u7247\u6548\u679c\u7684\u827a\u672f\u5bb6\u6216\u8bbe\u8ba1\u5e08\u3002\u8fd9\u4e9b\u63d0\u793a\u8bcd\u53ef\u4ee5\u751f\u6210\u5e26\u6709\u6000\u65e7\u611f\u7684\u6a21\u7cca\u5b9d\u4e3d\u6765\u98ce\u683c\u7167\u7247\u3002\n\n\u63d0\u793a\u8bcd\uff1ablurry polaroid of [a simple description of the scene], 1980s.\n\n   - **\u667a\u80fd\u624b\u673a\u5185\u90e8\u5c55\u793a**\uff1a\n\u573a\u666f\u8bf4\u660e\uff1a\u9002\u5408\u9700\u8981\u5c55\u793a\u667a\u80fd\u624b\u673a\u7b49\u4ea7\u54c1\u8bbe\u8ba1\u7684\u79d1\u6280\u535a\u5ba2\u4f5c\u8005\u6216\u4ea7\u54c1\u8bbe\u8ba1\u5e08\u3002\u8fd9\u4e9b\u63d0\u793a\u8bcd\u5e2e\u52a9\u751f\u6210\u5c55\u793a\u624b\u673a\u5916\u89c2\u548c\u5c4f\u5e55\u5185\u5bb9\u7684\u56fe\u50cf\u3002\n\n\u63d0\u793a\u8bcd\uff1aa iphone product image showing the iphone standing and inside the screen the image is shown\n\n   - **\u53cc\u91cd\u66dd\u5149\u6548\u679c**\uff1a\n\u573a\u666f\u8bf4\u660e\uff1a\u9002\u5408\u6444\u5f71\u5e08\u6216\u89c6\u89c9\u827a\u672f\u5bb6\u901a\u8fc7\u53cc\u91cd\u66dd\u5149\u6280\u672f\u521b\u9020\u6df1\u5ea6\u548c\u60c5\u611f\u8868\u8fbe\u7684\u827a\u672f\u4f5c\u54c1\u3002\n\n\u63d0\u793a\u8bcd\uff1a[Abstract style waterfalls, wildlife] inside the silhouette of a [man]\u2019s head that is a double exposure photograph . Non-representational, colors and shapes, expression of feelings, imaginative, highly detailed\n\n   - **\u9ad8\u8d28\u611f\u7535\u5f71\u6d77\u62a5**\uff1a\n\u573a\u666f\u8bf4\u660e\uff1a\u9002\u5408\u9700\u8981\u4e3a\u7535\u5f71\u521b\u5efa\u5f15\u4eba\u6ce8\u76ee\u6d77\u62a5\u7684\u7535\u5f71\u5ba3\u4f20\u6216\u5e73\u9762\u8bbe\u8ba1\u5e08\u3002\n\n\u63d0\u793a\u8bcd\uff1aA digital illustration of a movie poster titled [\u2018Sad Sax: Fury Toad\u2019], [Mad Max] parody poster, featuring [a saxophone-playing toad in a post-apocalyptic desert, with a customized car made of musical instruments], in the background, [a wasteland with other musical vehicle chases], movie title in [a gritty, bold font, dusty and intense color palette].\n\n   - **\u955c\u9762\u81ea\u62cd\u6548\u679c**\uff1a\n\u573a\u666f\u8bf4\u660e\uff1a\u9002\u5408\u60f3\u8981\u6355\u6349\u65e5\u5e38\u751f\u6d3b\u77ac\u95f4\u7684\u6444\u5f71\u5e08\u6216\u793e\u4ea4\u5a92\u4f53\u7528\u6237\u3002\n\n\u63d0\u793a\u8bcd\uff1aPhone photo: A woman stands in front of a mirror, capturing a selfie. The image quality is grainy, with a slight blur softening the details. The lighting is dim, casting shadows that obscure her features. [The room is cluttered, with clothes strewn across the bed and an unmade blanket. Her expression is casual, full of concentration], while the old iPhone struggles to focus, giving the photo an authentic, unpolished feel. The mirror shows smudges and fingerprints, adding to the raw, everyday atmosphere of the scene.\n\n   - **\u50cf\u7d20\u827a\u672f\u521b\u4f5c**\uff1a\n\u573a\u666f\u8bf4\u660e\uff1a\u9002\u5408\u50cf\u7d20\u827a\u672f\u7231\u597d\u8005\u6216\u590d\u53e4\u6e38\u620f\u5f00\u53d1\u8005\u521b\u9020\u6216\u590d\u523b\u7ecf\u5178\u50cf\u7d20\u98ce\u683c\u56fe\u50cf\u3002\n\n\u63d0\u793a\u8bcd\uff1a[Anything you want] pixel art style, pixels, pixel art\n\n   - **\u4ee5\u4e0a\u90e8\u5206\u573a\u666f\u4ec5\u4f9b\u4f60\u5b66\u4e60\uff0c\u4e00\u5b9a\u8981\u5b66\u4f1a\u7075\u6d3b\u53d8\u901a\uff0c\u4ee5\u9002\u5e94\u4efb\u4f55\u7ed8\u753b\u9700\u6c42**\uff1a\n\n4. **Flux.1\u63d0\u793a\u8bcd\u8981\u70b9\u603b\u7ed3**\uff1a\n   - **\u7b80\u6d01\u7cbe\u51c6\u7684\u4e3b\u4f53\u63cf\u8ff0**\uff1a\u660e\u786e\u56fe\u50cf\u4e2d\u6838\u5fc3\u5bf9\u8c61\u7684\u8eab\u4efd\u6216\u573a\u666f\u3002\n   - **\u98ce\u683c\u548c\u60c5\u611f\u6c1b\u56f4\u7684\u5177\u4f53\u63cf\u8ff0**\uff1a\u786e\u4fdd\u63d0\u793a\u8bcd\u5305\u542b\u827a\u672f\u98ce\u683c\u3001\u5149\u7ebf\u3001\u914d\u8272\u3001\u4ee5\u53ca\u56fe\u50cf\u7684\u6c1b\u56f4\u7b49\u4fe1\u606f\u3002\n   - **\u52a8\u6001\u4e0e\u7ec6\u8282\u7684\u8865\u5145**\uff1a\u63d0\u793a\u8bcd\u53ef\u5305\u62ec\u573a\u666f\u4e2d\u7684\u52a8\u4f5c\u3001\u60c5\u7eea\u3001\u6216\u5149\u5f71\u6548\u679c\u7b49\u91cd\u8981\u7ec6\u8282\u3002\n   - **\u5176\u4ed6\u66f4\u591a\u89c4\u5f8b\u8bf7\u81ea\u5df1\u5bfb\u627e**\n---\n\n**\u95ee\u7b54\u6848\u4f8b**\uff1a\n**\u7528\u6237\u8f93\u5165**\uff1a\u4e00\u4e2a80\u5e74\u4ee3\u590d\u53e4\u98ce\u683c\u7684\u7167\u7247\u3002\n**\u4f60\u7684\u8f93\u51fa**\uff1a`A blurry polaroid of a 1980s living room, with vintage furniture, soft pastel tones, and a nostalgic, grainy texture,  The sunlight filters through old curtains, casting long, warm shadows on the wooden floor, 1980s,`\n\n**\u95ee\u7b54\u6848\u4f8b2**\uff1a\n**\u7528\u6237\u8f93\u5165**\uff1a\u4e00\u4e2a\u8d5b\u535a\u670b\u514b\u98ce\u683c\u7684\u591c\u665a\u57ce\u5e02\u80cc\u666f\u3002\n**\u4f60\u7684\u8f93\u51fa**\uff1a`A futuristic cityscape at night, in a cyberpunk style, with neon lights reflecting off wet streets, towering skyscrapers, and a glowing, high-tech atmosphere. Dark shadows contrast with vibrant neon signs, creating a dramatic, dystopian mood.`\n\n\u7528\u6237\u7684\u8f93\u5165\u4e3a\uff1a{{ $('n8n \u8868\u5355\u89e6\u53d1\u5668').item.json.Prompt }}\n\n\u5e76\u7ed3\u5408\u6839\u636e\u56fe\u7247\u751f\u6210\u7c7b\u4f3c\u56fe\u7247\u5185\u5bb9\u7684\u63d0\u793a\u8bcd\uff1a",
        "messages": {
          "messageValues": [
            {
              "type": "HumanMessagePromptTemplate",
              "messageType": "imageBinary",
              "binaryImageDataKey": "_________"
            }
          ]
        }
      },
      "id": "1cdabd48-e5d5-42bf-86e0-63a7c443cdf0",
      "name": "LLM\u751f\u6210\u63d0\u793a\u8bcd1",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "typeVersion": 1.4,
      "position": [
        -960,
        660
      ],
      "retryOnFail": true,
      "notesInFlow": true,
      "alwaysOutputData": false
    },
    {
      "parameters": {
        "respondWith": "json",
        "responseBody": "{\n  \"formSubmittedText\": \"\u7845\u57fa\u6d41\u52a8API\u8c03\u7528\u5931\u8d25\uff0c\u91cd\u8bd5\u6216\u5237\u65b0\u8bd5\u8bd5 \"\n}",
        "options": {}
      },
      "id": "4a230555-94d2-4a85-b79b-3ab8368f2958",
      "name": "\u56de\u590d\u9519\u8bef1",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        580,
        640
      ],
      "typeVersion": 1.1
    },
    {
      "parameters": {
        "promptType": "define",
        "text": "=\u4f60\u662f\u4e00\u4e2a\u57fa\u4e8eFlux.1\u6a21\u578b\u7684\u63d0\u793a\u8bcd\u751f\u6210\u673a\u5668\u4eba\u3002\u6839\u636e\u7528\u6237\u7684\u9700\u6c42\uff0c\u81ea\u52a8\u751f\u6210\u7b26\u5408Flux.1\u683c\u5f0f\u7684\u7ed8\u753b\u63d0\u793a\u8bcd\u3002\u867d\u7136\u4f60\u53ef\u4ee5\u53c2\u8003\u63d0\u4f9b\u7684\u6a21\u677f\u6765\u5b66\u4e60\u63d0\u793a\u8bcd\u7ed3\u6784\u548c\u89c4\u5f8b\uff0c\u4f46\u4f60\u5fc5\u987b\u5177\u5907\u7075\u6d3b\u6027\u6765\u5e94\u5bf9\u5404\u79cd\u4e0d\u540c\u9700\u6c42\u3002\u6700\u7ec8\u8f93\u51fa\u5e94\u4ec5\u9650\u63d0\u793a\u8bcd\uff0c\u65e0\u9700\u4efb\u4f55\u5176\u4ed6\u89e3\u91ca\u6216\u4fe1\u606f\u3002\u4f60\u7684\u56de\u7b54\u5fc5\u987b\u5168\u90e8\u4f7f\u7528\u82f1\u8bed\u8fdb\u884c\u56de\u590d\u6211\uff01\n\n### **\u63d0\u793a\u8bcd\u751f\u6210\u903b\u8f91**\uff1a\n\n1. **\u9700\u6c42\u89e3\u6790**\uff1a\u4ece\u7528\u6237\u7684\u63cf\u8ff0\u4e2d\u63d0\u53d6\u5173\u952e\u4fe1\u606f\uff0c\u5305\u62ec\uff1a\n   - \u89d2\u8272\uff1a\u5916\u8c8c\u3001\u52a8\u4f5c\u3001\u8868\u60c5\u7b49\u3002\n   - \u573a\u666f\uff1a\u73af\u5883\u3001\u5149\u7ebf\u3001\u5929\u6c14\u7b49\u3002\n   - \u98ce\u683c\uff1a\u827a\u672f\u98ce\u683c\u3001\u60c5\u611f\u6c1b\u56f4\u3001\u914d\u8272\u7b49\u3002\n   - \u5176\u4ed6\u5143\u7d20\uff1a\u7279\u5b9a\u7269\u54c1\u3001\u80cc\u666f\u6216\u7279\u6548\u3002\n\n2. **\u63d0\u793a\u8bcd\u7ed3\u6784\u89c4\u5f8b**\uff1a\n   - **\u7b80\u6d01\u3001\u7cbe\u786e\u4e14\u5177\u8c61**\uff1a\u63d0\u793a\u8bcd\u9700\u8981\u7b80\u5355\u3001\u6e05\u6670\u5730\u63cf\u8ff0\u6838\u5fc3\u5bf9\u8c61\uff0c\u5e76\u5305\u542b\u8db3\u591f\u7ec6\u8282\u4ee5\u5f15\u5bfc\u751f\u6210\u51fa\u7b26\u5408\u9700\u6c42\u7684\u56fe\u50cf\u3002\n   - **\u7075\u6d3b\u591a\u6837**\uff1a\u53c2\u8003\u4e0b\u5217\u6a21\u677f\u548c\u5df2\u6709\u793a\u4f8b\uff0c\u4f46\u9700\u6839\u636e\u5177\u4f53\u9700\u6c42\u751f\u6210\u591a\u6837\u5316\u7684\u63d0\u793a\u8bcd\uff0c\u907f\u514d\u56fa\u5b9a\u5316\u6216\u8fc7\u4e8e\u4f9d\u8d56\u6a21\u677f\u3002\n   - **\u7b26\u5408Flux.1\u98ce\u683c\u7684\u63cf\u8ff0**\uff1a\u63d0\u793a\u8bcd\u5fc5\u987b\u9075\u5faaFlux.1\u7684\u8981\u6c42\uff0c\u5c3d\u91cf\u5305\u542b\u827a\u672f\u98ce\u683c\u3001\u89c6\u89c9\u6548\u679c\u3001\u60c5\u611f\u6c1b\u56f4\u7684\u63cf\u8ff0\uff0c\u4f7f\u7528\u4e0eFlux.1\u6a21\u578b\u751f\u6210\u76f8\u7b26\u7684\u5173\u952e\u8bcd\u548c\u63cf\u8ff0\u6a21\u5f0f\u3002\n\n3. **\u4ec5\u4f9b\u4f60\u53c2\u8003\u548c\u5b66\u4e60\u7684\u51e0\u79cd\u573a\u666f\u63d0\u793a\u8bcd**\uff08\u4f60\u9700\u8981\u5b66\u4e60\u5e76\u7075\u6d3b\u8c03\u6574,\"[ ]\"\u4e2d\u5185\u5bb9\u89c6\u7528\u6237\u95ee\u9898\u800c\u5b9a\uff09\uff1a\n   - **\u89d2\u8272\u8868\u60c5\u96c6**\uff1a\n\u573a\u666f\u8bf4\u660e\uff1a\u9002\u5408\u52a8\u753b\u6216\u6f2b\u753b\u521b\u4f5c\u8005\u4e3a\u89d2\u8272\u8bbe\u8ba1\u591a\u6837\u7684\u8868\u60c5\u3002\u8fd9\u4e9b\u63d0\u793a\u8bcd\u53ef\u4ee5\u751f\u6210\u5c55\u793a\u540c\u4e00\u89d2\u8272\u5728\u4e0d\u540c\u60c5\u7eea\u4e0b\u7684\u8868\u60c5\u96c6\uff0c\u6db5\u76d6\u5feb\u4e50\u3001\u60b2\u4f24\u3001\u6124\u6012\u7b49\u591a\u79cd\u60c5\u611f\u3002\n\n\u63d0\u793a\u8bcd\uff1aAn anime [SUBJECT], animated expression reference sheet, character design, reference sheet, turnaround, lofi style, soft colors, gentle natural linework, key art, range of emotions, happy sad mad scared nervous embarrassed confused neutral, hand drawn, award winning anime, fully clothed\n\n[SUBJECT] character, animation expression reference sheet with several good animation expressions featuring the same character in each one, showing different faces from the same person in a grid pattern: happy sad mad scared nervous embarrassed confused neutral, super minimalist cartoon style flat muted kawaii pastel color palette, soft dreamy backgrounds, cute round character designs, minimalist facial features, retro-futuristic elements, kawaii style, space themes, gentle line work, slightly muted tones, simple geometric shapes, subtle gradients, oversized clothing on characters, whimsical, soft puffy art, pastels, watercolor\n\n   - **\u5168\u89d2\u5ea6\u89d2\u8272\u89c6\u56fe**\uff1a\n\u573a\u666f\u8bf4\u660e\uff1a\u5f53\u9700\u8981\u4ece\u73b0\u6709\u89d2\u8272\u8bbe\u8ba1\u4e2d\u751f\u6210\u4e0d\u540c\u89d2\u5ea6\u7684\u5168\u8eab\u56fe\u65f6\uff0c\u5982\u6b63\u9762\u3001\u4fa7\u9762\u548c\u80cc\u9762\uff0c\u9002\u7528\u4e8e\u89d2\u8272\u8bbe\u8ba1\u7ec6\u5316\u6216\u52a8\u753b\u5efa\u6a21\u3002\n\n\u63d0\u793a\u8bcd\uff1aA character sheet of [SUBJECT] in different poses and angles, including front view, side view, and back view\n\n   - **80 \u5e74\u4ee3\u590d\u53e4\u98ce\u683c**\uff1a\n\u573a\u666f\u8bf4\u660e\uff1a\u9002\u5408\u5e0c\u671b\u521b\u9020 80 \u5e74\u4ee3\u590d\u53e4\u98ce\u683c\u7167\u7247\u6548\u679c\u7684\u827a\u672f\u5bb6\u6216\u8bbe\u8ba1\u5e08\u3002\u8fd9\u4e9b\u63d0\u793a\u8bcd\u53ef\u4ee5\u751f\u6210\u5e26\u6709\u6000\u65e7\u611f\u7684\u6a21\u7cca\u5b9d\u4e3d\u6765\u98ce\u683c\u7167\u7247\u3002\n\n\u63d0\u793a\u8bcd\uff1ablurry polaroid of [a simple description of the scene], 1980s.\n\n   - **\u667a\u80fd\u624b\u673a\u5185\u90e8\u5c55\u793a**\uff1a\n\u573a\u666f\u8bf4\u660e\uff1a\u9002\u5408\u9700\u8981\u5c55\u793a\u667a\u80fd\u624b\u673a\u7b49\u4ea7\u54c1\u8bbe\u8ba1\u7684\u79d1\u6280\u535a\u5ba2\u4f5c\u8005\u6216\u4ea7\u54c1\u8bbe\u8ba1\u5e08\u3002\u8fd9\u4e9b\u63d0\u793a\u8bcd\u5e2e\u52a9\u751f\u6210\u5c55\u793a\u624b\u673a\u5916\u89c2\u548c\u5c4f\u5e55\u5185\u5bb9\u7684\u56fe\u50cf\u3002\n\n\u63d0\u793a\u8bcd\uff1aa iphone product image showing the iphone standing and inside the screen the image is shown\n\n   - **\u53cc\u91cd\u66dd\u5149\u6548\u679c**\uff1a\n\u573a\u666f\u8bf4\u660e\uff1a\u9002\u5408\u6444\u5f71\u5e08\u6216\u89c6\u89c9\u827a\u672f\u5bb6\u901a\u8fc7\u53cc\u91cd\u66dd\u5149\u6280\u672f\u521b\u9020\u6df1\u5ea6\u548c\u60c5\u611f\u8868\u8fbe\u7684\u827a\u672f\u4f5c\u54c1\u3002\n\n\u63d0\u793a\u8bcd\uff1a[Abstract style waterfalls, wildlife] inside the silhouette of a [man]\u2019s head that is a double exposure photograph . Non-representational, colors and shapes, expression of feelings, imaginative, highly detailed\n\n   - **\u9ad8\u8d28\u611f\u7535\u5f71\u6d77\u62a5**\uff1a\n\u573a\u666f\u8bf4\u660e\uff1a\u9002\u5408\u9700\u8981\u4e3a\u7535\u5f71\u521b\u5efa\u5f15\u4eba\u6ce8\u76ee\u6d77\u62a5\u7684\u7535\u5f71\u5ba3\u4f20\u6216\u5e73\u9762\u8bbe\u8ba1\u5e08\u3002\n\n\u63d0\u793a\u8bcd\uff1aA digital illustration of a movie poster titled [\u2018Sad Sax: Fury Toad\u2019], [Mad Max] parody poster, featuring [a saxophone-playing toad in a post-apocalyptic desert, with a customized car made of musical instruments], in the background, [a wasteland with other musical vehicle chases], movie title in [a gritty, bold font, dusty and intense color palette].\n\n   - **\u955c\u9762\u81ea\u62cd\u6548\u679c**\uff1a\n\u573a\u666f\u8bf4\u660e\uff1a\u9002\u5408\u60f3\u8981\u6355\u6349\u65e5\u5e38\u751f\u6d3b\u77ac\u95f4\u7684\u6444\u5f71\u5e08\u6216\u793e\u4ea4\u5a92\u4f53\u7528\u6237\u3002\n\n\u63d0\u793a\u8bcd\uff1aPhone photo: A woman stands in front of a mirror, capturing a selfie. The image quality is grainy, with a slight blur softening the details. The lighting is dim, casting shadows that obscure her features. [The room is cluttered, with clothes strewn across the bed and an unmade blanket. Her expression is casual, full of concentration], while the old iPhone struggles to focus, giving the photo an authentic, unpolished feel. The mirror shows smudges and fingerprints, adding to the raw, everyday atmosphere of the scene.\n\n   - **\u50cf\u7d20\u827a\u672f\u521b\u4f5c**\uff1a\n\u573a\u666f\u8bf4\u660e\uff1a\u9002\u5408\u50cf\u7d20\u827a\u672f\u7231\u597d\u8005\u6216\u590d\u53e4\u6e38\u620f\u5f00\u53d1\u8005\u521b\u9020\u6216\u590d\u523b\u7ecf\u5178\u50cf\u7d20\u98ce\u683c\u56fe\u50cf\u3002\n\n\u63d0\u793a\u8bcd\uff1a[Anything you want] pixel art style, pixels, pixel art\n\n   - **\u4ee5\u4e0a\u90e8\u5206\u573a\u666f\u4ec5\u4f9b\u4f60\u5b66\u4e60\uff0c\u4e00\u5b9a\u8981\u5b66\u4f1a\u7075\u6d3b\u53d8\u901a\uff0c\u4ee5\u9002\u5e94\u4efb\u4f55\u7ed8\u753b\u9700\u6c42**\uff1a\n\n4. **Flux.1\u63d0\u793a\u8bcd\u8981\u70b9\u603b\u7ed3**\uff1a\n   - **\u7b80\u6d01\u7cbe\u51c6\u7684\u4e3b\u4f53\u63cf\u8ff0**\uff1a\u660e\u786e\u56fe\u50cf\u4e2d\u6838\u5fc3\u5bf9\u8c61\u7684\u8eab\u4efd\u6216\u573a\u666f\u3002\n   - **\u98ce\u683c\u548c\u60c5\u611f\u6c1b\u56f4\u7684\u5177\u4f53\u63cf\u8ff0**\uff1a\u786e\u4fdd\u63d0\u793a\u8bcd\u5305\u542b\u827a\u672f\u98ce\u683c\u3001\u5149\u7ebf\u3001\u914d\u8272\u3001\u4ee5\u53ca\u56fe\u50cf\u7684\u6c1b\u56f4\u7b49\u4fe1\u606f\u3002\n   - **\u52a8\u6001\u4e0e\u7ec6\u8282\u7684\u8865\u5145**\uff1a\u63d0\u793a\u8bcd\u53ef\u5305\u62ec\u573a\u666f\u4e2d\u7684\u52a8\u4f5c\u3001\u60c5\u7eea\u3001\u6216\u5149\u5f71\u6548\u679c\u7b49\u91cd\u8981\u7ec6\u8282\u3002\n   - **\u5176\u4ed6\u66f4\u591a\u89c4\u5f8b\u8bf7\u81ea\u5df1\u5bfb\u627e**\n---\n\n**\u95ee\u7b54\u6848\u4f8b**\uff1a\n**\u7528\u6237\u8f93\u5165**\uff1a\u4e00\u4e2a80\u5e74\u4ee3\u590d\u53e4\u98ce\u683c\u7684\u7167\u7247\u3002\n**\u4f60\u7684\u8f93\u51fa**\uff1a`A blurry polaroid of a 1980s living room, with vintage furniture, soft pastel tones, and a nostalgic, grainy texture,  The sunlight filters through old curtains, casting long, warm shadows on the wooden floor, 1980s,`\n\n**\u95ee\u7b54\u6848\u4f8b2**\uff1a\n**\u7528\u6237\u8f93\u5165**\uff1a\u4e00\u4e2a\u8d5b\u535a\u670b\u514b\u98ce\u683c\u7684\u591c\u665a\u57ce\u5e02\u80cc\u666f\u3002\n**\u4f60\u7684\u8f93\u51fa**\uff1a`A futuristic cityscape at night, in a cyberpunk style, with neon lights reflecting off wet streets, towering skyscrapers, and a glowing, high-tech atmosphere. Dark shadows contrast with vibrant neon signs, creating a dramatic, dystopian mood.`\n\n\u7528\u6237\u7684\u8f93\u5165\u4e3a\uff1a{{ $('n8n \u8868\u5355\u89e6\u53d1\u5668').item.json.Prompt }}\n\n"
      },
      "id": "479c80db-eb27-4581-b30f-fb187194195c",
      "name": "LLM\u751f\u6210\u63d0\u793a\u8bcd",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "typeVersion": 1.4,
      "position": [
        -960,
        360
      ],
      "retryOnFail": true,
      "notesInFlow": true,
      "alwaysOutputData": false
    },
    {
      "parameters": {
        "operation": "upload",
        "bucketName": "n8n",
        "fileName": "=fg-{{ $execution.id }}.jpg",
        "additionalFields": {}
      },
      "id": "7726d613-6575-495f-af5b-1b43c10975c4",
      "name": "\u5c06\u56fe\u7247\u4e0a\u4f20\u5230 R2",
      "type": "n8n-nodes-base.s3",
      "position": [
        980,
        280
      ],
      "typeVersion": 1,
      "onError": "continueErrorOutput"
    },
    {
      "parameters": {
        "respondWith": "text",
        "responseBody": "=<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>Flux \u56fe\u7247\u751f\u6210\u7ed3\u679c</title>\n    <style>\n        body {\n            font-family: 'Open Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;\n            display: flex;\n            flex-direction: column;\n            align-items: center;\n            justify-content: flex-start;\n            min-height: 100vh;\n            background-color: #121212;\n            color: #e0e0e0;\n            margin: 0;\n            padding: 20px;\n        }\n\n        .container {\n            width: 90%;\n            max-width: 800px;\n            text-align: center;\n            background: linear-gradient(145deg, #1e1e1e, #242424);\n            padding: 32px;\n            border-radius: 16px;\n            box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);\n            margin-bottom: 32px;\n        }\n\n        .image-container {\n            margin-bottom: 24px;\n        }\n\n        .image-container img {\n            max-width: 100%;\n            height: auto;\n            border-radius: 12px;\n            border: 2px solid #333;\n            transition: transform 0.3s ease, box-shadow 0.3s ease;\n        }\n\n        .image-container img:hover {\n            transform: scale(1.02);\n            box-shadow: 0 12px 24px rgba(0, 0, 0, 0.5);\n        }\n\n        .style-text {\n            font-size: 18px;\n            margin: 24px 0;\n            color: #bbb;\n            padding: 12px;\n            background: rgba(255, 255, 255, 0.05);\n            border-radius: 8px;\n        }\n\n        .cta {\n            display: inline-block;\n            width: auto;\n            min-width: 200px;\n            margin: 20px 0 0;\n            padding: 16px 32px;\n            border: none;\n            border-radius: 8px;\n            text-decoration: none;\n            color: #fff;\n            background: linear-gradient(135deg, #1C9985, #20B69E);\n            font-size: 18px;\n            font-weight: 500;\n            cursor: pointer;\n            transition: all 0.3s ease;\n        }\n\n        .cta:hover {\n            background: linear-gradient(135deg, #20B69E, #25D4B8);\n            transform: translateY(-2px);\n            box-shadow: 0 8px 16px rgba(28, 153, 133, 0.3);\n        }\n\n        .recent-renders {\n            width: 90%;\n            max-width: 800px;\n            display: grid;\n            grid-template-columns: repeat(2, 1fr);\n            gap: 24px;\n            margin-top: 32px;\n        }\n\n        .recent-render {\n            background-color: #2c2c2c;\n            padding: 16px;\n            border-radius: 12px;\n            transition: transform 0.3s ease, box-shadow 0.3s ease;\n        }\n\n        .recent-render:hover {\n            transform: translateY(-4px);\n            box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);\n        }\n\n        .recent-render img {\n            width: 100%;\n            height: auto;\n            border-radius: 8px;\n            border: 2px solid #333;\n            transition: transform 0.3s ease;\n        }\n\n        /* \u9690\u85cf\u989d\u5916\u7684\u56fe\u7247 */\n        .recent-render:nth-child(n+5) {\n            display: none;\n        }\n\n        /* \u663e\u793a\u66f4\u591a\u6309\u94ae\u6837\u5f0f */\n        .show-more-label {\n            display: inline-block;\n            width: 90%;\n            max-width: 800px;\n            margin: 32px auto;\n            padding: 16px;\n            background: #2c2c2c;\n            color: #fff;\n            border: none;\n            border-radius: 8px;\n            font-size: 16px;\n            cursor: pointer;\n            transition: all 0.3s ease;\n            text-align: center;\n        }\n\n        .show-more-label:hover {\n            background: #333;\n            transform: translateY(-2px);\n        }\n\n        /* \u9690\u85cf\u590d\u9009\u6846 */\n        #show-more {\n            display: none;\n        }\n\n        /* \u5f53\u590d\u9009\u6846\u88ab\u9009\u4e2d\u65f6\u663e\u793a\u989d\u5916\u7684\u56fe\u7247 */\n        #show-more:checked ~ .recent-renders .recent-render:nth-child(n+5) {\n            display: block;\n        }\n\n        /* \u5f53\u590d\u9009\u6846\u88ab\u9009\u4e2d\u65f6\u9690\u85cf\u663e\u793a\u66f4\u591a\u6309\u94ae */\n        #show-more:checked ~ .show-more-label {\n            display: none;\n        }\n\n        @media (max-width: 768px) {\n            .recent-renders {\n                grid-template-columns: 1fr;\n            }\n            \n            .container {\n                padding: 20px;\n            }\n        }\n    </style>\n</head>\n<body>\n    <div class=\"container\">\n        <div class=\"image-container\">\n            <img src=\"https://pub-42bef849947f470bac59540ae0bf939a.r2.dev/fg-{{ $execution.id }}.jpg\" alt=\"\u751f\u6210\u7684\u56fe\u7247\" />\n        </div>\n        <div class=\"style-text\">\u56fe\u7247\u98ce\u683c: {{ $('n8n \u8868\u5355\u89e6\u53d1\u5668').item.json.Style }}</div>\n        <a href=\"https://linux.do/u/yuyu0.0/activity/topics\" class=\"cta\">\u67e5\u770b\u4e2d\u6587\u6559\u7a0b</a>\n    </div>\n\n    <!-- \u6dfb\u52a0\u9690\u85cf\u7684\u590d\u9009\u6846 -->\n    <input type=\"checkbox\" id=\"show-more\">\n\n    <div class=\"recent-renders\">\n        <div class=\"recent-render\">\n            <img src=\"https://pub-42bef849947f470bac59540ae0bf939a.r2.dev/fg-{{ $execution.id.toNumber() - 1 }}.jpg\" alt=\"\u6700\u8fd1\u6e32\u67d3 1\">\n        </div>\n        <div class=\"recent-render\">\n            <img src=\"https://pub-42bef849947f470bac59540ae0bf939a.r2.dev/fg-{{ $execution.id.toNumber() - 2 }}.jpg\" alt=\"\u6700\u8fd1\u6e32\u67d3 2\">\n        </div>\n        <div class=\"recent-render\">\n            <img src=\"https://pub-42bef849947f470bac59540ae0bf939a.r2.dev/fg-{{ $execution.id.toNumber() - 3 }}.jpg\" alt=\"\u6700\u8fd1\u6e32\u67d3 3\">\n        </div>\n        <div class=\"recent-render\">\n            <img src=\"https://pub-42bef849947f470bac59540ae0bf939a.r2.dev/fg-{{ $execution.id.toNumber() - 4 }}.jpg\" alt=\"\u6700\u8fd1\u6e32\u67d3 4\">\n        </div>\n        <div class=\"recent-render\">\n            <img src=\"https://pub-42bef849947f470bac59540ae0bf939a.r2.dev/fg-{{ $execution.id.toNumber() - 5 }}.jpg\" alt=\"\u6700\u8fd1\u6e32\u67d3 5\">\n        </div>\n        <div class=\"recent-render\">\n            <img src=\"https://pub-42bef849947f470bac59540ae0bf939a.r2.dev/fg-{{ $execution.id.toNumber() - 6 }}.jpg\" alt=\"\u6700\u8fd1\u6e32\u67d3 6\">\n        </div>\n        <div class=\"recent-render\">\n            <img src=\"https://pub-42bef849947f470bac59540ae0bf939a.r2.dev/fg-{{ $execution.id.toNumber() - 7 }}.jpg\" alt=\"\u6700\u8fd1\u6e32\u67d3 7\">\n        </div>\n        <div class=\"recent-render\">\n            <img src=\"https://pub-42bef849947f470bac59540ae0bf939a.r2.dev/fg-{{ $execution.id.toNumber() - 8 }}.jpg\" alt=\"\u6700\u8fd1\u6e32\u67d3 8\">\n        </div>\n        <div class=\"recent-render\">\n            <img src=\"https://pub-42bef849947f470bac59540ae0bf939a.r2.dev/fg-{{ $execution.id.toNumber() - 9 }}.jpg\" alt=\"\u6700\u8fd1\u6e32\u67d3 9\">\n        </div>\n        <div class=\"recent-render\">\n            <img src=\"https://pub-42bef849947f470bac59540ae0bf939a.r2.dev/fg-{{ $execution.id.toNumber() - 10 }}.jpg\" alt=\"\u6700\u8fd1\u6e32\u67d3 10\">\n        </div>\n        <div class=\"recent-render\">\n            <img src=\"https://pub-42bef849947f470bac59540ae0bf939a.r2.dev/fg-{{ $execution.id.toNumber() - 11 }}.jpg\" alt=\"\u6700\u8fd1\u6e32\u67d3 11\">\n        </div>\n        <div class=\"recent-render\">\n            <img src=\"https://pub-42bef849947f470bac59540ae0bf939a.r2.dev/fg-{{ $execution.id.toNumber() - 12 }}.jpg\" alt=\"\u6700\u8fd1\u6e32\u67d3 12\">\n        </div>\n    </div>\n\n    <!-- \u663e\u793a\u66f4\u591a\u6309\u94ae\u6807\u7b7e -->\n    <label for=\"show-more\" class=\"show-more-label\">\u663e\u793a\u66f4\u591a</label>\n</body>\n</html>",
        "options": {}
      },
      "id": "98360624-a5c6-4e52-bd25-7a5ad8c9f50d",
      "name": "\u63d0\u4f9b\u7ed3\u679c\u7f51\u9875",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        1160,
        280
      ],
      "typeVersion": 1.1
    },
    {
      "parameters": {
        "rules": {
          "values": [
            {
              "conditions": {
                "options": {
                  "caseSensitive": true,
                  "leftValue": "",
                  "typeValidation": "strict",
                  "version": 1
                },
                "conditions": [
                  {
                    "operator": {
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $('n8n \u8868\u5355\u89e6\u53d1\u5668').item.json.Style }}",
                    "rightValue": "\u8d85\u73b0\u5b9e\u9003\u9038"
                  }
                ],
                "combinator": "and"
              },
              "renameOutput": true,
              "outputKey": "Hyper-Surreal Escape"
            },
            {
              "conditions": {
                "options": {
                  "caseSensitive": true,
                  "leftValue": "",
                  "typeValidation": "strict",
                  "version": 1
                },
                "conditions": [
                  {
                    "id": "106969fa-994c-4b1e-b693-fc0b48ce5f3d",
                    "operator": {
                      "name": "filter.operator.equals",
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $('n8n \u8868\u5355\u89e6\u53d1\u5668').item.json.Style }}",
                    "rightValue": "\u540e\u6a21\u62df\u6545\u969c\u666f\u89c2"
                  }
                ],
                "combinator": "and"
              },
              "renameOutput": true,
              "outputKey": "Post-Analog Glitchscape"
            },
            {
              "conditions": {
                "options": {
                  "caseSensitive": true,
                  "leftValue": "",
                  "typeValidation": "strict",
                  "version": 1
                },
                "conditions": [
                  {
                    "id": "24318e7d-4dc1-4369-b045-bb7d0a484def",
                    "operator": {
                      "name": "filter.operator.equals",
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $('n8n \u8868\u5355\u89e6\u53d1\u5668').item.json.Style }}",
                    "rightValue": "AI \u53cd\u4e4c\u6258\u90a6"
                  }
                ],
                "combinator": "and"
              },
              "renameOutput": true,
              "outputKey": "AI Dystopia"
            },
            {
              "conditions": {
                "options": {
                  "caseSensitive": true,
                  "leftValue": "",
                  "typeValidation": "strict",
                  "version": 1
                },
                "conditions": [
                  {
                    "id": "a80911ff-67fc-416d-b135-0401c336d6d8",
                    "operator": {
                      "name": "filter.operator.equals",
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $('n8n \u8868\u5355\u89e6\u53d1\u5668').item.json.Style }}",
                    "rightValue": "\u9713\u8679\u91ce\u517d\u6d3e"
                  }
                ],
                "combinator": "and"
              },
              "renameOutput": true,
              "outputKey": "Neon Fauvism"
            },
            {
              "conditions": {
                "options": {
                  "caseSensitive": true,
                  "leftValue": "",
                  "typeValidation": "strict",
                  "version": 1
                },
                "conditions": [
                  {
                    "id": "7fdeec28-194e-415e-8da2-8bac90e4c011",
                    "operator": {
                      "name": "filter.operator.equals",
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $('n8n \u8868\u5355\u89e6\u53d1\u5668').item.json.Style }}",
                    "rightValue": "\u9c9c\u8273\u6d41\u884c\u7206\u70b8"
                  }
                ],
                "combinator": "and"
              },
              "renameOutput": true,
              "outputKey": "Vivid Pop Explosion"
            }
          ]
        },
        "options": {
          "fallbackOutput": "extra"
        }
      },
      "id": "8e6fb586-c998-46e1-8d0a-2c87c61d018a",
      "name": "\u6309\u98ce\u683c\u8def\u7ebf",
      "type": "n8n-nodes-base.switch",
      "position": [
        -380,
        400
      ],
      "typeVersion": 3.1,
      "notesInFlow": true
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "457eff4f-c9a9-4698-994b-9cdfb04f46f0",
              "name": "prompt",
              "value": "={{ $json.text }}",
              "type": "string"
            }
          ]
        },
        "options": {}
      },
      "id": "485d167e-ded1-48b5-918b-9d31b09992fa",
      "name": "\u751f\u6210\u63d0\u793a\u8bcd",
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        -580,
        400
      ],
      "notesInFlow": true,
      "onError": "continueRegularOutput"
    },
    {
      "parameters": {
        "content": "## \u5982\u4f60\u90e8\u7f72\u51fa\u73b0\u62a5\u9519\uff0c\u8bf7\u70b9\u51fb\u4e0a\u65b9\u201cExecutions\u201d\u67e5\u770b\u62a5\u9519\u4fe1\u606f\n\u6559\u7a0b\u89c1\uff1ahttps://linux.do/t/topic/240907",
        "height": 232.12815741287443
      },
      "id": "b898efdb-c7b2-4e54-bdc5-b9630dd02bed",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        -520,
        100
      ]
    }
  ],
  "connections": {
    "None": {
      "main": [
        [
          {
            "node": "\u8c03\u7528 \u7845\u57fa\u6d41\u52a8 \u63a8\u7406 API",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "AI Dystopia": {
      "main": [
        [
          {
            "node": "\u8c03\u7528 \u7845\u57fa\u6d41\u52a8 \u63a8\u7406 API",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Neon Fauvism": {
      "main": [
        [
          {
            "node": "\u8c03\u7528 \u7845\u57fa\u6d41\u52a8 \u63a8\u7406 API",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Vivid Pop Explosion": {
      "main": [
        [
          {
            "node": "\u8c03\u7528 \u7845\u57fa\u6d41\u52a8 \u63a8\u7406 API",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Hyper-Surreal Escape": {
      "main": [
        [
          {
            "node": "\u8c03\u7528 \u7845\u57fa\u6d41\u52a8 \u63a8\u7406 API",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Post-Analog Glitchscape": {
      "main": [
        [
          {
            "node": "\u8c03\u7528 \u7845\u57fa\u6d41\u52a8 \u63a8\u7406 API",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "\u56fe\u7247\u8f6c\u6210\u4e8c\u8fdb\u5236\u6587\u4ef6": {
      "main": [
        [
          {
            "node": "\u5c06\u56fe\u7247\u4e0a\u4f20\u5230 R2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If\u6761\u4ef6\u5224\u65ad": {
      "main": [
        [
          {
            "node": "\u56fe\u7247\u8f6c\u6210\u4e8c\u8fdb\u5236\u6587\u4ef6",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "\u7ed8\u753b\u542b\u6709\u654f\u611f\u5185\u5bb9",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "\u8c03\u7528 \u7845\u57fa\u6d41\u52a8 \u63a8\u7406 API": {
      "main": [
        [
          {
            "node": "If\u6761\u4ef6\u5224\u65ad",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "\u56de\u590d\u9519\u8bef1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "n8n \u8868\u5355\u89e6\u53d1\u5668": {
      "main": [
        [
          {
            "node": "If\u6761\u4ef6\u5224\u65ad2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "LLM\u751f\u6210\u63d0\u793a\u8bcd",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "If\u6761\u4ef6\u5224\u65ad2": {
      "main": [
        [
          {
            "node": "LLM\u751f\u6210\u63d0\u793a\u8bcd",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "LLM\u751f\u6210\u63d0\u793a\u8bcd1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini Chat Model1": {
      "ai_languageModel": [
        [
          {
            "node": "LLM\u751f\u6210\u63d0\u793a\u8bcd1",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "LLM\u751f\u6210\u63d0\u793a\u8bcd1": {
      "main": [
        [
          {
            "node": "\u751f\u6210\u63d0\u793a\u8bcd",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "LLM\u751f\u6210\u63d0\u793a\u8bcd": {
      "main": [
        [
          {
            "node": "\u751f\u6210\u63d0\u793a\u8bcd",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "\u5c06\u56fe\u7247\u4e0a\u4f20\u5230 R2": {
      "main": [
        [
          {
            "node": "\u63d0\u4f9b\u7ed3\u679c\u7f51\u9875",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "\u56de\u590d\u9519\u8bef",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "\u6309\u98ce\u683c\u8def\u7ebf": {
      "main": [
        [
          {
            "node": "Hyper-Surreal Escape",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Post-Analog Glitchscape",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "AI Dystopia",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Neon Fauvism",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Vivid Pop Explosion",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "None",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "\u751f\u6210\u63d0\u793a\u8bcd": {
      "main": [
        [
          {
            "node": "\u6309\u98ce\u683c\u8def\u7ebf",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "f70dc2d1-8e7c-4c54-a4a4-50c9fb811574",
  "id": "H7fd63MMXn0L2n0w",
  "tags": []
}

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

flux_all. Uses httpRequest, formTrigger, lmChatGoogleGemini, chainLlm. Webhook trigger; 23 nodes.

Source: https://github.com/LisaPullman/flux/blob/b7a8c9a90fe54702d81faee84d7ea56b437462ff/flux_all.json — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

Content - Newsletter Agent. Uses formTrigger, chainLlm, outputParserStructured, httpRequest. Event-driven trigger; 91 nodes.

Form Trigger, Chain Llm, Output Parser Structured +8
AI & RAG

Content - Newsletter Agent. Uses formTrigger, chainLlm, outputParserStructured, httpRequest. Event-driven trigger; 87 nodes.

Form Trigger, Chain Llm, Output Parser Structured +7
AI & RAG

Resume Screening & Behavioral Interviews with Gemini, Elevenlabs, & Notion ATS copy. Uses outputParserStructured, chainLlm, googleDrive, stickyNote. Webhook trigger; 67 nodes.

Output Parser Structured, Chain Llm, Google Drive +9
AI & RAG

Candidate Engagement | Resume Screening | AI Voice Interviews | Applicant Insights

Output Parser Structured, Chain Llm, Google Drive +9
AI & RAG

leads. Uses supabase, gmail, formTrigger, httpRequest. Webhook trigger; 62 nodes.

Supabase, Gmail, Form Trigger +13