gemini-youtube-automation
Gemini 驱动的全自主 YouTube 课程自动化 pipeline,从选题到发布全程 AI 执
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
Gemini 驱动的全自主 YouTube 课程自动化 pipeline,从选题到发布全程 AI 执
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
你还在为制作 YouTube 教程熬夜写脚本、录视频、反复剪辑吗? 印度开发者 Chaitanya 彻底解决了这个痛点——他写了一个完全自主运行的 AI Agent,每天早上 7:00 自动选题、写脚本、配音、渲染视频、生成缩略图,然后上传到 YouTube。整个过程零人工干预,频道里的每一条视频都出自这条 pipeline。
这个项目就是 gemini-youtube-automation,目前已收获 298 Stars 和 141 Forks,被社区评为"最实用的 AI 自动化案例"之一。

图1:项目作者 Chaitanya 的 GitHub 头像
在 AI 工具遍地开花的当下,大多数项目的 demo 停留在"输入 prompt 得到输出"的玩具级别。但这个项目不一样——它是一个真正运转在生产环境里的端到端 pipeline,从内容策划到视频发布,覆盖了内容创作的完整链路。
它的出现解决了一个真实的痛点:个人创作者想做教程系列,但精力有限,产出会断断续续。有了这个自动化 pipeline,可以一次性规划好几十期课程内容,然后让 AI 每天自动推进,把"内容创作"变成一条真正的工业流水线。
从技术角度看,这个项目也是一个很好的 LLM Agent 实践范例——它展示了如何将多个 API 服务串联起来,让大语言模型真正"动手做事",而不是仅仅回答问题。
项目的技术架构非常清晰,可以分为 7 个环节:
**图2:每日 pipeline 执行流程图(README 原图)
整个流程由 GitHub Actions 的 cron 定时任务触发(每天 7:00 AM UTC),跑在 GitHub 提供的免费 ubuntu-latest Runner 上,完全零服务器成本。流程结束后,pipeline 会自动将 content_plan.json 标记完成并 push 回仓库,形成一个闭环的自动化系统。
脚本生成完全交给 Google 的 Gemini 2.5 Flash 模型。项目作者设计了巧妙的 prompt 策略:
这意味着整个频道的知识体系都是 AI 自己规划并扩展的,开发者只需要确保 API 额度充足。
文本转语音用的是 Google 免费开源的 gTTS(Google Text-to-Speech),输出 MP3 后再用 pydub 转为 WAV 格式以确保与 MoviePy 的兼容性。每张幻灯片有独立的配音片段,MoviePy 会精确对齐音频时长与画面停留时间。
背景图通过 Pexels API 动态搜索,根据幻灯片标题生成相关关键词(如 "abstract AI neural network"),自动获取 2x 分辨率的图片。获取失败时降级为纯色深色背景。
最终的画面渲染使用 Pillow 绘制 PPT 风格的幻灯片:深色半透明标题栏、居中正文文字、高斯模糊背景图、页码和进度指示。
MoviePy 是这个 pipeline 的核心渲染引擎。每个 lesson 生成两类视频:
FFmpeg 在底层负责最终的视频编码和音频混合。workflow 里还专门 patch 了 ImageMagick 的 policy.xml,将最大图片尺寸放宽到 16384 像素,避免 Pillow 渲染大尺寸幻灯片时被系统策略拦截。
上传部分使用 Google 官方的 youtube-data-api-v3 Python 库,通过 OAuth 2.0 完成认证。长视频和短视频依次上传,中间间隔 30 秒避免 API 限流。每次运行会上传自定义缩略图,提升视频点击率。
项目没有提供 Dockerfile 或 docker-compose.yml,这可能是初期设计上的一点遗憾。对于习惯本地运行或 Docker 部署的开发者来说,需要直接操作 Python 环境。
不过换个角度看,GitHub Actions 本身就是最优雅的部署方案:
部署需要配置的 4 个 GitHub Secrets:
GOOGLE_API_KEY:Google AI Studio 的 Gemini API 密钥PEXELS_API_KEY:Pexels 图库 API 密钥CLIENT_SECRET_B64:YouTube OAuth 客户端凭证(base64 编码)CREDENTIALS_B64:YouTube OAuth 访问令牌(base64 编码)配置完成后,每天 7:00 AM UTC 就会自动触发一次完整流程。当天生成的视频会出现在你的 YouTube 频道里,content_plan.json 自动标记完成并 commit 回仓库。
项目代码采用标准的 Python 模块化结构:
gemini-youtube-automation/
├── main.py # pipeline 编排:选题 → 视频生成 → 上传 → 更新状态
├── src/
│ ├── generator.py # 核心生成逻辑:Gemini 调用、语音合成、视觉渲染、视频合成
│ └── uploader.py # YouTube OAuth 认证与上传
├── content_plan.json # 课程计划表(pipeline 自己维护)
├── requirements.txt # 依赖清单
└── .github/workflows/
└── main.yml # GitHub Actions 工作流定义
src/generator.py 是最核心的模块,集成了 5 个外部服务(Gemini、gTTS、Pexels、Pillow、MoviePy),约 400 行代码,函数职责划分清晰:内容生成、语音合成、图片获取、画面渲染、视频合成各自独立。
src/uploader.py 处理 OAuth 2.0 的完整生命周期——首次运行触发本地浏览器授权,之后自动刷新过期 token,在 GitHub Actions 的无头环境中也能正常工作。
整体代码注释充分,README 文档详尽(包含完整的流程图、设置步骤、技术栈表格),文档质量极高。但测试方面没有独立的测试套件,代码质量评分的可靠度有待验证。
根据 content_plan.json 的记录,该 pipeline 已经成功生成了 31 期课程,涵盖:
生成式 AI 基础:LLM 原理、Prompt Engineering、RAG、向量数据库
AI Agent:规划与推理、工具调用、记忆系统、多 Agent 协作
图像生成:GAN、Diffusion Model、Text-to-Image
高级主题:MLOps、Fine-tuning、计算机视觉
每期既有 16:9 的完整课程视频,也有 9:16 的 Shorts 精华版,真正实现了一个内容创作者需要的所有格式。
gTTS 语音质量有限:免费 gTTS 的英语发音是机器腔,音质不如 ElevenLabs 等商业方案。对于面向英语市场的频道,长期使用可能影响观众留存。
Pexels 图片版权风险:自动获取的图库图片虽然 Pexels 授权可商用,但高频使用同一来源可能让视频画面风格趋于同质化。
Gemini API 费用:Gemini 2.5 Flash 虽然价格较低,但每天跑一次完整的课程生成(涉及课程规划、lesson 脚本、hashtag 生成),API 消耗不可忽视。
YouTube 政策风险:纯 AI 生成内容且自动发布,存在违反 YouTube 服务条款的潜在风险,需关注平台政策变化。
无容错机制:pipeline 中任何一个环节失败(如 API 超时、图片获取失败)都会导致当天运行中断,已生成的视频也可能丢失。
gemini-youtube-automation 是一个极具创意且真正实用的 AI Agent 项目。它证明了大语言模型不仅仅是聊天机器人,更是一套自动化流水线的调度中心——Gemini 负责"动脑",MoviePy+FFmpeg 负责"动手",GitHub Actions 负责"按时执行",三者配合天衣无缝。
对于 AI 开发者来说,这个项目的参考价值远不止于"YouTube 自动化"本身,它的模块化架构设计、多 API 串联模式、以及 GitHub Actions 原生部署策略,都是值得学习的工程实践。
推荐指数:★★★★☆
本分析基于 GitHub 最新代码(最后推送:2026-07-03)和项目 README 文档生成。