8
n8n 한국어amn8n.com

Zep 기억을 가진 쇼핑 어시스턴트

중급

이것은Support Chatbot, Multimodal AI분야의자동화 워크플로우로, 8개의 노드를 포함합니다.주로 Agent, GoogleSheetsTool, MemoryZep, ChatTrigger, LmChatOpenAi 등의 노드를 사용하며. Zep 기억, GPT-4, Google 스프레드시트를 사용하여 개인화된 쇼핑 어시스턴트를 구축합니다.

사전 요구사항
  • Google Sheets API 인증 정보
  • OpenAI API Key
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
  "id": "7P92GpAzZ0RAEUKO",
  "meta": {
    "instanceId": "fcb622cbd5234c565b9b78babeaf0ea2455df9d2aad0d1adff7c1ef99583e685",
    "templateCredsSetupCompleted": true
  },
  "name": "Shopping Assitant with Zep Memory",
  "tags": [],
  "nodes": [
    {
      "id": "55b62571-be88-4fc7-a649-416ee0c72fcb",
      "name": "AI 에이전트",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -540,
        -120
      ],
      "parameters": {
        "text": "={{ $json.chatInput }}",
        "options": {
          "systemMessage": "=You are the Infystore Shopping Assistant — a professional, friendly, helpful virtual agent available 24/7. You help customers with:\n\n1. Inventory details (availability, restock info, short description)\n2. Order tracking (status, delivery ETA)\n3. Return policy (return window, conditions)\n4. Return process (steps and eligibility)\n\nAlways respond only to the user's question — do not add extra info. Be concise, polite, human-like. Never repeat the same question twice. Ask only one thing at a time. Never send images or markdown — only plain text.\n\n== Initial Greeting (only once per conversation) ==\nHi! I’m your shopping assistant from Infystore. I can help you check product availability, track your order, or guide you through returns. How can I assist you today?\n\n== INVENTORY FLOW ==\nIf the user asks about a product (e.g., “Do you have the Organic Cotton Tote Bag?”):\n→ Extract product name from message\n→ Run: Get_Inventory(product_name)\n\nIf in stock:\nRespond: \n\"The [product_name] is available, and we currently have [stock_level] units in stock.\"\n\nIf out of stock:\n→ If restock ETA exists:\n\"The [product_name] is currently out of stock. It will be restocked around [restock_eta].\"\n→ If no ETA:\n\"The [product_name] is currently out of stock.Do you have any others product like this.\"\n→ If similar products available:\n\"You might also like: [alternative_1], [alternative_2].\"\n\nEnd all inventory peragraph type responses with : product_description and asking a place order after about product.\nIf the user ask place order related:\n   Response : \"I can't place orders directly. Please visit Infystore's website and order the Reebok Shoes. Can I assist you with anything else?\"\n\n== ORDER TRACKING FLOW ==\nIf the user asks about tracking an order:\n→ If no phone number is stored, ask:\n\"Could you please provide your phone number?\"\n\n→ On receiving phone number:\n→ Run: Get_Orders(phone_number)\n\nIf no order found:\n\"We couldn’t find any order with those details. Please double-check and resend your phone number.\"\n\nIf order found:\n\"Your order [order_name] is currently [order_status]. Estimated delivery: [delivery_eta].\"\n\nNever ask for the same phone number more than once.\n\n== RETURN POLICY FLOW ==\nIf user asks about return policy:\n→ Run: Get_ReturnPolicy\n\nRespond:\n\"You can return your product within [return_window_days] days of delivery. Please ensure the item is unused and in its original packaging.\"\n\n== RETURN PROCESS FLOW ==\nIf the user wants to return a product:\n→ If phone number or order ID not stored, ask once:\n\"Please provide your phone number to find your order.\"\n\n→ Run: Get_Orders(phone_number)\n\n→ If order not yet delivered:\n\"Your order is still in transit and can only be returned after it’s delivered.\"\n\n→ If one order is delivered:\n\"Are you returning your order for [order_name]?\"\n\n→ If multiple delivered orders:\n\"Which order would you like to return? Please choose one:\n[order_name_1]  \n[order_name_2]\"\n\n→ If user confirms order:\n\"Please contact customer care to return your product. We’ll guide you through the next steps!\"\n\n== GENERAL RULES ==\n- No markdown, no emojis, no images\n- Never repeat a question already asked\n- If the question is vague, ask a helpful follow-up\n- Keep responses short, helpful, and human-like\n- Only respond based on user input\n- Do not initiate or suggest anything unless user asks\n"
        },
        "promptType": "define"
      },
      "typeVersion": 2
    },
    {
      "id": "21e0b8c9-5549-49aa-9933-dd61073fef2d",
      "name": "OpenAI 채팅 모델",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -700,
        120
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "toKygKIh3jjPrkgy",
          "name": "OpenAi account 6"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "5aeb09bf-49f8-41e4-85e0-0b3c6356dd5e",
      "name": "채팅 메시지 수신 시",
      "type": "@n8n/n8n-nodes-langchain.chatTrigger",
      "position": [
        -800,
        -120
      ],
      "webhookId": "f08324a7-38eb-4f38-827d-a7de0ebeecf0",
      "parameters": {
        "options": {}
      },
      "typeVersion": 1.1
    },
    {
      "id": "14f13061-c179-43d3-aa06-f2eee144197a",
      "name": "스티커 노트",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -160,
        -140
      ],
      "parameters": {
        "width": 360,
        "height": 120,
        "content": "### Sample Google Sheet link:\nhttps://docs.google.com/spreadsheets/d/17PsTWr5shCgA2RnHuj1xwqSRX7uBcb-psRYZA2jFOTo/edit?usp=sharing"
      },
      "typeVersion": 1
    },
    {
      "id": "52f34812-68c0-4461-858a-1453c6002b4c",
      "name": "Zep",
      "type": "@n8n/n8n-nodes-langchain.memoryZep",
      "position": [
        -580,
        120
      ],
      "parameters": {},
      "credentials": {
        "zepApi": {
          "id": "bUWqe8i8G7Fs4Mmt",
          "name": "Zep Api account"
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "15c29e7a-2b25-42a6-b205-038cede88241",
      "name": "주문 내역 가져오기",
      "type": "n8n-nodes-base.googleSheetsTool",
      "position": [
        -460,
        120
      ],
      "parameters": {
        "options": {},
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 2103540895,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/17PsTWr5shCgA2RnHuj1xwqSRX7uBcb-psRYZA2jFOTo/edit#gid=2103540895",
          "cachedResultName": "Order Tracking"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "17PsTWr5shCgA2RnHuj1xwqSRX7uBcb-psRYZA2jFOTo",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/17PsTWr5shCgA2RnHuj1xwqSRX7uBcb-psRYZA2jFOTo/edit?usp=drivesdk",
          "cachedResultName": "Shopping Assitant"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "AjFU8eA6fXFRo47v",
          "name": "Google Sheets account"
        }
      },
      "typeVersion": 4.6
    },
    {
      "id": "25ae4d47-95a4-4d3b-97ea-03f8bd1ee564",
      "name": "재고 확인하기",
      "type": "n8n-nodes-base.googleSheetsTool",
      "position": [
        -340,
        120
      ],
      "parameters": {
        "options": {},
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/17PsTWr5shCgA2RnHuj1xwqSRX7uBcb-psRYZA2jFOTo/edit#gid=0",
          "cachedResultName": "Product Details"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "17PsTWr5shCgA2RnHuj1xwqSRX7uBcb-psRYZA2jFOTo",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/17PsTWr5shCgA2RnHuj1xwqSRX7uBcb-psRYZA2jFOTo/edit?usp=drivesdk",
          "cachedResultName": "Shopping Assitant"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "AjFU8eA6fXFRo47v",
          "name": "Google Sheets account"
        }
      },
      "typeVersion": 4.6
    },
    {
      "id": "7e8d2175-a35c-439d-beea-47314a9e9ea6",
      "name": "반품 정책 확인하기",
      "type": "n8n-nodes-base.googleSheetsTool",
      "position": [
        -200,
        120
      ],
      "parameters": {
        "options": {},
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 1762722848,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/17PsTWr5shCgA2RnHuj1xwqSRX7uBcb-psRYZA2jFOTo/edit#gid=1762722848",
          "cachedResultName": "Return Policy"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "17PsTWr5shCgA2RnHuj1xwqSRX7uBcb-psRYZA2jFOTo",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/17PsTWr5shCgA2RnHuj1xwqSRX7uBcb-psRYZA2jFOTo/edit?usp=drivesdk",
          "cachedResultName": "Shopping Assitant"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "AjFU8eA6fXFRo47v",
          "name": "Google Sheets account"
        }
      },
      "typeVersion": 4.6
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "29fbe65c-9cdb-4ddd-a1a6-b73fe0e7a724",
  "connections": {
    "52f34812-68c0-4461-858a-1453c6002b4c": {
      "ai_memory": [
        [
          {
            "node": "55b62571-be88-4fc7-a649-416ee0c72fcb",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "15c29e7a-2b25-42a6-b205-038cede88241": {
      "ai_tool": [
        [
          {
            "node": "55b62571-be88-4fc7-a649-416ee0c72fcb",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "25ae4d47-95a4-4d3b-97ea-03f8bd1ee564": {
      "ai_tool": [
        [
          {
            "node": "55b62571-be88-4fc7-a649-416ee0c72fcb",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "7e8d2175-a35c-439d-beea-47314a9e9ea6": {
      "ai_tool": [
        [
          {
            "node": "55b62571-be88-4fc7-a649-416ee0c72fcb",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "21e0b8c9-5549-49aa-9933-dd61073fef2d": {
      "ai_languageModel": [
        [
          {
            "node": "55b62571-be88-4fc7-a649-416ee0c72fcb",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "5aeb09bf-49f8-41e4-85e0-0b3c6356dd5e": {
      "main": [
        [
          {
            "node": "55b62571-be88-4fc7-a649-416ee0c72fcb",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
자주 묻는 질문

이 워크플로우를 어떻게 사용하나요?

위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.

이 워크플로우는 어떤 시나리오에 적합한가요?

중급 - 지원 챗봇, 멀티모달 AI

유료인가요?

이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.

워크플로우 정보
난이도
중급
노드 수8
카테고리2
노드 유형6
난이도 설명

일정 경험을 가진 사용자를 위한 6-15개 노드의 중간 복잡도 워크플로우

저자
InfyOm Technologies

InfyOm Technologies

@infyom

We are an AI Automation Agency focusing on various AI Automation Services like, workflow automation, shopify automation, chatbot developerment, custom ai agent development and more.

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34