PDF 문서 도우미 2.0
고급
이것은AI Summarization, Multimodal AI분야의자동화 워크플로우로, 18개의 노드를 포함합니다.주로 Code, Gmail, Webhook, GoogleSheets, Agent 등의 노드를 사용하며. GPT와 o4-mini를 사용하여 법률 문서 분석, Gmail 및 Google Sheets 통합
사전 요구사항
- •Google 계정 및 Gmail API 인증 정보
- •HTTP Webhook 엔드포인트(n8n이 자동으로 생성)
- •Google Sheets API 인증 정보
- •OpenAI API Key
사용된 노드 (18)
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
"id": "Xbp4biTknbF4qzQn",
"meta": {
"instanceId": "01315f1c846bfd70e3e2583db51235f2f99644f5668e2fe5a10753a63b05a8a7",
"templateCredsSetupCompleted": true
},
"name": "PDF Document Assistant 2.0",
"tags": [],
"nodes": [
{
"id": "cacbb1dc-cb5b-4d1f-b9ea-ce113a6e73f4",
"name": "파일에서 추출",
"type": "n8n-nodes-base.extractFromFile",
"position": [
-380,
340
],
"parameters": {
"options": {},
"operation": "pdf",
"binaryPropertyName": "=data"
},
"typeVersion": 1
},
{
"id": "5ac09271-d72b-43c4-95f1-101cf54d2397",
"name": "Webhook",
"type": "n8n-nodes-base.webhook",
"position": [
-660,
180
],
"webhookId": "b840eb14-cc32-4158-a31c-5ab47fb6b0e3",
"parameters": {
"path": "upload-pqx92oa",
"options": {},
"httpMethod": "POST",
"responseMode": "responseNode"
},
"typeVersion": 2
},
{
"id": "d93476b3-aafd-450e-8a75-06514af95530",
"name": "AI 에이전트",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
1000,
340
],
"parameters": {
"text": "=You are an advanced AI document review assistant embedded in an automated workflow. A user has submitted a PDF for structured review. Your role is to help the user fully understand the document by performing a detailed, insightful analysis and delivering a polished, professional response via email.\n\nYour output should reflect **expert-level comprehension**, not surface-level summaries. Aim for **depth, precision, and clarity** throughout. Treat each section of the document as if preparing a report for a legal, compliance, or business-critical audience.\n\nYou are provided with:\n- Name: {{ $json.name }}\n- Email: {{ $json.email }}\n- Extracted PDF Text: {{ $json.full_summary }}\n- Name of File in Subject Title:\n\nYour response must be:\n- Addressed directly to the user (by name)\n- Professionally written and ready for email delivery\n- Fully structured, richly formatted, and highly detailed\n\n---\n\n## 🔍 Your Tasks:\n\n### 1. Identify and Classify the Document Type\n\nBegin with a short section titled **“Document Type”**.\n\n- Analyze the content, language, and structure to determine the specific type of document, such as: \n **contract**, **employment agreement**, **project proposal**, **policy document**, **business plan**, **financial report**, **technical manual**, etc.\n \n- Do **not** simply say \"Legal\" or \"Non-legal.\" Instead, **state the actual document category** and its apparent purpose.\n\n- If it is a legal document, explicitly state: \n > “This appears to be a legal document: [type]” \n and proceed to the legal clause analysis.\n\n- If it is not a legal document, still identify and state the exact type and purpose clearly. Example: \n > “This appears to be a business strategy document focused on product launch planning.”\n\nBe confident but not speculative — only classify based on what’s clearly supported by the content.\n\n\n---\n\n### 2. Chapter-by-Chapter Summary and Deep Analysis\n\nReview the document **in structured order**, chapter by chapter, section by section (or by major headings if chapters are not explicitly labeled).\n\nFor each chapter or major section:\n\n- Begin with a bold heading in this format: \n > **Chapter 1: [Section Title]**\n\n- Provide a **thorough multi-paragraph analysis** covering:\n - The **main ideas or arguments** expressed\n - Any **supporting evidence, examples, or rationale**\n - The **intent or strategic purpose** behind the section\n - How the section contributes to or supports the overall goals of the document\n\n- Expand on:\n - Any **assumptions**, **biases**, or **limitations** in the content\n - Key **stakeholders** referenced or implied\n - What the section **means for the reader** or decision-maker\n\n- Highlight any:\n - 🟨 Inconsistencies or contradictions\n - ⚠️ Risks or red flags (if applicable)\n - 💡 Strategic or operational insights\n\nApproach each section as if you are writing a standalone **mini-report** — not a surface-level summary. Provide context, clarity, and insight. Be analytical, not just descriptive.\n\n---\n\n### 3. If Legal, Perform Legal-Specific Review\n\nIf the document is legal in nature, begin this section with:\n\n> _“This appears to be a legal document.”_\n\nThen conduct a structured legal analysis with the following breakdown:\n\n---\n\n- 🧾 **Key Clauses** \n Identify and briefly explain the most important clauses, grouped by category where applicable:\n - **Parties & Scope**\n - **Rights and Responsibilities**\n - **Payment Terms**\n - **Termination & Exit Clauses**\n - **Liability & Indemnity**\n - **Confidentiality / IP Ownership**\n - Any other key legal mechanisms\n\n---\n\n- 🚩 **Red Flags or Areas of Concern** \n List any elements that could introduce risk, confusion, or legal exposure, such as:\n - Ambiguous or undefined terms\n - One-sided obligations or power imbalance\n - Vague or missing exit terms\n - Loopholes or conflicting provisions\n - Unusual penalty structures\n\n---\n\n- 🧠 **Inferred Conclusions** \n Based on the document’s tone, structure, and content:\n - What is the **true strategic purpose** or intent behind the document?\n - What risks, responsibilities, or long-term obligations are implied — even if not explicitly stated?\n - What **assumptions** does the document appear to make?\n - Is the document **balanced**, or does it favor one party? \n - If imbalanced, explain **how** and **in whose favor** (e.g., language favoring employer, vendor, landlord, etc.)\n - Does the document reflect a **standard template**, or something tailored and possibly aggressive?\n\nConclude this section with a brief opinion: \n> “Overall, this document appears [balanced/imbalanced], leaning in favor of [Party A/Party B], with [low/moderate/high] legal risk exposure based on the language and structure.”\n\n---\n\n### 4. If Not Legal, Provide Business/Contextual Insights\n\nIf the document is not legal in nature, continue with a detailed, chapter-by-chapter analysis.\n\nAlso extract and summarize the following:\n\n- 📌 **Actionable Insights** \n Identify any suggestions, decisions, or next steps the reader or organization should consider.\n\n- 📊 **Themes, Trends, or Conclusions** \n Highlight key messages, repeated patterns, overall direction, or stated conclusions.\n\n- 🔍 **Strategic Implications** \n What does the document imply about the organization’s goals, priorities, risks, or competitive position?\n\n- 🧱 **Operational Notes** \n Extract any timelines, deliverables, roles/responsibilities, or execution plans.\n\n- 💡 **Assumptions or Unspoken Context** \n Point out any implicit assumptions, missing data, or background context the reader should be aware of.\n\n- ❓ **Questions or Ambiguities** \n Identify unclear sections, vague terms, or places where clarification may be needed.\n\nThe goal is to help the user **understand not just what the document says, but what it means and why it matters.**\n\n---\n\n### 5. **Finish with a Professional Closing Message**\n- Thank the user by name\n- Inform them this analysis is automatically generated\n- Encourage follow-up review if the document is critical or sensitive\n\n---\n\n## 🧾 Tone & Format Guidelines:\n- Professional, helpful, and articulate\n- Use section headers, bullet points, and bold formatting to structure your output\n- Avoid legal speculation outside the text’s content\n- Write as though this is being sent to a C-suite executive, legal advisor, or stakeholder\n\n---\n\n## 📬 Final Output Format:\nOutput **only the email-style response** to the user. Do not include prompts, commentary, or instruction headers. Begin directly with content. Your structure should include the following:\n\n- **Document Type**\n- **Chapter-by-Chapter Summary**\n- **Key Clauses** (if legal)\n- **Red Flags / Observations**\n- **Inferred Conclusions**\n- **Recommendations / Next Steps**\n- **Professional Closing**\n- **Disclaimer**\n\n---\n\n### ⚠️ Include this disclaimer at the bottom of the email:\n\n> _Disclaimer: This review has been automatically generated by an AI document assistant. It is intended to provide insight and aid understanding, but does not constitute legal or professional advice. For high-stakes or binding decisions, we strongly recommend consulting with a qualified professional._\n\n\nNow begin your response.\n\n \n\n“You are responding via an HTML email using the Gmail node in n8n. Format all output in clean, professional HTML using:\n\n<strong> for bold.</strong>\"\n\n##this is an exact sample to use below##:\n\n<p>Dear {{ $json.name }},</p>\n\n<p>Thank you for submitting your document for analysis. Below is a detailed, AI-generated review based on the contents provided.</p>\n\n<p><strong>📘 Document Type:\n[Clearly state only what kind of document, e.g., contract, policy, NDA, report, etc.]\n</p>\n\n<p><strong>🧾 Chapter-by-Chapter Summary:</strong></p>\n<ul>\n <li><strong>Chapter 1: [Title]</strong><br>\n [Detailed explanation of this chapter’s contents, its intent, key ideas, implications, and how it fits the overall document.]</li>\n <li><strong>Chapter 2: [Title]</strong><br>\n [Continue same structure with depth, clarity, and professional interpretation.]</li>\n <!-- Add more chapters as needed -->\n</ul>\n\n<p><strong>📑 Key Clauses Identified:</strong></p>\n<ul>\n <li><strong>Confidentiality:</strong> [Summarize how confidential information is defined and protected]</li>\n <li><strong>Termination:</strong> [Conditions under which the agreement can be ended]</li>\n <li><strong>Liability:</strong> [Limits of responsibility and potential exposures]</li>\n <!-- Add more if relevant -->\n</ul>\n\n<p><strong>🚩 Red Flags or Areas of Concern:</strong></p>\n<ul>\n <li>[Example: Unilateral termination clauses that may favor one party disproportionately]</li>\n <li>[Example: Vague definitions that could create legal loopholes]</li>\n</ul>\n\n<p><strong>🧠 Inferred Conclusions:</strong></p>\n<ul>\n <li>This document is structured to legally formalize [insert purpose, e.g., a service relationship, IP transfer, etc.]</li>\n <li>Language suggests [potential drafting bias / strategic intent]</li>\n <li>The agreement may pose [insert type of risk: financial, legal, operational] due to [insert reasoning]</li>\n</ul>\n\n<p><strong>✅ Recommendations:</strong></p>\n<ul>\n <li>Consider having a legal expert review clauses marked as high-risk</li>\n <li>Seek clarification on any undefined or ambiguous terms before signing</li>\n <li>Ensure all business-critical terms (IP, termination, liability) align with your goals</li>\n</ul>\n\n<p>Best regards,<br>\n<strong>Swot AI - Your Smart PDF Assistant</strong></p>\n<p></p>\n<p style=\"margin-top: 1.5rem;\">\n <a href=\"mailto:swot.ai25@gmail.com\" style=\"background: #cb1b2c; color: white; padding: 0.6rem 1rem; text-decoration: none; border-radius: 6px; font-weight: bold;\">\n 💬 Want to leave a quick comment?\n </a>\n</p>\n\n<p></p>\n<p></p>\n\n<p style=\"font-size: 0.8rem; color: #555; line-height: 1.4; margin-top: 2rem;\">\n<em><strong>Disclaimer:</strong> This review was automatically generated by an AI document assistant. It is intended to provide insights and aid understanding but does not constitute legal or professional advice. For critical decisions or binding interpretations, we strongly recommend consulting with a qualified legal or subject matter expert.</em></p>\n",
"options": {},
"promptType": "define"
},
"typeVersion": 2
},
{
"id": "5704b0f7-6f96-44b9-b804-b8d42043f0dd",
"name": "OpenAI 채팅 모델",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
1100,
620
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "o4-mini-2025-04-16",
"cachedResultName": "o4-mini-2025-04-16"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "fUHNT1hC50OnGEAO",
"name": "OpenAi account 2"
}
},
"typeVersion": 1.2
},
{
"id": "6eb4a414-e654-43ae-8193-e4935db5e5ba",
"name": "Gmail1",
"type": "n8n-nodes-base.gmail",
"position": [
1460,
340
],
"webhookId": "9c995f46-1437-46a3-a156-9d08665a3010",
"parameters": {
"sendTo": "={{ $('Code1').item.json.email }}",
"message": "={{ $json.output }}",
"options": {
"senderName": "Swot AI",
"appendAttribution": false
},
"subject": "=Summary of your attached Document- {{ $('Code1').item.json.title }}"
},
"credentials": {
"gmailOAuth2": {
"id": "iy7pzUaLse5xLXbV",
"name": "Gmail account 3"
}
},
"typeVersion": 2.1
},
{
"id": "d0541618-d148-4f89-9dd1-9576fe6102d0",
"name": "코드",
"type": "n8n-nodes-base.code",
"position": [
-140,
340
],
"parameters": {
"jsCode": "const chunkSize = 4000; // characters per chunk\n\nconst text = $input.first().json.text ?? \"\";\nconst name = $(\"Webhook\").first().json.body.name;\nconst email = $(\"Webhook\").first().json.body.email;\nconst title = $input.first().json.info.Title;\n\nconst chunks = [];\n\nfor (let i = 0; i < text.length; i += chunkSize) {\n chunks.push({\n chunk: text.slice(i, i + chunkSize),\n chunkIndex: i / chunkSize + 1,\n name,\n email,\n title,\n });\n}\n\nreturn chunks.map((c) => ({ json: c }));\n"
},
"typeVersion": 2
},
{
"id": "64daaffc-b164-4812-8581-af0122001500",
"name": "OpenAI 채팅 모델1",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
260,
580
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-3.5-turbo",
"cachedResultName": "gpt-3.5-turbo"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "fUHNT1hC50OnGEAO",
"name": "OpenAi account 2"
}
},
"typeVersion": 1.2
},
{
"id": "59619b79-7428-4dea-9e3c-e13648f30064",
"name": "기본 LLM 체인",
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"position": [
200,
340
],
"parameters": {
"text": "=Summarize the following section of a document. Retain legal terms, obligations, or business meaning.\n\n{{ $json.chunk }}\n",
"batching": {},
"promptType": "define"
},
"typeVersion": 1.7
},
{
"id": "3f2ec94f-7b26-4088-98db-f15a737b9c86",
"name": "코드1",
"type": "n8n-nodes-base.code",
"position": [
660,
340
],
"parameters": {
"jsCode": "const summaries = items.map(item => item.json.text || item.json.output || item.json.chunk || \"\");\n\nreturn [{\n json: {\n full_summary: summaries.join(\"\\n\\n\"),\n name: $('Code').first().json.name,\n email: $('Code').first().json.email,\n title: $('Code').first().json.title\n }\n}];\n"
},
"typeVersion": 2
},
{
"id": "1c4a2473-afaa-4e9b-844e-847eaa4f89ae",
"name": "Webhook에 응답",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
-280,
-60
],
"parameters": {
"options": {
"responseCode": 302,
"responseHeaders": {
"entries": [
{
"name": "Content-Type",
"value": "text/html"
}
]
}
},
"redirectURL": "https://swot-ai25.github.io/pdf-document-assistant/success.html",
"respondWith": "redirect"
},
"typeVersion": 1.3
},
{
"id": "a970c4d6-36f2-4387-93d3-1d52de3dcd2d",
"name": "Google Sheets",
"type": "n8n-nodes-base.googleSheets",
"position": [
1880,
340
],
"parameters": {
"columns": {
"value": {
"Date": "={{ $now.toFormat('dd-LL-yyyy') }}",
"Time": "={{ $now.toFormat('HH:mm') }}",
"Name ": "={{ $('Code1').item.json.name }}",
"Email ": "={{ $('Code1').item.json.email }}",
"Status": "={{ $json.labelIds[0] }}",
"Filename": "={{ $('Code1').item.json.title }}"
},
"schema": [
{
"id": "Date",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Date",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Time",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Time",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Name ",
"type": "string",
"display": true,
"required": false,
"displayName": "Name ",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Email ",
"type": "string",
"display": true,
"required": false,
"displayName": "Email ",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Filename",
"type": "string",
"display": true,
"required": false,
"displayName": "Filename",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Status",
"type": "string",
"display": true,
"required": false,
"displayName": "Status",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Size",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "Size",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Number of Pages",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "Number of Pages",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "id",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "id",
"defaultMatch": true,
"canBeUsedToMatch": true
},
{
"id": "threadId",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "threadId",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "labelIds",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "labelIds",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"id"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/16eDhxjB3ZEpb9-zWaBxAX0z4xhsb-aQfTWqeGvQaNI0/edit#gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "16eDhxjB3ZEpb9-zWaBxAX0z4xhsb-aQfTWqeGvQaNI0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/16eDhxjB3ZEpb9-zWaBxAX0z4xhsb-aQfTWqeGvQaNI0/edit?usp=drivesdk",
"cachedResultName": "SwotAI_Users"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "3xlliaCfqO7W8sCV",
"name": "Google Sheets account"
}
},
"typeVersion": 4.6
},
{
"id": "7a523ce5-cb91-401d-93b4-aa62fec739d3",
"name": "스티커 노트1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-760,
0
],
"parameters": {
"height": 380,
"content": "## Entry point — \n**receives uploaded PDF via POST request.** "
},
"typeVersion": 1
},
{
"id": "e3b6121a-45bb-44ae-9169-0dd4126ad675",
"name": "스티커 노트2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-240,
200
],
"parameters": {
"width": 320,
"height": 320,
"content": "## 🟨 Code (pre-processing)\n**Clean/format the extracted text (remove line breaks, non-text content, etc.)**"
},
"typeVersion": 1
},
{
"id": "3f9a3e21-7d9a-48d3-b66a-c0f83159c0bb",
"name": "스티커 노트",
"type": "n8n-nodes-base.stickyNote",
"position": [
600,
60
],
"parameters": {
"height": 560,
"content": "## 🟨 AI Agent\n****📌 Central intelligence. Handles prompts, memory, and reasoning.\n\n📌 Uses OpenAI Chat Model for deeper analysis.\n\n📌 Configurable to extract clauses, answer questions, or generate insights.** to edit me."
},
"typeVersion": 1
},
{
"id": "424540ff-40d1-4c75-9b84-35d5c5366e3e",
"name": "스티커 노트3",
"type": "n8n-nodes-base.stickyNote",
"position": [
180,
140
],
"parameters": {
"width": 300,
"height": 640,
"content": "## 🟨 Basic LLM Chain \n* First AI pass: summarization / restructuring of document content.*\n\n Connected to OpenAI Chat Model1 for text understanding.**"
},
"typeVersion": 1
},
{
"id": "2d1e46b9-f72a-40f7-87f5-1a3aaacd3db0",
"name": "스티커 노트4",
"type": "n8n-nodes-base.stickyNote",
"position": [
920,
60
],
"parameters": {
"width": 380,
"height": 700,
"content": "##🟨 AI Agent\n\n**📌 Central intelligence. Handles prompts, memory, and reasoning.\n📌 Uses OpenAI Chat Model for deeper analysis.\n📌 Configurable to extract clauses, answer questions, or generate insights.** to edit me.\n"
},
"typeVersion": 1
},
{
"id": "62d5aae6-e7d0-41a6-98a1-0eb95aa89ac9",
"name": "스티커 노트5",
"type": "n8n-nodes-base.stickyNote",
"position": [
-400,
-240
],
"parameters": {
"width": 400,
"height": 340,
"content": "## 🟨 Respond to Webhook\n\n**📌 Sends immediate acknowledgment back to the client after upload.** to edit me."
},
"typeVersion": 1
},
{
"id": "8643df4f-0146-4aac-9177-be2a69b370ed",
"name": "스티커 노트6",
"type": "n8n-nodes-base.stickyNote",
"position": [
1360,
120
],
"parameters": {
"width": 360,
"height": 460,
"content": "## 🟨 Gmail\n\n**📌 Sends formatted results to the user (summary, clauses, flagged risks, etc.).\n"
},
"typeVersion": 1
}
],
"active": true,
"pinData": {},
"settings": {
"callerPolicy": "workflowsFromSameOwner",
"executionOrder": "v1"
},
"versionId": "9a8282dd-88c0-4535-8427-662d9c25118e",
"connections": {
"d0541618-d148-4f89-9dd1-9576fe6102d0": {
"main": [
[
{
"node": "59619b79-7428-4dea-9e3c-e13648f30064",
"type": "main",
"index": 0
}
]
]
},
"3f2ec94f-7b26-4088-98db-f15a737b9c86": {
"main": [
[
{
"node": "d93476b3-aafd-450e-8a75-06514af95530",
"type": "main",
"index": 0
}
]
]
},
"6eb4a414-e654-43ae-8193-e4935db5e5ba": {
"main": [
[
{
"node": "a970c4d6-36f2-4387-93d3-1d52de3dcd2d",
"type": "main",
"index": 0
}
]
]
},
"5ac09271-d72b-43c4-95f1-101cf54d2397": {
"main": [
[
{
"node": "cacbb1dc-cb5b-4d1f-b9ea-ce113a6e73f4",
"type": "main",
"index": 0
},
{
"node": "1c4a2473-afaa-4e9b-844e-847eaa4f89ae",
"type": "main",
"index": 0
}
]
]
},
"d93476b3-aafd-450e-8a75-06514af95530": {
"main": [
[
{
"node": "6eb4a414-e654-43ae-8193-e4935db5e5ba",
"type": "main",
"index": 0
}
]
]
},
"59619b79-7428-4dea-9e3c-e13648f30064": {
"main": [
[
{
"node": "3f2ec94f-7b26-4088-98db-f15a737b9c86",
"type": "main",
"index": 0
}
]
]
},
"cacbb1dc-cb5b-4d1f-b9ea-ce113a6e73f4": {
"main": [
[
{
"node": "d0541618-d148-4f89-9dd1-9576fe6102d0",
"type": "main",
"index": 0
}
]
]
},
"5704b0f7-6f96-44b9-b804-b8d42043f0dd": {
"ai_languageModel": [
[
{
"node": "d93476b3-aafd-450e-8a75-06514af95530",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"64daaffc-b164-4812-8581-af0122001500": {
"ai_languageModel": [
[
{
"node": "59619b79-7428-4dea-9e3c-e13648f30064",
"type": "ai_languageModel",
"index": 0
}
]
]
}
}
}자주 묻는 질문
이 워크플로우를 어떻게 사용하나요?
위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.
이 워크플로우는 어떤 시나리오에 적합한가요?
고급 - AI 요약, 멀티모달 AI
유료인가요?
이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.
관련 워크플로우 추천
경쟁사 콘텐츠 격차 분석기: 자동화된 웹사이트 주제 매핑
Gemini AI, Apify, Google Sheets를 사용한 경쟁사 콘텐츠 격차 분석
If
Set
Code
+
If
Set
Code
30 노드Mychel Garzon
기타
시각화 참조 라이브러리에서 n8n 노드를 탐색
可视化 참조 라이브러리에서 n8n 노드를 탐색
If
Ftp
Set
+
If
Ftp
Set
113 노드I versus AI
기타
AI 이력서 최적화기
Gemini 분석 및 이메일 보고서를 사용하여 이력서를 직업 설명에 매칭
Set
Code
Gmail
+
Set
Code
Gmail
18 노드Mychel Garzon
AI 요약
Slack 후보자 평가를 위한 AI 기반 챗봇 구축
AI 이력서 분석 및 후보자 평가: Slack과 Google 스프레드시트 통합
If
Code
Slack
+
If
Code
Slack
29 노드Trung Tran
AI 챗봇
여러 채용 사이트의 구직 활동 자동화
5개 채용 플랫폼 및 AI 이력서 생성기를 사용한 구직 및 지원 자동화
If
Set
Code
+
If
Set
Code
34 노드Gerald Denor
개인 생산성
09 - 잠재 리드 프로필 강화기
잠재 고객 정보 보강 및 개인화 아웃리치 자동화: HubSpot, Phantombuster 및 GPT
If
Set
Code
+
If
Set
Code
30 노드Avkash Kakdiya
리드 육성
워크플로우 정보
난이도
고급
노드 수18
카테고리2
노드 유형10
저자
Swot.AI
@swotaiAutomation consultant with over 5 years experience helping Individuals and teams to streamline their processes. Use my link to book an initial consultation for custom n8n work.
외부 링크
n8n.io에서 보기 →
이 워크플로우 공유