将网页、文本、YouTube 视频等任意内容,一键转化为自然流畅的 AI 双人对谈播客。
类似豆包 AI 播客,基于 Google NotebookLM 的强大音频生成能力,由 notebooklm-py 驱动。
- 安装 Python 3.11+(安装时勾选「Add Python to PATH」)
- 安装 Node.js 18+(用于构建前端页面,只需安装一次)
- 拥有一个 Google 账号(需能访问 NotebookLM)
从 Releases 页面下载最新版本,解压到任意文件夹。
双击运行 登录NotebookLM.bat,按提示在浏览器中登录你的 Google 账号。
双击运行 启动.bat,等待片刻,浏览器会自动打开 PodFlow 界面。
- 选择内容来源(网页链接 / 文本 / YouTube)
- 输入内容,点击「生成播客」
- 等待生成完成后,点击播放按钮收听
- 多源输入:支持网页链接、纯文本、YouTube 视频三种内容来源
- 一键生成:提交后自动完成全部流程,无需任何手动操作
- 播客库管理:所有播客集中管理,支持播放、删除
- 在线播放:内置音频播放器,支持进度控制、静音
- 实时状态:生成进度实时显示(等待中 → 处理来源 → 生成中 → 完成)
- 全中文界面:从 API 文档到错误提示,全部中文
podflow/
├── 启动.bat # 一键启动脚本
├── 登录NotebookLM.bat # 首次登录脚本
├── backend/ # Python FastAPI 后端
│ └── app/
│ ├── api/ # 播客 CRUD API
│ ├── core/ # 配置、数据库
│ ├── models/ # 数据模型
│ └── services/ # NotebookLM 引擎
├── frontend/ # Next.js 前端(构建后集成到后端)
│ └── src/
│ ├── app/ # 页面
│ ├── components/ # UI 组件
│ └── lib/ # API 客户端、工具函数
└── docker-compose.yml # Docker 部署(可选)
# 后端
cd backend
pip install -r requirements.txt
notebooklm login
uvicorn app.main:app --port 8000 --reload
# 前端(开发模式,需要启动 dev server 做热重载)
cd frontend
npm install
npm run dev # 然后访问 http://localhost:3000
# 生产模式(前端构建后由后端统一服务)
cd frontend && npm run build
cd ../backend && uvicorn app.main:app --port 8000
# 访问 http://localhost:8000启动后访问 http://localhost:8000/docs 查看中文 Swagger 文档。
| 方法 | 路径 | 说明 |
|---|---|---|
POST |
/api/podcasts |
创建播客生成任务 |
GET |
/api/podcasts |
获取播客列表 |
GET |
/api/podcasts/{id} |
查看播客详情 |
GET |
/api/podcasts/{id}/audio |
播放/下载音频 |
DELETE |
/api/podcasts/{id} |
删除播客 |
- 使用 Google NotebookLM 非公开 API,Google 可能随时变更接口
- 需要有效的 Google 账号且有 NotebookLM 访问权限
- 免费用户的 NotebookLM 有每日使用配额限制
- 首次使用务必先运行「登录NotebookLM.bat」
- notebooklm-py — NotebookLM 非官方 Python API
- notebooklm-sdk — NotebookLM TypeScript SDK(参考)
- podcastfy — 开源 AI 播客生成框架(参考)
MIT License
