ChatGPT创意视频AI 评分 · 待评分AI 辅助编辑·未发现明显提示词注入风险n8n.io

用 n8n 把 YouTube 视频自动转成结构化摘要

输入 YouTube 链接 → 提取字幕 → GPT-4o-mini 生成带层级标题的 Markdown 摘要 → 返回 JSON 并可选推送 Telegram

有一点经验步骤流程提示词
给谁
需要快速消化视频内容的研究者、学生、内容运营者
你会得到
POST 一个 YouTube URL,数秒内得到包含主题、要点、技术术语的结构化 Markdown 摘要,同时收到 Telegram 通知
你需要
n8n · youtube-transcript · telegram

硬约束

前置条件:self-hosted n8n(因使用社区节点 n8n-nodes-youtube-transcription);需配置 YouTube Data API v3 凭证、OpenAI API Key、Telegram Bot Token(可选)。输入为公开 YouTube 视频 URL;输出为 JSON 格式的摘要对象。费用取决于 OpenAI token 消耗与 n8n 自托管成本。

他们做了什么

作者 joe 在 n8n 模板库发布了一个工作流模板:通过 Webhook 接收 YouTube URL,提取视频 ID 与字幕,用 GPT-4o-mini 生成带层级 Markdown 结构的摘要,最后返回 JSON 并通过 Telegram 推送标题链接。模板使用了社区节点 n8n-nodes-youtube-transcription 提取字幕,因此仅限 self-hosted 环境。

效果如何

模板在 n8n 官方模板库的状态为 published,浏览量 115,968(来源:n8n API author_report)。作者描述其可在数秒内返回结构化摘要,支持多种 YouTube URL 格式。

值得知道

1. 社区节点限制:YouTube Transcript 节点为社区节点,cloud 版 n8n 无法直接使用,必须 self-hosted。 2. 凭证需求:虽然 workflow.json 中 credential_types 为空,但实际运行需要 YouTube Data API v3 凭证(用于获取视频元数据)、OpenAI API Key(用于 gpt-4o-mini)、以及 Telegram Bot Token(如启用通知)。 3. 字幕可用性:仅对带有公开字幕的 YouTube 视频有效;无字幕或需登录的视频会失败。 4. 模型可替换:节点名为 gpt-4o-mini,但同一 OpenAI Chat Model 节点可切换为 gpt-4 或其他兼容模型。 5. 输出格式固定:Response Object 中 topics 字段被硬编码为空数组 =[],如需自动提取主题列表需额外修改节点。 6. 本站未实测:reproduction=not_tested,上述效果为作者自述与模板结构推导,非 UKnowHow 验证结果。 (补充)来源 description 中的「GPT-4 powered analysis engine」为作者营销措辞,实际节点配置为 gpt-4o-mini,勿与 models 标签混淆。

n8n 工作流模板

结构已检查 · 未实际运行

下载后在 n8n 选择“Import from File”,或复制 JSON 后粘贴到编辑器。先配置自己的账号,再用测试数据运行;模板默认未启用。

配置与测试清单

需要绑定的凭证

  • 导入后按各需鉴权节点绑定你自己的凭证;本附件不含原作者密钥。

需要替换的配置

  • 源模板来自 n8n 公开库 #2679(约 12 个节点)。导入后先保持未启用,核对触发器、表达式与外部 API 端点。
  • Sticky Note 中的说明仅供参考;按自己的账号、表结构或频道 ID 替换占位配置。

测试输入与预期结果

  • 在测试环境手动执行一次主路径,确认每个需凭证的节点已连接且无鉴权错误。
  • 用一条合成/脱敏样例数据跑通,核对输出字段与下游写入目标,再考虑生产启用。

模板处理说明

  • 已移除原作者凭证绑定、webhookId 与执行数据,工作流设为未启用;节点、连线与原文提示词保持原样。未在 n8n 中实际运行。
  • 未改业务逻辑;运行前请自行核对密钥、配额与隐私合规。

模板获取日期: 2026-10-25

