8
n8n 한국어amn8n.com

Perplexity, OpenAI, Google Doc를 사용하여 데이터 드라이브드 UX 캐릭터 프로필(설명 및 이미지) 생성

고급

이것은Market Research, Multimodal AI분야의자동화 워크플로우로, 16개의 노드를 포함합니다.주로 SplitOut, GoogleDocs, Perplexity, FormTrigger, GoogleDrive 등의 노드를 사용하며. 사용하여 Perplexity, DALL·E 3, Google Doc를 통해 데이터 드라이브드 UX 역할 이미지 생성

사전 요구사항
  • Google Drive API 인증 정보
  • OpenAI API Key
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
  "id": "gdQ7R3obn4CWmI29",
  "meta": {
    "instanceId": "eb6cdf70dd526a1c97d7dcb6b9292757001af53236f7ca64a2582483540c6ee4",
    "templateCredsSetupCompleted": true
  },
  "name": "Create Data-Driven UX personas (descriptio and images) using Perplexity, OpenAI and Google Doc",
  "tags": [],
  "nodes": [
    {
      "id": "13cb8a59-e5de-49dc-9d2f-a14c2f7fd12c",
      "name": "폼 제출 시1",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        2320,
        112
      ],
      "webhookId": "7184765b-f939-4d1c-b435-ad6d62b5caf8",
      "parameters": {
        "options": {},
        "formTitle": "Creating Personas",
        "formFields": {
          "values": [
            {
              "fieldLabel": "Website url",
              "placeholder": "Enter website url",
              "requiredField": true
            },
            {
              "fieldLabel": "Region"
            },
            {
              "fieldLabel": "Inductry"
            }
          ]
        },
        "formDescription": "This form is used to create personas for your service based on market research."
      },
      "typeVersion": 2.2
    },
    {
      "id": "edb2152e-a8fd-415a-921d-13d7bb952b48",
      "name": "문서 업데이트1",
      "type": "n8n-nodes-base.googleDocs",
      "position": [
        3376,
        -96
      ],
      "parameters": {
        "actionsUi": {
          "actionFields": [
            {
              "text": "={{ $json.output }}",
              "action": "insert"
            }
          ]
        },
        "operation": "update"
      },
      "credentials": {
        "googleDocsOAuth2Api": {
          "id": "QNNpAKDcqSbqCpbG",
          "name": "Google Docs account 3"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "2e4e8c52-e702-406d-bace-740ab2df1a6e",
      "name": "OpenAI 채팅 모델2",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        2864,
        320
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "c0zo07KHkFyAOwYy",
          "name": "OpenAi account 2"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "2d577fd4-e97a-4344-8940-8b588902214f",
      "name": "스티커 노트1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1648,
        0
      ],
      "parameters": {
        "color": 5,
        "width": 520,
        "height": 808,
        "content": "***Automated Data-Driven UX Persona Creation – Try It Out!***\n\n## About\nYou can create personas based on your website, region, and industry.\nUnlike traditional persona creation, this process uses reliable data sources and can estimate market size for each persona.\n\nUX personas have a wide range of applications: use them to better define your target users during product development, align your team around user goals during workshops, or inspire new features and ideas by deeply understanding user needs and behaviors.\n\n## How It Works\n- The flow is triggered via a web form\n- Perplexity analyzes the market and creates a data foundation for the personas\n- An AI agent transforms the data into detailed persona descriptions and publishes them in a Google Doc\n- We use DALL·E 3 to generate an image for each persona, which is saved to your Google Drive\n\n## How To Use\n- Import the package into your N8N interface\n- Set up the credentials in each node to access the necessary tools\n- Wait for the process to run (it takes just a few seconds)\n- Check the final output in Google Docs and your Google Drive\n\n## Requirements\n- Perplexity for research\n- OpenAI for LLM and Image generation\n- Google Doc\n- Google Drive to upload images\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "79fc67ed-7b0b-4f78-9704-20c4b1db0176",
      "name": "프롬프트를 JSON 배열로 파싱",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        3552,
        496
      ],
      "parameters": {
        "jsonSchemaExample": "[\n  {\n    \"prompt\": \"...\"\n  },\n  {\n    \"prompt\": \"...\"\n  },\n  {\n    \"prompt\": \"...\"\n  }\n]"
      },
      "typeVersion": 1.2
    },
    {
      "id": "be5b036d-bcc2-41ba-b697-4aebc8198dd4",
      "name": "🔍 리서치",
      "type": "n8n-nodes-base.perplexity",
      "position": [
        2592,
        112
      ],
      "parameters": {
        "model": "sonar-deep-research",
        "options": {},
        "messages": {
          "message": [
            {
              "content": "=You are a user experience researcher and a Perplexity (research) prompt agent. Your task is to generate a UX personas for each segment based on credible market research and statistics. Use the following structured scope to guide your research and findings. Your output should be data-informed and well-cited with links to relevant sources.\n\n{{ $json['Website url'] }}{{ $json.Region }}{{ $json.Inductry }}\n⸻\n\n1. Business Overview\n\nProvide a brief summary of the business based on its website, industry, and regional context. Include an overview of all user segments relevant to the product/service. For each segment, provide:\n\t•\tSegment name\n\t•\tBrief description\n\t•\tEstimated size\nQuantify the potential market this segment represents. Include data such as:\n\t•\tTAM (Total Addressable Market)\n\t•\tCAGR (Compound Annual Growth Rate)\n\t•\tNumber of companies or professionals\n\t•\tRegional breakdown (if relevant)\n\nReference links:\n\t•\t[URL]\n\t•\t[URL]\n\n⸻\n\n2. Persona Descriptions\n\nDevelop a detailed persona profile for each user segment identified in the business overview. Use the following structure:\n\nA. Identify and describe a distinct user segment relevant to the query, grounded in market data. Include:\n\t•\tDemographic details (age, gender, location, income level)\n\t•\tPsychographics (lifestyle, behavior, interests)\n\t•\tJob roles or consumer type (if relevant)\n\nReference links:\n\t•\t[URL]\n\t•\t[URL]\n\n\n⸻\n\nB. Market Size\n\nEstimate the size of the target user group, including:\n\t•\tNumber of potential users/customers\n\t•\tGrowth rate (if available)\n\t•\tRelevant geographic distribution\n\nReference links:\n\t•\t[URL]\n\t•\t[URL]\n\n\n⸻\n\nC. User Needs\n\nList the primary needs or goals of this persona in relation to the product or service described in the query. Back your findings with:\n\t•\tBehavioral data\n\t•\tIndustry reports or surveys\n\t•\tRelevant UX research or trend reports\n\nReference links:\n\t•\t[URL]\n\t•\t[URL]\n\n\n⸻\n\nD. Pain Points\n\nDescribe key frustrations, obstacles, or unmet needs of the user segment. Support with:\n\t•\tUser feedback data\n\t•\tCustomer reviews or complaint summaries\n\t•\tResearch studies on the user experience\n\nReference links:\n\t•\t[URL]\n\t•\t[URL]\n\n\n⸻\n\nE. Usage Story\n\nWrite a concise story showing how this persona would interact with the product or service in a real-life scenario. The story should demonstrate:\n\t•\tMotivation to use\n\t•\tUsage context\n\t•\tKey touchpoints and emotional moments\n\t•\tOutcome\n\nReference links include to the output:\n\t•\t[URL]\n\t•\t[URL]\n\n"
            }
          ]
        },
        "requestOptions": {}
      },
      "credentials": {
        "perplexityApi": {
          "id": "nxgDKDrFRajW3rls",
          "name": "Perplexity account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "779f98ee-2f84-42ea-a8a9-06cec6724a4e",
      "name": "페르소나 설명",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        2864,
        112
      ],
      "parameters": {
        "text": "={{ $json.choices[0].message.content }}{{ $json.citations }}{{ $json.search_results }}",
        "options": {
          "systemMessage": "You are a helpful formatter assistant, you will receive a copy, your job is to format it.\n\nGoal:\nDevelop full personas descriptions tailored to different user groups. The personas will be used in a business case to illustrate target users, validate product–market fit, and guide go-to-market strategy.\n\n⸻\n\n📄 Output Format\n\n⸻\n\nPersona 1: [Name and Segment Title]\n\n⸻\n\n1. User Segment\n\nBrief overview of this group. Describe who they are (e.g., role, industry), what they do, and why they are relevant to the product or market.\nReference links:\n\t•\t[Include the full url of Source ] \n⸻\n\n2. Market Size\n\nQuantify the potential market this persona represents. Include data such as:\n\t•\tTAM (Total Addressable Market)\n\t•\tCAGR (Compound Annual Growth Rate)\n\t•\tNumber of companies or professionals\n\t•\tRegional breakdown (if relevant)\n\nReference links:\n\t•\t[Include the full url of Source]\n\t\n⸻\n\n3. User Needs\n\nWhat problems or goals does this persona need the product to solve or support?\n\nReference links:\n\t•\t[Include the full url of Source]\n\t\n⸻\n\n4. Pain Points\n\nDescribe typical challenges or friction this persona experiences.\n\nReference links:\n\t•\t[Include the full url of Source]\n\t\n\n⸻\n\n5. Usage Story\n\nA realistic story showing how this persona uses the product to solve problems or achieve goals.\n\n“As a [job title], I use the product to [action], which helps me [benefit].”\n\n– Format headings using Markdown‑style (e.g., `## Executive Summary`) so the Google Doc node will render them as section titles.  \n- Copy Reference links section\n"
        },
        "promptType": "define"
      },
      "typeVersion": 2
    },
    {
      "id": "2d6627be-3236-430f-95e9-604acd66a36f",
      "name": "이미지 생성용 프롬프트 생성",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        3360,
        288
      ],
      "parameters": {
        "text": "=",
        "options": {
          "systemMessage": "={{ $json.output }}\nCreate from this input a prompt for Image Generation for each persona based on  Usage Story section.\n\n\nRequirements:\n400x400 pixel square, with no props or text, name the file using Persona title. One image for each Persona\n\nPlease return **only** a JSON array of objects, each with a single property `\"prompt\"` containing the image prompt. Example output structure:\n[\n  {\n    \"prompt\"...\"\n  },\n  {\n    \"prompt\": \"...\"\n  },\n  {\n    \"prompt\": \"...\"\n  }\n]"
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 1.7
    },
    {
      "id": "b3652274-f800-4bdc-8807-124b60cafb20",
      "name": "이미지 생성",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        4016,
        288
      ],
      "parameters": {
        "prompt": "={{ $json.prompt }}",
        "options": {},
        "resource": "image"
      },
      "credentials": {
        "openAiApi": {
          "id": "c0zo07KHkFyAOwYy",
          "name": "OpenAi account 2"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "b727493c-53ac-40b5-b2e4-dcd525f87232",
      "name": "이미지 업로드",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        4224,
        288
      ],
      "parameters": {
        "name": "={{ $now.format(\"yyyyMMddHHmmSSS\") }}",
        "driveId": {
          "__rl": true,
          "mode": "list",
          "value": "My Drive"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "list",
          "value": "1kv3Yo3cKK6Vsd2sBQYUN2RsBL4E1KOW8",
          "cachedResultUrl": "https://drive.google.com/drive/folders/1kv3Yo3cKK6Vsd2sBQYUN2RsBL4E1KOW8",
          "cachedResultName": "n8n"
        },
        "inputDataFieldName": "=data"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "9mzZMaQ4UW0z9Q5T",
          "name": "Google Drive account 2"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "37946092-3323-4cd8-8472-5f4ab94a17f3",
      "name": "스티커 노트",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2496,
        16
      ],
      "parameters": {
        "color": 5,
        "width": 312,
        "height": 376,
        "content": "Research on user segments and their market size"
      },
      "typeVersion": 1
    },
    {
      "id": "cba606d5-aa81-456e-aded-fb7c87537f60",
      "name": "스티커 노트2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2832,
        16
      ],
      "parameters": {
        "color": 4,
        "width": 328,
        "height": 440,
        "content": "Persona description creation"
      },
      "typeVersion": 1
    },
    {
      "id": "442d43ce-ec95-4de9-aa77-c46fa82b8ba9",
      "name": "스티커 노트3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3312,
        240
      ],
      "parameters": {
        "color": 7,
        "width": 360,
        "height": 456,
        "content": "Create a prompt for generating an image for each persona"
      },
      "typeVersion": 1
    },
    {
      "id": "19c19e43-c318-4978-856c-aafb98e6261a",
      "name": "스티커 노트4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3952,
        240
      ],
      "parameters": {
        "color": 6,
        "width": 472,
        "height": 456,
        "content": "Generate images and upload to Google Drive"
      },
      "typeVersion": 1
    },
    {
      "id": "4b0eac98-81ee-4b60-90a0-be6d35c01313",
      "name": "GPT-4o",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        3360,
        480
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "c0zo07KHkFyAOwYy",
          "name": "OpenAi account 2"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "1b7144ac-6147-4f24-a02e-9c491176ae01",
      "name": "프롬프트 분할",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        3776,
        288
      ],
      "parameters": {
        "options": {
          "includeBinary": true
        },
        "fieldToSplitOut": "output"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "472470fe-db1d-4fab-9751-e89d980f4e4c",
  "connections": {
    "4b0eac98-81ee-4b60-90a0-be6d35c01313": {
      "ai_languageModel": [
        [
          {
            "node": "2d6627be-3236-430f-95e9-604acd66a36f",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "1b7144ac-6147-4f24-a02e-9c491176ae01": {
      "main": [
        [
          {
            "node": "b3652274-f800-4bdc-8807-124b60cafb20",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b727493c-53ac-40b5-b2e4-dcd525f87232": {
      "main": [
        []
      ]
    },
    "be5b036d-bcc2-41ba-b697-4aebc8198dd4": {
      "main": [
        [
          {
            "node": "779f98ee-2f84-42ea-a8a9-06cec6724a4e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b3652274-f800-4bdc-8807-124b60cafb20": {
      "main": [
        [
          {
            "node": "b727493c-53ac-40b5-b2e4-dcd525f87232",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2e4e8c52-e702-406d-bace-740ab2df1a6e": {
      "ai_languageModel": [
        [
          {
            "node": "779f98ee-2f84-42ea-a8a9-06cec6724a4e",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "13cb8a59-e5de-49dc-9d2f-a14c2f7fd12c": {
      "main": [
        [
          {
            "node": "be5b036d-bcc2-41ba-b697-4aebc8198dd4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "779f98ee-2f84-42ea-a8a9-06cec6724a4e": {
      "main": [
        [
          {
            "node": "edb2152e-a8fd-415a-921d-13d7bb952b48",
            "type": "main",
            "index": 0
          },
          {
            "node": "2d6627be-3236-430f-95e9-604acd66a36f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2d6627be-3236-430f-95e9-604acd66a36f": {
      "main": [
        [
          {
            "node": "1b7144ac-6147-4f24-a02e-9c491176ae01",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "79fc67ed-7b0b-4f78-9704-20c4b1db0176": {
      "ai_outputParser": [
        [
          {
            "node": "2d6627be-3236-430f-95e9-604acd66a36f",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    }
  }
}
자주 묻는 질문

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

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

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

고급 - 시장 조사, 멀티모달 AI

유료인가요?

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

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

고급 사용자를 위한 16+개 노드의 복잡한 워크플로우

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34