Dumpling AI와 GPT-4o를 사용한 YouTube 비디오에서 블로그 및 AI 이미지 자동 생성
중급
이것은Design, AI, Marketing분야의자동화 워크플로우로, 10개의 노드를 포함합니다.주로 Airtable, GoogleDrive, HttpRequest, ExtractFromFile, OpenAi 등의 노드를 사용하며인공지능 기술을 결합하여 스마트 자동화를 구현합니다. Dumpling AI와 GPT-4o로 YouTube 비디오에서 블로그 및 AI 이미지 자동 생성
사전 요구사항
- •Airtable API Key
- •Google Drive API 인증 정보
- •대상 API의 인증 정보가 필요할 수 있음
- •OpenAI API Key
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
"id": "kyDSmFJkvi8CYHh2",
"meta": {
"instanceId": "a1ae5c8dc6c65e674f9c3947d083abcc749ef2546dff9f4ff01de4d6a36ebfe6",
"templateCredsSetupCompleted": true
},
"name": "Auto-Generate Blog & AI Image from YouTube Videos with Dumpling AI & GPT-4o",
"tags": [],
"nodes": [
{
"id": "7847f8a8-a60e-4b2c-afa1-8d586cb42d5c",
"name": "새 YouTube 동영상에 대한 폴더 감시",
"type": "n8n-nodes-base.googleDriveTrigger",
"position": [
-2960,
-420
],
"parameters": {
"event": "fileCreated",
"options": {},
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
},
"triggerOn": "specificFolder",
"folderToWatch": {
"__rl": true,
"mode": "list",
"value": "",
"cachedResultUrl": "https://drive.google.com/drive/folders/1mde_V0ePcJEebVydygVKT7GDiABjj2A4",
"cachedResultName": "Youtube Videos"
}
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "B0Hulh0j065xznhI",
"name": "Google Drive account 2"
}
},
"typeVersion": 1
},
{
"id": "cee77d1b-a91a-4fae-b5ae-eac34a9b0a03",
"name": "동영상 파일 다운로드",
"type": "n8n-nodes-base.googleDrive",
"position": [
-2740,
-420
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "id",
"value": "={{ $json.id }}"
},
"options": {},
"operation": "download"
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "B0Hulh0j065xznhI",
"name": "Google Drive account 2"
}
},
"typeVersion": 3
},
{
"id": "7b5ae3f4-d89d-4506-985d-a4c2afc5c0f5",
"name": "다운로드한 동영상을 Base64로 변환",
"type": "n8n-nodes-base.extractFromFile",
"position": [
-2520,
-420
],
"parameters": {
"options": {},
"operation": "binaryToPropery"
},
"typeVersion": 1
},
{
"id": "e94c073a-e8e3-4b7e-9b86-21f7568b98cb",
"name": "Dumpling AI로 동영상 자막 생성 (전체 대본)",
"type": "n8n-nodes-base.httpRequest",
"position": [
-2300,
-420
],
"parameters": {
"url": "https://app.dumplingai.com/api/v1/extract-video",
"method": "POST",
"options": {},
"jsonBody": "={\n \"inputMethod\": \"base64\",\n \"video\": \"{{ $json.data }}\",\n \"prompt\": \"Please transcribe the entire audio content of this video. I need a clear, complete, and accurate transcript of everything that was said, without summarizing or skipping any part. Include all spoken words, even fillers or pauses like 'um' or 'uh', if present. Format the transcript in clean readable text, broken into paragraphs where appropriate.\",\n \"jsonMode\": \"false\"\n}\n",
"sendBody": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpBasicAuth": {
"id": "ZqOKe2AhRqsTlTR1",
"name": "n8n connections"
},
"httpHeaderAuth": {
"id": "RLFzAcGRepr5eXZB",
"name": "n8n"
}
},
"typeVersion": 4.2
},
{
"id": "29e09351-0d8e-40c4-8a41-d00bff9e93a4",
"name": "GPT-4o를 사용하여 블로그 및 이미지 프롬프트 생성",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
-2080,
-420
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "gpt-4o",
"cachedResultName": "GPT-4O"
},
"options": {},
"messages": {
"values": [
{
"role": "system",
"content": "=You are an experienced blog writer and creative AI assistant. Based on the transcript I will provide, generate:\n\nA blog post that summarizes and expands on the key message of the video in a clear, engaging, and human tone.\n\nAn image prompt for AI image generation that visually supports the content of the blog post.\n\nBlog Post Guidelines:\n\nThe blog post should be written in a natural and conversational tone.\n\nIt must start with a strong opening paragraph that hooks the reader.\n\nFollow with 2 to 4 short paragraphs that explain or expand on the main ideas in the transcript.\n\nEnd with a clear conclusion or takeaway that wraps up the message or encourages readers to take action.\n\nDo not use overly technical or robotic language. Keep it clear and useful for the average reader.\n\nImage Prompt Guidelines:\n\nCreate a short, descriptive image prompt that visually represents the core message of the blog.\n\nThe image prompt should be suitable for AI image generation models like \nFLUX.1-pro.\n\nIt should be visually specific, using descriptive words that reflect the theme and tone of the blog.\n\nReturn your response in this exact JSON format:\n\n{\n \"blog_post\": \"Your full blog content here\",\n \"image_prompt\": \"Your image generation prompt here\"\n}"
},
{
"content": "=Here is the transcript to work with:[{{ $json.results }} ] "
}
]
},
"jsonOutput": true
},
"credentials": {
"openAiApi": {
"id": "fdhWALG84tBLgSZT",
"name": "OpenAi account"
}
},
"typeVersion": 1.8
},
{
"id": "d68ab832-0c22-4ee7-8406-f1aba6911f70",
"name": "Dumpling AI로 블로그 프롬프트에서 시각 자료 생성",
"type": "n8n-nodes-base.httpRequest",
"position": [
-1700,
-420
],
"parameters": {
"url": "https://app.dumplingai.com/api/v1/generate-ai-image",
"method": "POST",
"options": {},
"jsonBody": "={\n \"model\": \"FLUX.1-pro\",\n \"input\": {\n \"prompt\": \"{{ $json.message.content.image_prompt }}\",\n \"width\": 1024,\n \"height\": 576,\n \"aspect_ratio\": \"16:9\"\n }\n}\n",
"sendBody": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpHeaderAuth": {
"id": "RLFzAcGRepr5eXZB",
"name": "n8n"
}
},
"typeVersion": 4.2
},
{
"id": "34b5a7a2-2cab-49a4-a905-dd6611de33f1",
"name": "블로그 포스트를 Airtable에 저장",
"type": "n8n-nodes-base.airtable",
"position": [
-1480,
-420
],
"parameters": {
"base": {
"__rl": true,
"mode": "list",
"value": "",
"cachedResultUrl": "https://airtable.com/appPSvSKdA6075xJC",
"cachedResultName": "Testing n8n"
},
"table": {
"__rl": true,
"mode": "list",
"value": "",
"cachedResultUrl": "https://airtable.com/appPSvSKdA6075xJC/tblboiRp54hqA813K",
"cachedResultName": "social post"
},
"columns": {
"value": {
"Content": "={{ $('Generate Blog & Image Prompt using GPT-4o').item.json.message.content.blog_post }}"
},
"schema": [
{
"id": "ID",
"type": "string",
"display": true,
"removed": true,
"readOnly": true,
"required": false,
"displayName": "ID",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Content",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Content",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Attachments",
"type": "array",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Attachments",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "create"
},
"credentials": {
"airtableTokenApi": {
"id": "H8PVkBgUPCcUhhRC",
"name": "Airtable Personal Access Token account"
}
},
"typeVersion": 2.1
},
{
"id": "cc6c3c98-d639-4bd4-b727-3556e33c3397",
"name": "블로그 포스트 이미지를 Airtable에 업로드",
"type": "n8n-nodes-base.httpRequest",
"position": [
-1260,
-420
],
"parameters": {
"url": "=https://api.airtable.com/v0///{{ $json.id }}",
"method": "PATCH",
"options": {},
"jsonBody": "={\n \"fields\": {\n \"Attachments\": [\n {\n \"url\": \"{{ $('Generate Blog & Image Prompt using GPT-4o').item.json.message.content.image_prompt }}\"\n }\n ]\n }\n}\n",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth",
"headerParameters": {
"parameters": [
{}
]
}
},
"credentials": {
"httpHeaderAuth": {
"id": "VyzU59iFznTo7K6r",
"name": "Airtable Connection"
}
},
"typeVersion": 4.2
},
{
"id": "aa4fb418-c654-413e-986f-df5bad418703",
"name": "스티커 메모",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2960,
-620
],
"parameters": {
"width": 700,
"height": 240,
"content": "### 🎥 From Video Upload to Blog Prompt\n\nThis part of the workflow starts when a new video is added to a designated Google Drive folder. It downloads the video and converts it into base64 format. That base64 video is then sent to Dumpling AI’s `extract-video` endpoint, which transcribes the entire audio content. The transcription is passed to GPT-4o, which writes a full blog post and also creates a descriptive image prompt based on the video's message.\n"
},
"typeVersion": 1
},
{
"id": "8a379ab7-b7ba-409f-a072-c3e0c7e20f7e",
"name": "스티커 메모1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2040,
-620
],
"parameters": {
"width": 820,
"height": 260,
"content": "### 📝 Generate Image and Save Blog to Airtable\n\nThe AI-generated image prompt is sent to Dumpling AI’s `generate-ai-image` endpoint (model FLUX.1-pro) to produce a visual that aligns with the blog post. The blog content is stored in Airtable under the `Content` field. Finally, the image prompt is also patched into the Airtable record under `Attachments` to complete the post entry for social use or publishing.\n"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "41c42227-95ae-4535-be56-1cc8a71490ac",
"connections": {
"cee77d1b-a91a-4fae-b5ae-eac34a9b0a03": {
"main": [
[
{
"node": "7b5ae3f4-d89d-4506-985d-a4c2afc5c0f5",
"type": "main",
"index": 0
}
]
]
},
"34b5a7a2-2cab-49a4-a905-dd6611de33f1": {
"main": [
[
{
"node": "cc6c3c98-d639-4bd4-b727-3556e33c3397",
"type": "main",
"index": 0
}
]
]
},
"7b5ae3f4-d89d-4506-985d-a4c2afc5c0f5": {
"main": [
[
{
"node": "e94c073a-e8e3-4b7e-9b86-21f7568b98cb",
"type": "main",
"index": 0
}
]
]
},
"7847f8a8-a60e-4b2c-afa1-8d586cb42d5c": {
"main": [
[
{
"node": "cee77d1b-a91a-4fae-b5ae-eac34a9b0a03",
"type": "main",
"index": 0
}
]
]
},
"29e09351-0d8e-40c4-8a41-d00bff9e93a4": {
"main": [
[
{
"node": "d68ab832-0c22-4ee7-8406-f1aba6911f70",
"type": "main",
"index": 0
}
]
]
},
"d68ab832-0c22-4ee7-8406-f1aba6911f70": {
"main": [
[
{
"node": "34b5a7a2-2cab-49a4-a905-dd6611de33f1",
"type": "main",
"index": 0
}
]
]
},
"e94c073a-e8e3-4b7e-9b86-21f7568b98cb": {
"main": [
[
{
"node": "29e09351-0d8e-40c4-8a41-d00bff9e93a4",
"type": "main",
"index": 0
}
]
]
}
}
}자주 묻는 질문
이 워크플로우를 어떻게 사용하나요?
위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.
이 워크플로우는 어떤 시나리오에 적합한가요?
중급 - 디자인, 인공지능, 마케팅
유료인가요?
이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.
관련 워크플로우 추천
Dumpling AI + GPT-4o를 사용한 비디오 인사이트에서 Facebook 게시물 자동 생성
Dumpling AI + GPT-4o로 비디오 인사이트에서 Facebook 게시물 자동 생성
Google Drive
Http Request
Google Sheets
+
Google Drive
Http Request
Google Sheets
8 노드Yang
인공지능
Dumpling AI + GPT-4o를 사용하여 자동 완성 제안에 따라 제목을 생성
Dumpling AI + GPT-4o를 사용하여 자동 완성 제안에서 제목 생성
Set
Split Out
Http Request
+
Set
Split Out
Http Request
8 노드Yang
디자인
AI 아이스브레이커 콘텐츠 생성기: Dumpling AI를 사용하여 웹사이트 스크래핑 및 Airtable에 저장
AI 아이스브레이커 콘텐츠 생성기: Dumpling AI를 사용하여 웹사이트 스크래핑 및 Airtable에 저장
Wait
Airtable
Http Request
+
Wait
Airtable
Http Request
9 노드Yang
인공지능
Dumpling AI와 GPT-4o를 사용하여 YouTube 비디오 자막에서 팟캐스트 자동 생성
Dumpling AI와 GPT-4o로 YouTube 자막에서 팟캐스트 자동 생성
Airtable
Http Request
Open Ai
+
Airtable
Http Request
Open Ai
5 노드Yang
인공지능
Dumpling AI와 GPT-4o를 사용하여 웹 스크린샷에서 제품 정보 추출
Dumpling AI와 GPT-4o를 통해 웹 캡처에서 제품 정보를 추출
Split Out
Google Drive
Http Request
+
Split Out
Google Drive
Http Request
11 노드Yang
인공지능
Dumpling AI를 사용하여 Google Drive에서 인보이스 데이터를 Sheets에 추출
Dumpling AI를 사용하여 Google Drive에서 발행서 데이터 추출하고 Sheets에 저장
Code
Split Out
Google Drive
+
Code
Split Out
Google Drive
8 노드Yang
인공지능