步骤

  1. 接收 URL 并提取视频 ID

    在 n8n 中导入模板后,确认 Webhook 节点路径为 ytube、方法为 POST、响应模式为 responseNode。随后「Get YouTube URL」节点从 webhook body 读取 youtubeUrl 字段。「YouTube Video ID」节点运行以下 JavaScript,用正则从 youtu.be 或 youtube.com 链接中提取 11 位视频 ID:

    运行提示词 · 来源原文。YouTube Video ID 节点的 jsCode 字段

    const extractYoutubeId = (url) => {
      // Regex pattern that matches both youtu.be and youtube.com URLs
      const pattern = /(?:youtube\.com\/(?:[^\/]+\/.+\/|(?:v|e(?:mbed)?)\/|.*[?&]v=)|youtu\.be\/)([^"&?\/\s]{11})/;
      const match = url.match(pattern);
      return match ? match[1] : null;
    };
    
    // Input URL from previous node
    const youtubeUrl = items[0].json.youtubeUrl; // Adjust this based on your workflow
    
    // Process the URL and return the video ID
    return [{
      json: {
        videoId: extractYoutubeId(youtubeUrl)
      }
    }];
  2. 获取视频元数据与完整字幕

    「Get YouTube Video」节点以 videoId 调用 YouTube Data API,获取视频标题、描述等元数据。并行(或按连接顺序)「YouTube Transcript」社区节点提取该视频的完整字幕文本。注意:该节点为社区节点,仅支持 self-hosted n8n。

  3. 拼接字幕片段为完整文本

    「Split Out」节点将 transcript 数组拆分为多条记录;「Concatenate」节点使用 summarize 的 concatenate 聚合,以空格连接所有 text 字段,生成单一字符串 concatenated_text,供下游 LLM 节点使用。

  4. 用 GPT-4o-mini 生成结构化摘要

    「Summarize & Analyze Transcript」节点(Basic LLM Chain)连接 gpt-4o-mini 模型,promptType 为 define,直接写入系统提示词。该提示词要求模型按二级标题拆分主题,以 bullet points 列出核心概念,保持技术准确性,并按 Definition/Background → Main characteristics → Implementation details → Advantages/Disadvantages 的顺序组织内容。

    运行提示词 · 来源原文。Summarize & Analyze Transcript 节点的 text 字段(promptType=define)

    =Please analyze the given text and create a structured summary following these guidelines:
    
    1. Break down the content into main topics using Level 2 headers (##)
    2. Under each header:
       - List only the most essential concepts and key points
       - Use bullet points for clarity
       - Keep explanations concise
       - Preserve technical accuracy
       - Highlight key terms in bold
    3. Organize the information in this sequence:
       - Definition/Background
       - Main characteristics
       - Implementation details
       - Advantages/Disadvantages
    4. Format requirements:
       - Use markdown formatting
       - Keep bullet points simple (no nesting)
       - Bold important terms using **term**
       - Use tables for comparisons
       - Include relevant technical details
    
    Please provide a clear, structured summary that captures the core concepts while maintaining technical accuracy.
    
    Here is the text: {{ $json.concatenated_text
     }}
  5. 组装响应对象

    「Response Object」节点(Edit Fields/Set)构建最终 JSON,包含:summary(来自 LLM 输出 text)、topics(空数组)、title(来自 YouTube 视频 snippet.title)、description(snippet.description)、id(视频 ID)、youtubeUrl(原始输入 URL)。

  6. 返回 webhook 响应并推送 Telegram

    「Respond to Webhook」节点将 Response Object 作为 HTTP 响应返回给调用方。同时「Telegram」节点向指定 chat 发送消息,内容为视频标题与原始链接,parse_mode 为 HTML,appendAttribution 设为 false。

    运行提示词 · 来源原文。Telegram 节点的 text 字段

    ={{ $json.title }}
    {{ $json.youtubeUrl }}

可复制提示词

搭建指导 · 本站建议版本。交给搭建助手,先确认输入和权限

这一段是提示词,页面不会在这里插入广告。

你是一个 n8n 工作流搭建助手。用户想复现「AI-powered YouTube video summarization & analysis」模板。请按以下顺序协助:
1. 确认用户运行的是 self-hosted n8n(社区节点限制)。
2. 检查是否已配置三类凭证:YouTube Data API v3、OpenAI API Key、Telegram Bot Token(如使用 Telegram)。
3. 指导从 https://n8n.io/workflows/2679/ 导入 workflow JSON 或直接从模板库安装。
4. 核对 Webhook 路径(ytube)与响应模式(responseNode)。
5. 建议先用一个公开 YouTube URL 测试,验证字幕提取与 LLM 摘要输出格式。

如需测试,可用 curl -X POST -H "Content-Type: application/json" -d '{"youtubeUrl":"https://www.youtube.com/watch?v=..."}' https://your-n8n/webhook/ytube

来源

⚡AI-powered YouTube video summarization & analysis · joe · n8n.io · 2024-12-29

留言与反馈

试过这个方法吗?分享效果、遇到的问题或改进建议。留言审核后公开,请勿填写敏感信息。

正在加载…

    相关用例