Perplexity와 OpenAI를 사용하여 소셜 미디어에 AI 뉴스 비디오 콘텐츠 아이디어를 생성
이것은Content Creation, Multimodal AI분야의자동화 워크플로우로, 18개의 노드를 포함합니다.주로 Set, Code, Gmail, Merge, HttpRequest 등의 노드를 사용하며. Perplexity와 OpenAI를 사용하여 소셜 미디어에 AI 뉴스 비디오 내용을 창의적으로 생성
- •Google 계정 및 Gmail API 인증 정보
- •대상 API의 인증 정보가 필요할 수 있음
- •Google Sheets API 인증 정보
- •OpenAI API Key
{
"meta": {
"instanceId": "28099d2544433ae0f39c65315a4d4c531947fcb0f060a94d6047d7be5df31063",
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "ba46fd37-7223-4bf4-9ee2-48d25c415f09",
"name": "일정 트리거",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
1140,
480
],
"parameters": {
"rule": {
"interval": [
{
"triggerAtHour": 6
}
]
}
},
"typeVersion": 1.2
},
{
"id": "18aac787-d988-4505-876d-72dc2c5e8056",
"name": "병합",
"type": "n8n-nodes-base.merge",
"position": [
1780,
500
],
"parameters": {
"numberInputs": 3
},
"typeVersion": 3.1
},
{
"id": "233798de-74b0-42bb-83ef-2151fbce1f8b",
"name": "항목 반복",
"type": "n8n-nodes-base.splitInBatches",
"position": [
1800,
840
],
"parameters": {
"options": {}
},
"typeVersion": 3
},
{
"id": "91253544-dba4-4055-ac8c-b5c0a0ac8077",
"name": "About me",
"type": "n8n-nodes-base.set",
"position": [
2100,
500
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "e1fa7dff-0850-4743-a503-85c234802478",
"name": "Name",
"type": "string",
"value": "John Doe"
},
{
"id": "a2452ec6-4130-4057-bd6f-26512fbc3dd9",
"name": "Niche",
"type": "string",
"value": "a tech founder"
},
{
"id": "89ec4977-fd00-432f-b71c-73ee2d2d89a0",
"name": "Business Name",
"type": "string",
"value": "John Doe AI"
},
{
"id": "2ff18a0a-45a8-45c2-9a99-0f051d294e61",
"name": "Busines Type",
"type": "string",
"value": "Marketing Agency"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "c152e25f-4f81-4277-a58f-c60933f2ffdd",
"name": "Content Generation",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
2260,
500
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "gpt-4.1-mini",
"cachedResultName": "GPT-4.1-MINI"
},
"options": {},
"messages": {
"values": [
{
"content": "=Your Role:\nYou are \"CreatorAI,\" an expert short-form video content strategist and scriptwriter specializing in AI.\n\nUser & Objectives:\nYour user is {{ $json.Name }}, a tech founder aiming to build authority and attract inbound interest for {{ $json['Business Name'] }}, their {{ $json['Busines Type'] }}. Content should educate, entertain, and establish {{ $json.Name }} as a thought leader, leading to client acquisition naturally.\n\n{{ $json.Name }}'s Desired Content Tone:\nExpert, Approachable & Connecting, Friendly & Conversational (like a 25-year-old peer), Concise & Smart (with dry humor), Value-Driven.\n\nInput Material:\nYou will receive relevant stories, news, or raw information under a \"[INPUT STORIES/NEWS]:\" heading (e.g., {{ $('Combine items').item.json.combinedContent }} and citations: {{ $('Combine items').item.json.combinedCitations }}). Use this for content generation.\n\nCore Task: Create Content Packages (Up to 10 per input batch)\nFor each input, generate a content package including a Video Script, Caption Text, and Text Overlay. All content must focus on tangible business benefits and solutions.\n\nUnique Angle: Identify a distinct, interesting angle or insight from the input.\n\nContent Pillars Alignment: Prioritize angles aligned with:\n\nAI news as a game-changer.\n\nAI automation solving business pain points (time, cost, efficiency).\n\nSpecific AI automation use cases/applications.\n\nAI agents/custom workflows transforming operations.\n\nFuture of work with AI.\n\nSales process automation benefits.\n\nQuick AI tool tips/productivity hacks.\n\nDebunking AI myths.\n\nBroader implications of AI for founders/professionals.\n\nReinforce: Every piece must address a business need or offer a clear, compelling advantage.\n\nOutput Requirements (Per Content Package):\n\nA. Video Script:\nStyle & Tone: First-person narration, expert sharing insights (not selling). Mention [{{ $json['Business Name'] }}] organically as a reference, not a direct pitch.\n\nEngagement: Powerful hook (first 3 seconds).\n\nMini-Narrative: Problem/event → generic AI solution/strategy → potential impact. DO NOT mention [{{ $json['Business Name'] }}] here.\n\nClarity: Single, clear takeaway. Simple language, no jargon unless clarified.\n\nShow, Don't Tell: Vivid language, concrete examples, micro-stories (struggle → AI turning point → positive outcome).\n\nHuman-Centric: Focus on impact on employees/founders.\n\nPacing & Conciseness: UNDER 700 CHARACTERS. Short, impactful sentences, natural line breaks.\n\nFormatting: NEVER use triple quotes (\"\"\").\n\nB. Caption Text:\nTone: Friendly, expert, funny, approachable.\n\nStructure: Engaging hook/question, more context/value than script.\n\nCall to Action (CTA): Clear, direct engagement. Ask for a specific keyword comment (e.g., \"Comment 'Workflow' for more\"). Add \"Follow for more.\"\n\nHashtags: 3-5 relevant, space-separated (e.g., #AIautomation #BusinessGrowth).\n\nC. Text Overlay:\nPurpose: Short, punchy core message (for thumbnail/first screen).\n\nFormat: Extremely concise (3-7 words), ALL CAPS or Title Case.\n\nContent: Intriguing hook, benefit, or core idea from video's angle.\n\nStrict Final Output Format (For EACH Package):\nAdhere precisely to this format. Do not add any extra formatting, explanations, or markdown around these lines:\n\nText Overlay: [YOUR GENERATED TEXT OVERLAY HERE]\nVideo Script: [YOUR GENERATED VIDEO SCRIPT HERE]\nCaption Text: [YOUR GENERATED CAPTION TEXT HERE]"
}
]
}
},
"credentials": {
"openAiApi": {
"id": "ZohahxqrnEz33IQQ",
"name": "OpenAi account 2"
}
},
"typeVersion": 1.8
},
{
"id": "15a10fc1-c346-4baf-aeb8-361ec819aa6d",
"name": "Topic 1 (eg-AI News)",
"type": "n8n-nodes-base.httpRequest",
"position": [
1340,
480
],
"parameters": {
"url": "https://api.perplexity.ai/chat/completions",
"method": "POST",
"options": {},
"jsonBody": "={\n \"model\": \"sonar-pro\",\n \"messages\": [\n {\n \"role\": \"system\",\n \"content\": \"Be precise and concise.\"\n },\n {\n \"role\": \"user\",\n \"content\": \"Find me 5 new, interesting, and relevant stories and news related to artificial intelligence from today or yesterday. Label them 1 through 5\"\n }\n ]\n}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer <YOUR_API_KEY>"
},
{
"name": "Content-Type",
"value": "application/json"
}
]
}
},
"typeVersion": 4.1
},
{
"id": "0f2cc14b-72d2-44ed-92e7-1c203caf6bc5",
"name": "Topic 2 (eg - AI Market Trends)",
"type": "n8n-nodes-base.httpRequest",
"position": [
1340,
680
],
"parameters": {
"url": "https://api.perplexity.ai/chat/completions",
"method": "POST",
"options": {},
"jsonBody": "={\n \"model\": \"sonar-pro\",\n \"messages\": [\n {\n \"role\": \"system\",\n \"content\": \"Be precise and concise.\"\n },\n {\n \"role\": \"user\",\n \"content\": \"Find me 5 new, interesting, and relevant stories and news related to market and industry trends in artificial intelligence from today or yesterday. Label them 1 through 5\"\n }\n ]\n}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer <YOUR_API_KEY>"
},
{
"name": "Content-Type",
"value": "application/json"
}
]
}
},
"typeVersion": 4.1
},
{
"id": "232d6065-7132-4e10-9b09-cee1a8238b8d",
"name": "Topic 3 (eg- AI Business Automation)",
"type": "n8n-nodes-base.httpRequest",
"position": [
1340,
880
],
"parameters": {
"url": "https://api.perplexity.ai/chat/completions",
"method": "POST",
"options": {},
"jsonBody": "={\n \"model\": \"sonar-pro\",\n \"messages\": [\n {\n \"role\": \"system\",\n \"content\": \"Be precise and concise.\"\n },\n {\n \"role\": \"user\",\n \"content\": \"Find me 5 new, interesting, and relevant stories related to automation of business using artificial intelligence from today or yesterday. Label them 1 through 5\"\n }\n ]\n}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer <YOUR_API_KEY>"
},
{
"name": "Content-Type",
"value": "application/json"
}
]
}
},
"typeVersion": 4.1
},
{
"id": "8b31dda9-a7a6-43c4-a00f-4322a17ac110",
"name": "Organise Content",
"type": "n8n-nodes-base.code",
"position": [
1540,
480
],
"parameters": {
"jsCode": "return items.map(item => {\n const choice = item.json.choices?.[0];\n const message = \n choice?.message?.content || \"No message content found\";\n const citations = \n item.json?.citations || [];\n\n return {\n json: {\n index: choice?.index ?? null,\n role: choice?.message?.role ?? null,\n finish_reason: \n choice?.finish_reason ?? null,\n content: message,\n citations: citations,\n },\n };\n});"
},
"typeVersion": 2
},
{
"id": "efcb202e-4fcc-40c0-93a9-5ae6ca3ccf12",
"name": "Organise Content1",
"type": "n8n-nodes-base.code",
"position": [
1540,
680
],
"parameters": {
"jsCode": "return items.map(item => {\n const choice = item.json.choices?.[0];\n const message = \n choice?.message?.content || \"No message content found\";\n const citations = \n item.json?.citations || [];\n\n return {\n json: {\n index: choice?.index ?? null,\n role: choice?.message?.role ?? null,\n finish_reason: \n choice?.finish_reason ?? null,\n content: message,\n citations: citations,\n },\n };\n});"
},
"typeVersion": 2
},
{
"id": "13edb6e8-878a-4fbd-893b-747f5f020b6a",
"name": "Organise Content2",
"type": "n8n-nodes-base.code",
"position": [
1540,
880
],
"parameters": {
"jsCode": "return items.map(item => {\n const choice = item.json.choices?.[0];\n const message = \n choice?.message?.content || \"No message content found\";\n const citations = \n item.json?.citations || [];\n\n return {\n json: {\n index: choice?.index ?? null,\n role: choice?.message?.role ?? null,\n finish_reason: \n choice?.finish_reason ?? null,\n content: message,\n citations: citations,\n },\n };\n});"
},
"typeVersion": 2
},
{
"id": "6bbdb827-729b-437c-a1b2-751fc391999b",
"name": "Combine items",
"type": "n8n-nodes-base.code",
"position": [
1940,
500
],
"parameters": {
"jsCode": "const combinedContent =\n items.map(item =>\n item.json.content).join('\\n\\n');\n\n// Flatten and dedupe citations\nconst combinedCitations = [\n ...new Set(\n items\n .flatMap(item =>\n item.json.citations || [])\n .filter(url => typeof url ===\n 'string' && url.startsWith('http'))\n )\n];\n\nreturn [{\n json: {\n combinedContent,\n combinedCitations\n }\n}];"
},
"typeVersion": 2
},
{
"id": "4417ab22-ab3b-4a68-93e5-9eab2ea7509a",
"name": "Extract Data",
"type": "n8n-nodes-base.code",
"position": [
1800,
680
],
"parameters": {
"jsCode": "const results = [];\n\nfor (const item of items) {\n // Ensure the input item has the expected structure and content\n if (!item.json || !item.json.message || typeof item.json.message.content !== 'string') {\n console.warn(\"Skipping item: Invalid structure or missing AI content.\", item);\n continue;\n }\n\n const aiResponse = item.json.message.content;\n\n // Skip placeholder messages if the AI didn't generate actual content\n if (aiResponse.includes(\"Please provide the collection of relevant stories\")) {\n console.log(\"Skipping instruction/placeholder message from AI.\");\n continue;\n }\n\n const lines = aiResponse.split('\\n');\n\n let currentPackage = {\n text_overlay_output: \"\",\n video_script_output: \"\",\n caption_text_output: \"\"\n };\n let currentSection = \"\"; // 'overlay', 'script', 'caption'\n\n for (const line of lines) {\n const trimmedLine = line.trim();\n\n // Skip empty lines unless they are part of a multi-line content (unlikely for this format)\n if (!trimmedLine && currentSection !== \"\") {\n // Allow empty lines within content if needed, but for strict format, they usually indicate a break\n // For this specific format, an empty line usually means end of a section if not followed by data\n continue;\n }\n\n if (trimmedLine.startsWith(\"Text Overlay:\")) {\n // If we've already collected data for a package, push it before starting a new one\n if (currentPackage.text_overlay_output || currentPackage.video_script_output || currentPackage.caption_text_output) {\n results.push({ json: { ...currentPackage } }); // Push a copy of the current package\n currentPackage = { // Reset for the new package\n text_overlay_output: \"\",\n video_script_output: \"\",\n caption_text_output: \"\"\n };\n }\n currentPackage.text_overlay_output = trimmedLine.substring(\"Text Overlay:\".length).trim();\n currentSection = \"overlay\";\n } else if (trimmedLine.startsWith(\"Video Script:\")) {\n currentPackage.video_script_output = trimmedLine.substring(\"Video Script:\".length).trim();\n currentSection = \"script\";\n } else if (trimmedLine.startsWith(\"Caption Text:\")) {\n currentPackage.caption_text_output = trimmedLine.substring(\"Caption Text:\".length).trim();\n currentSection = \"caption\";\n } else {\n // Append content to the current section if it's a continuation\n // Add a space or newline depending on desired handling of multi-line content.\n // Given the prompt's strict output, these are usually single lines.\n // Let's assume continuation means adding a space or newline.\n // For short-form content, it's safer to append with a space if it's not a new key.\n if (currentSection === \"video_script_output\") {\n currentPackage.video_script_output += (currentPackage.video_script_output ? \" \" : \"\") + trimmedLine;\n } else if (currentSection === \"caption_text_output\") {\n currentPackage.caption_text_output += (currentPackage.caption_text_output ? \"\\\\n\" : \"\") + trimmedLine; // Captions might have line breaks for hashtags etc.\n }\n // No need to append to text_overlay_output as it's typically a single, short line.\n }\n }\n\n // After the loop, push the last collected package\n if (currentPackage.text_overlay_output || currentPackage.video_script_output || currentPackage.caption_text_output) {\n // Final check for triple quotes in the last script\n if (currentPackage.video_script_output) {\n currentPackage.video_script_output = currentPackage.video_script_output.replace(/\\\"\\\"\\\"/g, \"'''\");\n }\n results.push({ json: { ...currentPackage } });\n }\n}\n\nreturn results;"
},
"typeVersion": 2
},
{
"id": "508e2c05-b2db-4b01-a131-98b10cfff657",
"name": "Save Data",
"type": "n8n-nodes-base.googleSheets",
"position": [
2120,
860
],
"parameters": {
"columns": {
"value": {
"Caption": "={{ $json.caption_text_output }}",
"Text Overlay": "={{ $json.text_overlay_output }}",
"Video Script": "={{ $json.video_script_output }}"
},
"schema": [
{
"id": "Text Overlay",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Text Overlay",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Video Script",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Video Script",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Caption",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Caption",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Approval",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Approval",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Published",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Published",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 285661820,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1elN8QyRUOSISUTfTNBCMRiVfS6NtW23Kh0ZS8y2P66o/edit#gid=285661820",
"cachedResultName": "Content Idea"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1PIb-YOYMKuVxFiGmpRgNvAMwVlG7nrG8gRiU2R1y6bk",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1PIb-YOYMKuVxFiGmpRgNvAMwVlG7nrG8gRiU2R1y6bk/edit?usp=drivesdk",
"cachedResultName": "Content "
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "NdBpgqV7UHdZ3CZc",
"name": "Google Sheets account"
}
},
"typeVersion": 4.6
},
{
"id": "4c4fb796-c957-4569-9666-a27e6a04207d",
"name": "메모",
"type": "n8n-nodes-base.stickyNote",
"position": [
1100,
400
],
"parameters": {
"width": 1480,
"height": 680,
"content": "# Content Gen"
},
"typeVersion": 1
},
{
"id": "a19169e7-ded8-4053-9a25-3b10220ad1cf",
"name": "Notify user",
"type": "n8n-nodes-base.gmail",
"position": [
2120,
700
],
"webhookId": "b095003a-0562-42b5-8fe0-ac2e1b5e38e0",
"parameters": {
"sendTo": "example@domain.com",
"message": "10 new articles are added in the google sheets.",
"options": {},
"subject": "Content Generated"
},
"credentials": {
"gmailOAuth2": {
"id": "Fd6oTce3HQiRi3dG",
"name": "electrabot.info@gmail.com"
}
},
"typeVersion": 2.1
},
{
"id": "6a7b6154-e1be-4fb2-8e61-1f4c2d2bbaef",
"name": "메모1",
"type": "n8n-nodes-base.stickyNote",
"position": [
740,
400
],
"parameters": {
"width": 360,
"height": 680,
"content": "## 1. Resources \n### Get your API keys by clicking on the links below.\n- ### [Perplexity](https://www.perplexity.ai/account/api/keys)\n- ### [Open AI](https://platform.openai.com/)\n### Copy this Google Sheet Template\n- ### [Template](https://docs.google.com/spreadsheets/d/1UcvTSCuKN_rXm6amblLyZ_Ogfk5tKuryYEBAlRoznpQ/edit?usp=sharing)\n## 2. Setup Guide\n- ### Add your Perplexity API key in all the topic nodes and update your niche as required.\n- ### Setup the Google Sheet and select it in the workflow.\n- ### Connect your Open AI credentials.\n- ### Update the infomation in the about me node.\n## Help\n- ### Read This [Detailed Setup Guide](https://drive.google.com/file/d/1XTDUf4iGE43d78duHkwS7fZuWieQh9un/view?usp=sharing) if need help\n- ### Reach out to us via [Email](mailto:info.gainflow@gmail.com) if need further assistance.\n- ### Find more real world use workflows by clicking [HERE](https://docs.google.com/document/d/1RACo90h-QwKA4hEZSlOQZsyw4iB5-43JM2l0s4lpuoY/edit?usp=sharing)\n"
},
"typeVersion": 1
},
{
"id": "5db8228f-3254-4ef0-8d42-32aa54aa2615",
"name": "메모2",
"type": "n8n-nodes-base.stickyNote",
"position": [
1300,
460
],
"parameters": {
"color": 3,
"width": 180,
"height": 600,
"content": "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"
},
"typeVersion": 1
}
],
"pinData": {},
"connections": {
"Merge": {
"main": [
[
{
"node": "6bbdb827-729b-437c-a1b2-751fc391999b",
"type": "main",
"index": 0
}
]
]
},
"91253544-dba4-4055-ac8c-b5c0a0ac8077": {
"main": [
[
{
"node": "c152e25f-4f81-4277-a58f-c60933f2ffdd",
"type": "main",
"index": 0
}
]
]
},
"508e2c05-b2db-4b01-a131-98b10cfff657": {
"main": [
[
{
"node": "Loop Over Items",
"type": "main",
"index": 0
}
]
]
},
"4417ab22-ab3b-4a68-93e5-9eab2ea7509a": {
"main": [
[
{
"node": "Loop Over Items",
"type": "main",
"index": 0
}
]
]
},
"6bbdb827-729b-437c-a1b2-751fc391999b": {
"main": [
[
{
"node": "91253544-dba4-4055-ac8c-b5c0a0ac8077",
"type": "main",
"index": 0
}
]
]
},
"Loop Over Items": {
"main": [
[
{
"node": "a19169e7-ded8-4053-9a25-3b10220ad1cf",
"type": "main",
"index": 0
}
],
[
{
"node": "508e2c05-b2db-4b01-a131-98b10cfff657",
"type": "main",
"index": 0
}
]
]
},
"8b31dda9-a7a6-43c4-a00f-4322a17ac110": {
"main": [
[
{
"node": "0f2cc14b-72d2-44ed-92e7-1c203caf6bc5",
"type": "main",
"index": 0
},
{
"node": "Merge",
"type": "main",
"index": 0
}
]
]
},
"Schedule Trigger": {
"main": [
[
{
"node": "15a10fc1-c346-4baf-aeb8-361ec819aa6d",
"type": "main",
"index": 0
}
]
]
},
"efcb202e-4fcc-40c0-93a9-5ae6ca3ccf12": {
"main": [
[
{
"node": "232d6065-7132-4e10-9b09-cee1a8238b8d",
"type": "main",
"index": 0
},
{
"node": "Merge",
"type": "main",
"index": 1
}
]
]
},
"13edb6e8-878a-4fbd-893b-747f5f020b6a": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 2
}
]
]
},
"c152e25f-4f81-4277-a58f-c60933f2ffdd": {
"main": [
[
{
"node": "4417ab22-ab3b-4a68-93e5-9eab2ea7509a",
"type": "main",
"index": 0
}
]
]
},
"15a10fc1-c346-4baf-aeb8-361ec819aa6d": {
"main": [
[
{
"node": "8b31dda9-a7a6-43c4-a00f-4322a17ac110",
"type": "main",
"index": 0
}
]
]
},
"0f2cc14b-72d2-44ed-92e7-1c203caf6bc5": {
"main": [
[
{
"node": "efcb202e-4fcc-40c0-93a9-5ae6ca3ccf12",
"type": "main",
"index": 0
}
]
]
},
"232d6065-7132-4e10-9b09-cee1a8238b8d": {
"main": [
[
{
"node": "13edb6e8-878a-4fbd-893b-747f5f020b6a",
"type": "main",
"index": 0
}
]
]
}
}
}이 워크플로우를 어떻게 사용하나요?
위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.
이 워크플로우는 어떤 시나리오에 적합한가요?
고급 - 콘텐츠 제작, 멀티모달 AI
유료인가요?
이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.
관련 워크플로우 추천
Gain FLow AI
@gain-flowGainFlow AI is your go-to AI automation agency, specializing in Python and no-code solutions to eliminate repetitive tasks for individuals and businesses. Free up your time and boost efficiency. For inquiries, Fill this form - https://docs.google.com/forms/d/e/1FAIpQLSfIiXdw4HMcI2HM-Obng13j_RFiKv7X-mjOVm_mcy2ucRA8EA/viewform or reach out to us at info.gainflow@gmail.com.
이 워크플로우 공유