{
  "name": "🧑‍🎓 AI powered language teacher with Telegram, Google Sheet and GPT-4o",
  "nodes": [
    {
      "id": "bc49829b-45f2-4910-9c37-907271982f14",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1500,
        -520
      ],
      "parameters": {
        "width": 780,
        "height": 540,
        "content": "### 3. Do you need more details?\nFind a step-by-step guide in this tutorial\n![Guide](https://www.samirsaci.com/content/images/2025/04/Flash-Cards.png)\n[🎥 Watch My Tutorial](https://youtu.be/MQV8wDSug7"
      }
    },
    {
      "id": "80af5237-9046-4b40-ac7c-167d8e0a490f",
      "name": "AI Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -2140,
        -140
      ]
    },
    {
      "id": "8b35027e-ec5b-4c3e-9a5b-2780b6c40223",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -2180,
        100
      ]
    },
    {
      "id": "688d6882-4930-407d-bf58-5f6add8eb159",
      "name": "Simple Memory",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        -2000,
        140
      ]
    },
    {
      "id": "33f4a062-73f9-4a99-abca-1184ef2c2a41",
      "name": "Telegram Trigger",
      "type": "n8n-nodes-base.telegramTrigger",
      "position": [
        -2960,
        -140
      ]
    },
    {
      "id": "af385807-d024-477e-9a42-c195043e95da",
      "name": "Retrive Vocabulary",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -2700,
        -140
      ]
    },
    {
      "id": "3ab67ca5-9839-4fa6-bfc1-4dbbaf5593fc",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -3000,
        -520
      ],
      "parameters": {
        "width": 680,
        "height": 540,
        "content": "### 1. Workflow Trigger with Telegram Message\n1. The workflow is triggered by a user message. \n2. The second node retrieves the vocabulary list from a Google Sheet.\n3. The third node combines all the "
      }
    },
    {
      "id": "740a2d04-46fe-41f1-b887-f88f3e23c50d",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2300,
        -520
      ],
      "parameters": {
        "width": 760,
        "height": 780,
        "content": "### 2. Conversational AI Agent\nThe AI agent will take as inputs the two vocabulary lists and user's message to asks questions and process answers. Conversations are recorded by chat id; each user has "
      }
    },
    {
      "id": "e92a55dc-6d9d-4008-bb40-72a7f2dd470c",
      "name": "Aggregate Vocabulary Lists",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        -2460,
        -140
      ]
    },
    {
      "id": "18b29677-cfc0-4817-9321-35090a3fda2e",
      "name": "Answer to the User",
      "type": "n8n-nodes-base.telegram",
      "position": [
        -1740,
        -140
      ]
    }
  ],
  "connections": {
    "AI Agent": {
      "main": [
        [
          {
            "node": "Answer to the User",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Simple Memory": {
      "ai_memory": [
        [
          {
            "node": "AI Agent",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "Telegram Trigger": {
      "main": [
        [
          {
            "node": "Retrive Vocabulary",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Retrive Vocabulary": {
      "main": [
        [
          {
            "node": "Aggregate Vocabulary Lists",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Aggregate Vocabulary Lists": {
      "main": [
        [
          {
            "node": "AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}