リジライトなAIワーキングフローを自動GPTとGeminiフォールバックチェーンで構築

中級

これはAI分野の自動化ワークフローで、9個のノードを含みます。主にSet, ManualTrigger, Code, Agent, LmChatOpenAiなどのノードを使用、AI技術を活用したスマート自動化を実現。 自動GPTとGeminiフォールバックチェーンを使用して弾力のなAIワーキングフローを構築する

前提条件
  • OpenAI API Key
  • Google Gemini API Key

カテゴリー

ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
  "meta": {
    "instanceId": "e409ea34548a2afe2dffba31130cd1cf2e98ebe2afaeed2a63caf2a0582d1da0"
  },
  "nodes": [
    {
      "id": "180a023e-a350-4315-a7f2-968d052f634d",
      "name": "AI エージェント",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "onError": "continueErrorOutput",
      "position": [
        280,
        -20
      ],
      "parameters": {
        "text": "Only output \"test\".",
        "options": {},
        "promptType": "define"
      },
      "typeVersion": 2
    },
    {
      "id": "32f3f1ad-8e72-427b-9bcf-0686ae3c4c5c",
      "name": "エージェント Variables",
      "type": "n8n-nodes-base.set",
      "position": [
        -40,
        -20
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "38ce3db6-ce1d-4091-9645-39e674ad1782",
              "name": "models",
              "type": "array",
              "value": "[\"gemini-2.5-flash\"]"
            },
            {
              "id": "151da1bf-a82a-40a9-bca2-a85ab48f1c5b",
              "name": "fail_count",
              "type": "number",
              "value": "={{ $('Agent Variables')?.isExecuted ? $('Agent Variables').last()?.json?.fail_count + 1 : 0 }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "2d7804a4-3744-4866-89b2-705bbec66acc",
      "name": "Fallback Models",
      "type": "@n8n/n8n-nodes-langchain.code",
      "position": [
        280,
        500
      ],
      "parameters": {
        "code": {
          "supplyData": {
            "code": "let llms = await this.getInputConnectionData('ai_languageModel', 0);\nllms.reverse(); // reverse array, so the order matches the UI elements\n\nconst llm_index = $input.item.json.fail_count;\n\nif (!Number.isInteger(llm_index)) {\n  console.log(\"'llm_index' is udefined or not a valid integer\");\n  throw new Error(\"'llm_index' is udefined or not a valid integer\");\n}\n\nif(typeof llms[llm_index] === 'undefined') {\n  console.log(`No LLM found with index ${llm_index}`);\n  throw new Error(`No LLM found with index ${llm_index}`);\n}\n\nreturn llms[llm_index];"
          }
        },
        "inputs": {
          "input": [
            {
              "type": "ai_languageModel",
              "required": true
            }
          ]
        },
        "outputs": {
          "output": [
            {
              "type": "ai_languageModel"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "e3d0d416-2571-4e86-b701-27aee1e5856e",
      "name": "First Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        300,
        700
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o",
          "cachedResultName": "gpt-4o"
        },
        "options": {}
      },
      "typeVersion": 1.2
    },
    {
      "id": "75ce0d64-dcbd-47bf-a15b-802fa979333a",
      "name": "Falback Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        420,
        700
      ],
      "parameters": {
        "options": {},
        "modelName": "models/gemma-3-27b-it"
      },
      "typeVersion": 1
    },
    {
      "id": "10efe391-496f-45db-ae13-52324b41b4ff",
      "name": "付箋",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        200,
        200
      ],
      "parameters": {
        "color": 6,
        "width": 420,
        "height": 640,
        "content": "### ⚙️ CONFIGURE YOUR FALLBACK CHAIN HERE ⚙️\n\nThis node selects which AI model to use based on the number of previous failures.\n\n**To set up your models:**\n1.  Add your desired AI model nodes to the canvas (OpenAI, Gemini, Anthropic, etc.).\n2.  Connect them to **THIS** node's `ai_languageModel` input.\n\n\n**IMPORTANT:** The **order** you connect them in is the order they will be tried."
      },
      "typeVersion": 1
    },
    {
      "id": "93797015-159e-4e43-bf72-47f0533e92f1",
      "name": "付箋1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        240,
        -240
      ],
      "parameters": {
        "color": 7,
        "width": 340,
        "height": 320,
        "content": "#### 📝 DEFINE YOUR PROMPT HERE\n\nEnter the prompt or task for the AI agent in this node.\n\nIt will dynamically use the models provided one-by-one from the `Fallback Models` node. If it fails, it will automatically retry with the next model in your chain."
      },
      "typeVersion": 1
    },
    {
      "id": "4cedd679-70d3-41a2-9bf5-addf8e146c9a",
      "name": "付箋2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -180,
        -240
      ],
      "parameters": {
        "color": 7,
        "width": 400,
        "height": 320,
        "content": "#### 🔁 Loop Controller\n\nThis node manages the retry loop.\n\nIt initializes and increments a `fail_count` variable each time the `AI Agent` fails, which tells the `Fallback Models` node to try the next model in the list.\n\nNo configuration is needed here."
      },
      "typeVersion": 1
    },
    {
      "id": "4b5e9318-16fd-4e69-add6-0edbca278d91",
      "name": "手動トリガー",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -320,
        -20
      ],
      "parameters": {},
      "typeVersion": 1
    }
  ],
  "pinData": {},
  "connections": {
    "AI Agent": {
      "main": [
        [],
        [
          {
            "node": "Agent Variables",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e3d0d416-2571-4e86-b701-27aee1e5856e": {
      "ai_languageModel": [
        [
          {
            "node": "2d7804a4-3744-4866-89b2-705bbec66acc",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "75ce0d64-dcbd-47bf-a15b-802fa979333a": {
      "ai_languageModel": [
        [
          {
            "node": "2d7804a4-3744-4866-89b2-705bbec66acc",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Manual Trigger": {
      "main": [
        [
          {
            "node": "Agent Variables",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Agent Variables": {
      "main": [
        [
          {
            "node": "AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2d7804a4-3744-4866-89b2-705bbec66acc": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    }
  }
}
よくある質問

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

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

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

中級 - 人工知能

有料ですか?

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

ワークフロー情報
難易度
中級
ノード数9
カテゴリー1
ノードタイプ7
難易度説明

経験者向け、6-15ノードの中程度の複雑さのワークフロー

作成者
Lucas Peyrin

Lucas Peyrin

@lucaspeyrin

Innovative builder with a passion for crafting automation solutions that solve real-world challenges. From streamlining workflows to driving efficiency, my work empowers teams and individuals to achieve more with less effort. Experienced in developing scalable tools and strategies that deliver results with n8n, supabase and cline.

外部リンク
n8n.ioで表示

このワークフローを共有

カテゴリー

カテゴリー: 34