Automatisierte Umwandlung von YouTube-Videos in Blog-Artikel, Integration von Gemini AI-Transkription
Dies ist ein Content Creation, Multimodal AI-Bereich Automatisierungsworkflow mit 12 Nodes. Hauptsächlich werden Set, Webhook, ReadWriteFile, ExecuteCommand, Agent und andere Nodes verwendet. Automatische Umwandlung von YouTube-Videos in Blog-Artikel, integriert mit Gemini AI-Transkription
- •HTTP Webhook-Endpunkt (wird von n8n automatisch generiert)
- •Google Gemini API Key
Verwendete Nodes (12)
Kategorie
{
"meta": {
"instanceId": "afca6c018fd85ecd6bb793dc620b1f9d2de9ea7edb2532dd2708b1a0cf01d640",
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "e45b22bd-caa4-4adc-8da0-5229cea720cf",
"name": "KI-Agent",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
624,
-112
],
"parameters": {
"text": "=Please create a blog post from the following video transcript. Identify the key themes, structure the content logically, and generate a title, category, and tags.\n\nTranscript:\n{{ $json.content.parts[0].text }}",
"options": {
"systemMessage": "=You are an expert content strategist and editor. Your task is to transform a raw video transcript into a well-structured and engaging blog post.\n\nYou must adhere to the following rules:\n1. Your entire response must be a single JSON object enclosed in a markdown code block (```json ... ```).\n2. Do NOT include any introductory phrases, explanations, apologies, or any text whatsoever outside of the JSON markdown block.\n3. The tone should be informative, clear, and engaging, transforming the conversational transcript into polished written content.\n4. The language of all generated text in the output JSON must match the primary language of the input transcript.\n5. The JSON object must have this exact structure:\n{\n \"category\": \"A single, top-level category based on the content.\",\n \"tags\": [\n \"An array of 3 to 5 relevant, lowercase string tags.\"\n ],\n \"title\": \"A creative, compelling title for the blog post.\",\n \"short_description\": \"A concise, one-to-two sentence summary of the blog post, optimized for search engines (around 150-160 characters).\",\n \"body\": \"The full blog post content formatted in HTML, including <h1>, <h2>, and <p> tags.\"\n}\n"
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 2.2
},
{
"id": "b5606a62-9672-41f0-9a97-26994256e409",
"name": "Google Gemini Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
672,
240
],
"parameters": {
"options": {}
},
"credentials": {
"googlePalmApi": {
"id": "vppVWKsiofTY92Ht",
"name": "Google Gemini(PaLM) Api account"
}
},
"typeVersion": 1
},
{
"id": "74a9a1c6-af62-4e4e-8295-86550691525f",
"name": "Structured Output Parser",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
768,
96
],
"parameters": {
"autoFix": true,
"jsonSchemaExample": "{\n \"category\": \"Travel\",\n \"tags\": [\n \"breda\",\n \"summer travel\",\n \"netherlands\",\n \"city trip\",\n \"north brabant\"\n ],\n \"title\": \"Soaking Up the Last Days of Summer: A Weekend Guide to Breda\",\n \"short_description\": \"Don't let summer slip away! Discover the best things to do in Breda for a perfect late-summer weekend, from historic sites to vibrant terrace cafes.\",\n \"body\": \"<h1>Soaking Up the Last Days of Summer: A Weekend Guide to Breda</h1><p>As the golden light of late August settles over the Netherlands, there's no better place to capture the final, perfect moments of the season than Breda. This historic city in North Brabant, with its relaxed atmosphere and beautiful scenery, is the ideal destination for a memorable summer weekend. Here’s how to make the most of it.</p><h2>Morning: History and Coffee on the Grote Markt</h2><p>Start your day in the heart of the city, the Grote Markt. The square is dominated by the impressive Grote Kerk (Great Church), a must-see landmark. After exploring the church, find a spot at one of the many bustling terrace cafes. Ordering a coffee and watching the city wake up is a quintessential Breda experience.</p><h2>Afternoon: A Royal Stroll in Valkenberg Park</h2><p>Escape the midday heat with a walk through the shady paths of Valkenberg Park. This stunning park, once the garden of the Castle of Breda, is filled with ancient trees, fountains, and remnants of the old city fortifications. It's the perfect place for a picnic or simply to relax with a book and enjoy the sunshine.</p><h2>Evening: Sunset by the Harbor</h2><p>As the day winds down, head to Breda's charming harbor (Haven). The waterfront comes alive in the evening, with boats gently bobbing and restaurant lights reflecting on the water. Enjoy dinner with a view or simply take a stroll along the dock to watch a beautiful late-summer sunset.</p>\"\n}"
},
"typeVersion": 1.3
},
{
"id": "e81db094-9445-4953-81c6-45ddf7c8f68f",
"name": "Youtube-Audio herunterladen",
"type": "n8n-nodes-base.executeCommand",
"position": [
-176,
-112
],
"parameters": {
"command": "=yt-dlp -x --audio-format mp3 -o output-{{ $json.now_unix }}.mp3 '{{ $('Get Youtube Url').item.json.body.videoUrl }}'\n"
},
"typeVersion": 1
},
{
"id": "362d280b-bf10-4ad6-9d9a-2274ed2747fb",
"name": "MP3-Binärausgabe lesen",
"type": "n8n-nodes-base.readWriteFile",
"position": [
32,
-112
],
"parameters": {
"options": {},
"fileSelector": "=output-{{ $('Get Time').item.json.now_unix }}.mp3"
},
"typeVersion": 1
},
{
"id": "d37ff911-4ebf-4acc-9d66-1be48921d71a",
"name": "Blogbeitrag generieren",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
1376,
-112
],
"parameters": {
"options": {}
},
"typeVersion": 1.4
},
{
"id": "09d024f5-9c8e-4332-bbb6-5a58d735152d",
"name": "Youtube-URL abrufen",
"type": "n8n-nodes-base.webhook",
"position": [
-704,
-112
],
"webhookId": "57fddbda-a118-4546-a223-8e91a7d53ff6",
"parameters": {
"path": "57fddbda-a118-4546-a223-8e91a7d53ff6",
"options": {},
"httpMethod": "POST",
"responseMode": "responseNode"
},
"typeVersion": 2.1
},
{
"id": "3e1d9f4b-a1e0-4f02-9928-4ddab3a474dc",
"name": "Aufnahme transkribieren",
"type": "@n8n/n8n-nodes-langchain.googleGemini",
"position": [
320,
-112
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "models/gemini-1.5-flash",
"cachedResultName": "models/gemini-1.5-flash"
},
"options": {},
"resource": "audio",
"inputType": "binary"
},
"credentials": {
"googlePalmApi": {
"id": "vppVWKsiofTY92Ht",
"name": "Google Gemini(PaLM) Api account"
}
},
"typeVersion": 1
},
{
"id": "646309f5-7b01-41d1-be78-67894e062540",
"name": "Video-URL zur Ausgabe hinzufügen",
"type": "n8n-nodes-base.set",
"position": [
1136,
-112
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "f7f8a432-f6a3-4594-8048-53e170b46db6",
"name": "videoUrl",
"type": "string",
"value": "={{ $('Get Youtube Url').item.json.body.url }}"
},
{
"id": "b441eb26-15bb-43c6-afea-fa4733a100b5",
"name": "fulltext",
"type": "string",
"value": "={{ $('Transcribe a recording').item.json.content.parts[0].text }}"
}
]
},
"includeOtherFields": true
},
"typeVersion": 3.4
},
{
"id": "04bc9c1f-e198-42f9-9fb1-31fa391aed43",
"name": "Haftnotiz",
"type": "n8n-nodes-base.stickyNote",
"position": [
-256,
-256
],
"parameters": {
"color": 3,
"width": 464,
"height": 336,
"content": "## Get YouTube Video Audio\nDownload the YouTube video from the provided URL and prepare it as binary data."
},
"typeVersion": 1
},
{
"id": "f1c784d9-01f4-4219-876e-1fa2da37d687",
"name": "Zeit abrufen",
"type": "n8n-nodes-base.set",
"position": [
-464,
-112
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "1573616e-c70d-468b-ba22-1e0a337dbfa0",
"name": "now_unix",
"type": "number",
"value": "={{ new Date().getTime() }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "1c821513-2683-48bf-a015-67f02d5c671a",
"name": "Haftnotiz 1",
"type": "n8n-nodes-base.stickyNote",
"position": [
544,
-288
],
"parameters": {
"color": 5,
"width": 512,
"height": 688,
"content": "## Preparing the Blog Post\nThe AI Agent processes the full YouTube video transcript and transforms it into a blog post with content, a short description, a category, and tags. The output is provided as a structured JSON."
},
"typeVersion": 1
}
],
"pinData": {},
"connections": {
"e45b22bd-caa4-4adc-8da0-5229cea720cf": {
"main": [
[
{
"node": "646309f5-7b01-41d1-be78-67894e062540",
"type": "main",
"index": 0
}
]
]
},
"f1c784d9-01f4-4219-876e-1fa2da37d687": {
"main": [
[
{
"node": "e81db094-9445-4953-81c6-45ddf7c8f68f",
"type": "main",
"index": 0
}
]
]
},
"09d024f5-9c8e-4332-bbb6-5a58d735152d": {
"main": [
[
{
"node": "f1c784d9-01f4-4219-876e-1fa2da37d687",
"type": "main",
"index": 0
}
]
]
},
"362d280b-bf10-4ad6-9d9a-2274ed2747fb": {
"main": [
[
{
"node": "3e1d9f4b-a1e0-4f02-9928-4ddab3a474dc",
"type": "main",
"index": 0
}
]
]
},
"3e1d9f4b-a1e0-4f02-9928-4ddab3a474dc": {
"main": [
[
{
"node": "e45b22bd-caa4-4adc-8da0-5229cea720cf",
"type": "main",
"index": 0
}
]
]
},
"646309f5-7b01-41d1-be78-67894e062540": {
"main": [
[
{
"node": "d37ff911-4ebf-4acc-9d66-1be48921d71a",
"type": "main",
"index": 0
}
]
]
},
"b5606a62-9672-41f0-9a97-26994256e409": {
"ai_languageModel": [
[
{
"node": "e45b22bd-caa4-4adc-8da0-5229cea720cf",
"type": "ai_languageModel",
"index": 0
},
{
"node": "74a9a1c6-af62-4e4e-8295-86550691525f",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"74a9a1c6-af62-4e4e-8295-86550691525f": {
"ai_outputParser": [
[
{
"node": "e45b22bd-caa4-4adc-8da0-5229cea720cf",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"e81db094-9445-4953-81c6-45ddf7c8f68f": {
"main": [
[
{
"node": "362d280b-bf10-4ad6-9d9a-2274ed2747fb",
"type": "main",
"index": 0
}
]
]
}
}
}Wie verwende ich diesen Workflow?
Kopieren Sie den obigen JSON-Code, erstellen Sie einen neuen Workflow in Ihrer n8n-Instanz und wählen Sie "Aus JSON importieren". Fügen Sie die Konfiguration ein und passen Sie die Anmeldedaten nach Bedarf an.
Für welche Szenarien ist dieser Workflow geeignet?
Fortgeschritten - Content-Erstellung, Multimodales KI
Ist es kostenpflichtig?
Dieser Workflow ist völlig kostenlos. Beachten Sie jedoch, dass Drittanbieterdienste (wie OpenAI API), die im Workflow verwendet werden, möglicherweise kostenpflichtig sind.
Verwandte Workflows
Atta
@attakhalighiHi 👋 I design automation workflows with n8n, AI, and custom APIs. My focus is on building reliable systems that save time and boost productivity. Always happy to answer questions about my templates.
Diesen Workflow teilen