クイズ - 学習

中級

これはOther, AI分野の自動化ワークフローで、15個のノードを含みます。主にIf, Merge, Webhook, Supabase, HttpRequestなどのノードを使用、AI技術を活用したスマート自動化を実現。 GPT-4o-mini と Supabase ストレージを使用して AI 駆動の WhatsApp クイズボットを作成

前提条件
  • HTTP Webhookエンドポイント(n8nが自動生成)
  • Supabase URL と API Key
  • ターゲットAPIの認証情報が必要な場合あり
  • OpenAI API Key

カテゴリー

ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
  "id": "G5sy4PdIPoOIdy8a",
  "meta": {
    "instanceId": "47132c409ea4cfc382a6c48656c8a35b5da4c1fa7ef892882b424c42ae8a05b2",
    "templateCredsSetupCompleted": true
  },
  "name": "Quiz - Estudos",
  "tags": [],
  "nodes": [
    {
      "id": "49e9a3e6-8d75-4b26-8060-36778e30e4c2",
      "name": "シンプルメモリ",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        1360,
        -320
      ],
      "parameters": {},
      "typeVersion": 1.3
    },
    {
      "id": "02d7559c-c735-455e-b21b-ec468a0d4532",
      "name": "OpenAI チャットモデル",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        1180,
        -320
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "ZKobrAKEac2WpmRs",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "bb91ac3f-be03-44e3-a342-b8e488c6165b",
      "name": "マージ",
      "type": "n8n-nodes-base.merge",
      "position": [
        1040,
        -520
      ],
      "parameters": {},
      "typeVersion": 3.1
    },
    {
      "id": "13cd878e-e453-42d9-8c0e-988a53795bde",
      "name": "Whatsapp Trigger",
      "type": "n8n-nodes-base.webhook",
      "position": [
        -280,
        -420
      ],
      "webhookId": "aae5d69a-d682-4d9d-9710-a3807ca73b9c",
      "parameters": {
        "path": "aae5d69a-d682-4d9d-9710-a3807ca73b9c",
        "options": {},
        "httpMethod": "POST"
      },
      "typeVersion": 2
    },
    {
      "id": "164d4163-c48b-40af-b747-5ca1c20c9f48",
      "name": "User exist?",
      "type": "n8n-nodes-base.if",
      "position": [
        140,
        -420
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "156a2527-ccc7-4249-9d8f-fd22fa066ad1",
              "operator": {
                "name": "filter.operator.equals",
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "b3eb496f-1fd5-4f89-a77b-711035efbc37",
      "name": "AI エージェント - Portuguese BR System Msg",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1260,
        -520
      ],
      "parameters": {
        "options": {
          "systemMessage": "=Você é um especialista em quizzes altamente qualificado e um tutor virtual extremamente amigável, paciente e empático. Sua principal missão é criar quizzes educativos e engajadores, e auxiliar os usuários em sua jornada de aprendizado. Você se comunica em português do Brasil.\n\nDiretrizes de Interação e Personalidade:\n\n1.  **Especialista em Quizzes:** Demonstre profundo conhecimento na criação de perguntas relevantes e bem formuladas sobre uma vasta gama de temas. Seu objetivo é testar e expandir o conhecimento do usuário.\n2.  **Uso do Nome:** Sempre que interagir, dirija-se ao usuário pelo nome que foi fornecido no contexto da conversa (ex: \"Olá, [NomeDoUsuario]! Que bom ter você por aqui para um quiz!\"). Isso cria uma atmosfera mais próxima e pessoal.\n3.  **Foco no Tema Fornecido:** O quiz deve ser sobre o tema que o usuário definiu [placeholder.json.tema]. Concentre-se nesse tema para a geração das perguntas.\n4.  **Flexibilidade para Mudança de Tema:** Embora o foco seja no tema atual, se o usuário expressar um desejo claro de mudar de tema, reconheça essa solicitação de forma positiva. A execução da mudança de tema (como a coleta do novo tema) será gerenciada pelo sistema externo (n8n), mas sua resposta deve ser receptiva a essa intenção (ex: \"Entendido, [placeholder.NomeDoUsuario]! Se quiser explorar um novo assunto, é só me dizer qual será o próximo tema quando o sistema perguntar!\").\n5.  **Personalização e Empatia:** Vá além de apenas fazer perguntas. Mostre genuíno interesse pelo aprendizado do usuário. Utilize frases que demonstrem encorajamento, paciência se o usuário errar, e entusiasmo quando ele acertar. Adapte sua linguagem para ser motivadora. Por exemplo: \"Não se preocupe se essa não foi fácil, [NomeDoUsuario], o importante é aprender!\" ou \"Excelente, [NomeDoUsuario], você está indo muito bem!\".\n6.  **Geração de Conteúdo do Quiz (Instrução Implícita para o \"User Prompt\"):** Esteja preparado para, quando solicitado no *prompt do usuário/tarefa*, gerar um conjunto de 10 perguntas de múltipla escolha (com 4 opções: A, B, C, D, e a indicação da correta) sobre o tema fornecido. \n7.  **Linguagem:** Use um tom conversacional, positivo e acessível, adequado para um ambiente de aprendizado no WhatsApp. Evite jargões desnecessários, a menos que o tema do quiz exija e possa ser uma oportunidade de aprendizado.\n8.  **Feedback Construtivo:** Forneça explicações claras e concisas, especialmente para respostas incorretas, ajudando o usuário a entender o porquê.\n\nLembre-se, [NomeDoUsuario] está buscando uma experiência de estudo que seja eficaz, mas também agradável. Sua empatia e sua capacidade de personalizar a conversa são tão importantes quanto a qualidade do quiz."
        }
      },
      "typeVersion": 1.9
    },
    {
      "id": "272d4b9e-4e14-4d0f-b269-4a89fff170a5",
      "name": "Supabase: Fetch User Data",
      "type": "n8n-nodes-base.supabase",
      "position": [
        -60,
        -420
      ],
      "parameters": {
        "operation": "select"
      },
      "credentials": {
        "supabaseApi": {
          "id": "HhlIKNFIScBo9gSX",
          "name": "Supabase account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "5475ea85-9672-4d2b-83d9-4ab688569389",
      "name": "Ask For Name",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        380,
        -260
      ],
      "parameters": {
        "method": "POST",
        "options": {},
        "jsonBody": "=Bem-vindo(a) ao nosso espaço de estudos! Para que eu possa te ajudar melhor, me conta, qual é o seu nome?",
        "sendBody": true,
        "specifyBody": "json"
      },
      "typeVersion": 4.2
    },
    {
      "id": "19a8e284-8287-40c9-8623-abbdd6b33e5d",
      "name": "Supabase: Update User Name",
      "type": "n8n-nodes-base.supabase",
      "position": [
        600,
        -260
      ],
      "parameters": {
        "operation": "update"
      },
      "credentials": {
        "supabaseApi": {
          "id": "HhlIKNFIScBo9gSX",
          "name": "Supabase account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "e5f6cab2-b476-4795-80d8-022c1dd7e9ff",
      "name": "Quiz Topic Defined?",
      "type": "n8n-nodes-base.if",
      "position": [
        380,
        -520
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "c15ea575-fe71-436c-9abd-dd282c22d056",
              "operator": {
                "name": "filter.operator.equals",
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "eca29455-df9f-4f02-807e-7657f8a8d04c",
      "name": "Ask For Study Topic (WhatsApp Message)",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        600,
        -440
      ],
      "parameters": {
        "method": "POST",
        "options": {},
        "jsonBody": "={{NOME_DO_USUARIO_AQUI}}, pensando em te ajudar nos estudos, qual matéria ou tópico específico prefere para o nosso quiz?\n",
        "sendBody": true,
        "specifyBody": "json"
      },
      "typeVersion": 4.2
    },
    {
      "id": "08760830-e348-4fe9-882f-9d05507e02c5",
      "name": "Supabase: Update Study Topic",
      "type": "n8n-nodes-base.supabase",
      "position": [
        820,
        -440
      ],
      "parameters": {
        "operation": "update"
      },
      "credentials": {
        "supabaseApi": {
          "id": "HhlIKNFIScBo9gSX",
          "name": "Supabase account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "b38b927f-f076-4388-aecb-81c35a15c4ea",
      "name": "Send Message to User (WhatsApp Message)",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1636,
        -520
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "28f7ad21-bbf8-42ac-bd8f-a37fc80c9914",
      "name": "付箋",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -340,
        -220
      ],
      "parameters": {
        "height": 240,
        "content": "## WhatsApp Quiz Bot\nLet users study a specific topic via WhatsApp.\n🧠 Fetch user name & topic\n📚 Ask for missing info\n📥 Save to Supabase\n🤖 Generate quiz with AI\n📲 Send back questions\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "72c3a241-89a0-4454-9ebb-99c994ff6f4f",
      "name": "付箋1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -80,
        -220
      ],
      "parameters": {
        "width": 260,
        "height": 380,
        "content": "## Flow Overview\n\nTrigger: Incoming WhatsApp msg\n\nFetch user data (Supabase)\n\nCheck if name & topic exist\n\nAsk missing info via WhatsApp\n\nUpdate Supabase with answers\n\nMerge inputs\n\nAI Agent generates quiz\n\nSend response to user\n\n"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "e383ac09-7b4c-47b1-9e1f-1f16ff8f63f1",
  "connections": {
    "Merge": {
      "main": [
        [
          {
            "node": "AI Agent - Portuguese BR System Msg",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "164d4163-c48b-40af-b747-5ca1c20c9f48": {
      "main": [
        [
          {
            "node": "e5f6cab2-b476-4795-80d8-022c1dd7e9ff",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "5475ea85-9672-4d2b-83d9-4ab688569389",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5475ea85-9672-4d2b-83d9-4ab688569389": {
      "main": [
        [
          {
            "node": "19a8e284-8287-40c9-8623-abbdd6b33e5d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Simple Memory": {
      "ai_memory": [
        [
          {
            "node": "AI Agent - Portuguese BR System Msg",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "13cd878e-e453-42d9-8c0e-988a53795bde": {
      "main": [
        [
          {
            "node": "272d4b9e-4e14-4d0f-b269-4a89fff170a5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent - Portuguese BR System Msg",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "e5f6cab2-b476-4795-80d8-022c1dd7e9ff": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "eca29455-df9f-4f02-807e-7657f8a8d04c",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "272d4b9e-4e14-4d0f-b269-4a89fff170a5": {
      "main": [
        [
          {
            "node": "164d4163-c48b-40af-b747-5ca1c20c9f48",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "19a8e284-8287-40c9-8623-abbdd6b33e5d": {
      "main": [
        []
      ]
    },
    "08760830-e348-4fe9-882f-9d05507e02c5": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "AI Agent - Portuguese BR System Msg": {
      "main": [
        [
          {
            "node": "b38b927f-f076-4388-aecb-81c35a15c4ea",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "eca29455-df9f-4f02-807e-7657f8a8d04c": {
      "main": [
        [
          {
            "node": "08760830-e348-4fe9-882f-9d05507e02c5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
よくある質問

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

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

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

中級 - その他, 人工知能

有料ですか?

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

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

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

作成者
Danielle Gomes

Danielle Gomes

@daniellegomes

Product Designer | n8n Automation | Practical AI Solutions I turn ideas into smart digital experiences focused on efficiency and personalization. Specialized in building solutions that combine design, n8n workflows, and AI to scale products, optimize processes, and maximize impact.

外部リンク
n8n.ioで表示

このワークフローを共有

カテゴリー

カテゴリー: 34