会議記録からプロジェクトの要約を生成
中級
これはDocument Extraction, AI Summarization分野の自動化ワークフローで、10個のノードを含みます。主にSet, Code, Markdown, GoogleDocs, HttpRequestなどのノードを使用。 会議記録からGPT-4とGoogleドキュメントを使って、プロジェクト要約を作成
前提条件
- •ターゲットAPIの認証情報が必要な場合あり
- •OpenAI API Key
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"id": "2HlbXBsdar2SqJK9",
"meta": {
"instanceId": "b50483b2122f6dc268662b45507d575d939570ea8e1e086601ebb3b6273c1cfd",
"templateCredsSetupCompleted": true
},
"name": "Generate Project Summary from meeting transcript",
"tags": [],
"nodes": [
{
"id": "01d49932-017c-4afb-af33-5d6c85bfd7a0",
"name": "CreateGoogleDoc",
"type": "n8n-nodes-base.httpRequest",
"position": [
736,
32
],
"parameters": {
"url": "https://www.googleapis.com/upload/drive/v3/files",
"body": "={{ $json.rawData }}",
"method": "POST",
"options": {},
"sendBody": true,
"sendQuery": true,
"contentType": "raw",
"authentication": "predefinedCredentialType",
"rawContentType": "multipart/related; boundary=divider",
"queryParameters": {
"parameters": [
{
"name": "uploadType",
"value": "multipart"
},
{
"name": "supportsAllDrives",
"value": "true"
}
]
},
"nodeCredentialType": "googleDriveOAuth2Api"
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "NzErn7lDOwCSEPj5",
"name": "Google Drive account - chzainali6363@gmail.com"
}
},
"notesInFlow": true,
"typeVersion": 4.2
},
{
"id": "2312d005-6930-4ad7-9043-dfae981c87b9",
"name": "Markdown",
"type": "n8n-nodes-base.markdown",
"position": [
256,
32
],
"parameters": {
"mode": "markdownToHtml",
"options": {
"emoji": true,
"tables": true
},
"markdown": "={{ $json.text }}",
"destinationKey": "html_content"
},
"typeVersion": 1
},
{
"id": "2cfbb626-c4a8-45d8-b278-5d8b3b83fc70",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-656,
-144
],
"parameters": {
"width": 1792,
"height": 544,
"content": "## Create Project Summary from meeting transcript\n\nThis workflow will pick the transcript from the GoogleDocs file and generate project summary and store it in Google Docs with proper headings."
},
"typeVersion": 1
},
{
"id": "4d39d4d7-0e66-498e-9784-70721ef27f4c",
"name": "OpenAI Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
16,
272
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4.1-mini",
"cachedResultName": "gpt-4.1-mini"
},
"options": {
"timeout": 300000,
"maxTokens": 32768,
"maxRetries": 2
}
},
"credentials": {
"openAiApi": {
"id": "K8T7HIhpd7gMJG20",
"name": "OpenAi account - Remap"
}
},
"typeVersion": 1.2
},
{
"id": "8a750e1d-88dc-47e6-8476-295fc480d884",
"name": "When clicking ‘Execute workflow’",
"type": "n8n-nodes-base.manualTrigger",
"position": [
-592,
32
],
"parameters": {},
"typeVersion": 1
},
{
"id": "8976101d-0619-48b4-8440-bd5ddf47aecd",
"name": "会議議事録の取得",
"type": "n8n-nodes-base.googleDocs",
"position": [
-384,
32
],
"parameters": {
"operation": "get",
"documentURL": "1L05uM0Iovq4gySv6lIUUQhRBKoQzW_FnYr4YEfxu4y8"
},
"credentials": {
"googleDocsOAuth2Api": {
"id": "QpLhhpFQnEmw6uPn",
"name": "Google Docs account- chzainali6363@gmail.com"
}
},
"typeVersion": 2
},
{
"id": "68d8121a-1f60-4c94-858a-3bc3c2d065b6",
"name": "プロジェクト概要",
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"position": [
-96,
32
],
"parameters": {
"text": "=You are a professional project manager and planner, your task is to provide a proper Client summary, you will given a structure of headings with a structure of an existing example of how a client summary would look like, and you will also be given a transcript from which you have to make all of this content from. Ensure everything is proper and take things step by step to ensure clearity. \n\nToday date is: {{ $today }}\n\nThis is an example of the project summary we are expecting you to give from a transcript that will be given to you:\n```\nProject Overview\nDescribe the client's current business or process, key goals, and overall vision discussed in the transcript. Summarize what they do and the context for the automation or technology intervention.\n\nKey Challenges\nHighlight specific issues, pain points, or bottlenecks the client is currently facing. Use direct examples from the transcript wherever possible.\n\nWhat [Your Automation Platform] Will Deliver\nDescribe what the platform/solution will deliver to address the client’s challenges. This section should be broken into specific deliverables (usually 2–4), clearly titled and explained under subheadings. These should reflect the solution areas mentioned in the transcript.\n\n1. [First Deliverable Name]\nExplain what this component is, how it works, and what it solves.\n\n2. [Second Deliverable Name]\nRepeat for additional components.\n\n(Add more sections like ### 3, ### 4 as needed, based on the transcript.)\n\nExpected Business Impact\nDescribe the measurable or expected benefits of this solution for the client. Focus on improvements in efficiency, scale, response time, conversion, cost, etc.\n\n🗓 Project Timeline & Rollout\nProvide a timeline broken down by project phases, using this format:\n\nPhase\tActivities\tDuration\nDiscovery & Planning\tDefine business rules, qualification flow, integration touchpoints\tX business days\n[Setup Phase]\tBuild and test the automation components\tX business days\n[Integration Phase]\tSet up any webhooks, 3rd-party connectors, or API touchpoints\tX business days\nTesting & Launch\tQA all flows and finalize for production use\tX business days\n\nTotal Duration: X Weeks\n```\n\nTranscript, make use of this to provide me the project summary in Markdown format without these ``` and ``` symbols:\n ``` {{ $json.content }} ```",
"promptType": "define"
},
"typeVersion": 1.6
},
{
"id": "509a03c3-24d1-484d-a9e0-dc774cdfab1e",
"name": "set_fields",
"type": "n8n-nodes-base.set",
"position": [
416,
32
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "e7ee03ac-13e3-4fca-a7bc-57c8fc56dc42",
"name": "document_name",
"type": "string",
"value": "=Project Summary"
},
{
"id": "f9703662-f8c1-4562-ac76-5514bada5439",
"name": "google_drive_folder_id",
"type": "string",
"value": "driveFolderId"
}
]
}
},
"notesInFlow": true,
"typeVersion": 3.4
},
{
"id": "3475c757-07cb-4ffb-9900-f53dd7ca8813",
"name": "Prepare_Request",
"type": "n8n-nodes-base.code",
"position": [
576,
32
],
"parameters": {
"jsCode": "const boundary = 'divider';\nconst docName = $input.first().json.document_name;\nconst folderId = $input.first().json.google_drive_folder_id;\nconst htmlContent = $('Markdown').first().json.html_content;\n\nconst metadata = JSON.stringify({\n name: docName,\n mimeType: \"application/vnd.google-apps.document\",\n parents: [folderId]\n});\n\nconst htmlWithStyles = `\n<!DOCTYPE html>\n<html>\n<head>\n <meta charset=\"UTF-8\">\n <style>\n /* Add bottom margin to block elements for spacing */\n p,\n ul,\n ol,\n table,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n margin-bottom: 10pt;\n }\n\n h2 {\n margin-top: 20pt;\n }\n\n /* Prevent margin collapse issues or excessive space inside lists */\n li {\n margin-bottom: 2pt; /* Optional: small space between list items */\n }\n\n /* Remove margin from the last child within common containers if needed */\n /* This might be overly aggressive, test without it first */\n /*\n body > *:last-child,\n li > *:last-child {\n margin-bottom: 0;\n }\n */\n </style>\n</head>\n<body>\n ${htmlContent}\n</body>\n</html>\n`;\n\n// Construct the body with literal \\r\\n ONLY\nlet body = `--${boundary}\\r\\n`;\nbody += `Content-Type: application/json; charset=UTF-8\\r\\n`;\nbody += `\\r\\n`; // Blank line\nbody += `${metadata}\\r\\n`;\nbody += `--${boundary}\\r\\n`;\nbody += `Content-Type: text/html\\r\\n`;\nbody += `\\r\\n`; // Blank line\nbody += `${htmlWithStyles}\\r\\n`; // Add the HTML content\nbody += `--${boundary}--\\r\\n`; // Final boundary\n\nreturn {\n rawData: body \n};"
},
"typeVersion": 2
},
{
"id": "0003d9a0-fcbe-4423-90e9-6583c9546f12",
"name": "No Operation, do nothing",
"type": "n8n-nodes-base.noOp",
"position": [
944,
32
],
"parameters": {},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "5773cc9b-6232-4ddb-b76f-3b7904c9b9fe",
"connections": {
"2312d005-6930-4ad7-9043-dfae981c87b9": {
"main": [
[
{
"node": "509a03c3-24d1-484d-a9e0-dc774cdfab1e",
"type": "main",
"index": 0
}
]
]
},
"509a03c3-24d1-484d-a9e0-dc774cdfab1e": {
"main": [
[
{
"node": "3475c757-07cb-4ffb-9900-f53dd7ca8813",
"type": "main",
"index": 0
}
]
]
},
"01d49932-017c-4afb-af33-5d6c85bfd7a0": {
"main": [
[
{
"node": "0003d9a0-fcbe-4423-90e9-6583c9546f12",
"type": "main",
"index": 0
}
]
]
},
"3475c757-07cb-4ffb-9900-f53dd7ca8813": {
"main": [
[
{
"node": "01d49932-017c-4afb-af33-5d6c85bfd7a0",
"type": "main",
"index": 0
}
]
]
},
"68d8121a-1f60-4c94-858a-3bc3c2d065b6": {
"main": [
[
{
"node": "2312d005-6930-4ad7-9043-dfae981c87b9",
"type": "main",
"index": 0
}
]
]
},
"4d39d4d7-0e66-498e-9784-70721ef27f4c": {
"ai_languageModel": [
[
{
"node": "68d8121a-1f60-4c94-858a-3bc3c2d065b6",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"8976101d-0619-48b4-8440-bd5ddf47aecd": {
"main": [
[
{
"node": "68d8121a-1f60-4c94-858a-3bc3c2d065b6",
"type": "main",
"index": 0
}
]
]
},
"8a750e1d-88dc-47e6-8476-295fc480d884": {
"main": [
[
{
"node": "8976101d-0619-48b4-8440-bd5ddf47aecd",
"type": "main",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
中級 - 文書抽出, AI要約
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
VEXA、OpenAI、Mem0を使った会議のAI分析の自動化
VEXA、OpenAI、Mem0を使った会議対話洞察の自動分析
Set
Code
Merge
+
Set
Code
Merge
26 ノードStephan Koning
文書抽出
n8nノードの探索(可視化リファレンスライブラリ内)
n8nノードを可視化リファレンスライブラリで探索
If
Ftp
Set
+
If
Ftp
Set
113 ノードI versus AI
その他
潜在顧客開掘とメールワーキングフロー
Google Maps、SendGrid、AIを使用してB2Bリード獲得とメールマーケティングを自動化
If
Set
Code
+
If
Set
Code
141 ノードEzema Kingsley Chibuzo
リード獲得
Firefliesの会議文字起こしとサマリー自動化
GeminiとGmailを使ってFirefliesから会議の要約を自動転記する
Set
Code
Gmail
+
Set
Code
Gmail
26 ノードDavide
文書抽出
AI および Gmail を使って YNAB 内の Amazon 取引の備考を自動更新
AIとGmailを使ってYNABのAmazon取引コメントを自動更新
If
Set
Wait
+
If
Set
Wait
30 ノードAngel Menendez
文書抽出
Facebookページコメント管理ボット:返信、削除、利用制限、通知
AI駆動のFacebookコメント管理:自動返信、削除、利用制限、通知
If
Set
Code
+
If
Set
Code
59 ノードSpaGreen Creative
ソーシャルメディア