teng-lin/notebooklm-py · 上手攻略
- 仓库:teng-lin/notebooklm-py
- 链接:https://github.com/teng-lin/notebooklm-py
- 分类:非官方 API / Agent 工具 / 知识管理
- 作者:spark
- 更新:2026-08-06
是什么
notebooklm-py 是一套针对 Google NotebookLM(2026 年 7 月改名为 Gemini Notebook,下文统称 NotebookLM)的非官方 Python 客户端 + CLI + Agent 技能包。它把 NotebookLM 的"Notebook 创建 → 来源导入 → 问答 → 多媒体产物生成 → 导出"整条链路以代码形态暴露出来,并且主动补齐了 Web UI 不提供的能力:批量下载、多格式导出 quiz/flashcard、思维导图 JSON 抽取、研究自动化(Deep Research、Drive 搜索自动导入)等。仓库以 MIT 发布,自带一份可被 npx skills add 发现的根 SKILL.md、本地 notebooklm skill install(Claude Code / .agents 目录)以及仓库级 AGENTS.md(Codex 引导),所以"作为 AI 代理的工具"和"作为 SDK 库"是同一份代码。
解决什么问题
NotebookLM 的卖点是"基于你给的来源做带引用的 Gemini 推理",但 Web UI 是交互式的,不能批量化、不能集成到 CI / Agent 循环里。notebooklm-py 直击三类痛点:
- Agent 编排:让 Claude Code / Codex / OpenClaw 等代理把 NotebookLM 当作"零 token 的合成 + 记忆层"——分析走 Google 端,token 只花在最后的润色。
- 批量化与可复现:一次性喂几十份 URL/PDF/YouTube/Drive 文档,跑 Deep Research 模式(
source add-research "topic" --mode deep),结果可脚本化导出。 - 产物导出:Audio Overview(播客)、视频、幻灯片、quiz、flashcard、思维导图、study guide 等可一键落盘为 MP3/MP4/PDF/PNG/CSV/JSON/Markdown,部分类型支持批量。
快速安装
环境:Python 3.10 – 3.14(README badge 范围)、联网(要走 Google 内部端点)、以及一个能登入 NotebookLM 的 Google 账号(认证 cookie 通过 CLI 的 login 写入本地,不要把 cookie 提交进仓库)。
python -m pip install --upgrade notebooklm-py
notebooklm --help # CLI 已就绪
notebooklm login # 一次性认证,按提示把 auth 凭据落到本地
notebooklm whoami # 验证当前登录态
⚠️ 由于使用了 Google 未公开 API,端点随时可能变更;以
pip install --upgrade跟最新版本是降低炸点的最稳做法。
核心用法
CLI 与 Python API 两套入口等价,下面都给到一段最小可跑:
CLI(创建 → 加源 → 问答 → 生成播客 → 导出):
notebooklm notebook create --title "AI infra weekly"
notebooklm source add-research "small LLM serving on consumer GPUs" --mode deep
notebooklm ask "summarize the key inference optimizations" --save-as-note
notebooklm generate audio-overview --length default
notebooklm download --all --out ./artifacts
Python SDK(同流程,11 行):
from notebooklm import NotebookLMClient
client = NotebookLMClient() # 默认读取 notebooklm login 写入的凭据
nb = client.notebooks.create(title="AI infra weekly")
nb.sources.add_research("small LLM serving on consumer GPUs", mode="deep")
notes = nb.chat("summarize the key inference optimizations", save_as_note=True)
nb.generate.audio_overview(length="default")
nb.download.all(out="./artifacts") # 一键拿全部产物(含 quiz/flashcard JSON、mind map JSON)
Agent 集成:
npx skills add teng-lin/notebooklm-py # 通用 skill 发现
# 或 Claude Code / .agents 目录:
notebooklm skill install
# 之后在 Claude Code 里可直接 /notebooklm 触发完整工作流
典型适用场景
- 把 NotebookLM 当外部 RAG:把内部文档/RFC/历史工单灌进一个 Notebook,让 Agent 用
ask拿到带引用的答案,避开自建向量库。 - 跨会话持久记忆:维护一个"Master Brain" Notebook,每次 session 结束用
note create/ask --save-as-note追加总结,下次 session 开头ask召回。 - 知识蒸馏成 SKILL:用
source add-research --mode deep或批量加载文档,把 NotebookLM 的归纳结果 bake 进一份SKILL.md,一次性产出可 git 版本化的领域技能。 - 批量化内容生产:一份源 → 一键产播客 + 视频 + slide deck + quiz + flashcard,多渠道分发。
- 个人笔记/日记挖掘:把日常笔记全部丢进去,做跨年模式检索,引用回到具体条目。
坑与注意
- 未公开 API 风险:Google 任何时间改端点都可能炸;README 明确写"Not affiliated with Google",别拿它做生产关键链路。故障排查路径见
docs/troubleshooting.md。 - 认证 cookie 是核心资产:
notebooklm login凭据默认落到本地,切勿提交进仓库。换机器/重置需要重新登录。 - 限流:重度使用会被 Google 端节流;做批处理请加退避并分散到多个 Notebook。
- 2026 年 7 月品牌切换:NotebookLM → Gemini Notebook,老链接 301 到新域,库本身不需要改;本机访问如果走公司代理,注意 Gemini 域名白名单。
- CLI vs Python 的特性并不完全对称:一些高级导出(比如 mind map JSON、quiz 多格式)在 Web UI 没有,但脚本里可以;用之前建议查
docs/cli-reference.md/docs/mcp-guide.md。 - 不要把 Deep Research 当"无成本":
add-research --mode deep是 Google 端的高开销操作,单次可能要花数分钟并消耗配额,先用小源集试。 - 复现性声明:本攻略基于仓库
main分支、commit614d6288ab51e508c41c7bea481729c50d14d309(2026-08 HEAD),版本号、API 形态以 PyPI 最新发布为准;未在本地端到端跑通命令,凭 README + PyPI 描述复述。
与同类对比
| 维度 | teng-lin/notebooklm-py | NotebookLM Web UI | 官方 Gemini API + 自建向量库 |
|---|---|---|---|
| 入口 | Python + CLI + Agent skill | 仅浏览器 | 自建管线 |
| 产物覆盖 | 音频/视频/slide/quiz/flashcard/mindmap 全套 | 同上但不能批量、不能导出 mindmap JSON | 自己拼 |
| 引用与可信 | Google 端内置引用 + 来源 | 同 | 自己实现 grounding |
| 工程门槛 | pip 装 + 登录即可 | 零 | 选模型/切片/嵌入/检索/重排全套 |
| 维护风险 | 高(依赖 Google 未公开 API) | 官方 | 中(自己控) |
| 适用 | 自动化 / Agent / 批处理 | 一次性使用 | 严格自托管 + 大规模 |
一句话推荐结论
如果你已经在用 NotebookLM 做事实/知识工作,把它装上、把 notebooklm skill install 跑一下,就等于给 Claude Code / Codex / OpenClaw 配了一块"零 token、零基建、带引用"的接地记忆层——前提是你接受"非官方库 + 未公开 API"这一道工程风险。
原始 commit/PR 链接 + commit SHA:
- 仓库 HEAD:https://github.com/teng-lin/notebooklm-py/commit/614d6288ab51e508c41c7bea481729c50d14d309(614d6288)
- PyPI:https://pypi.org/project/notebooklm-py/
- 仓库 SKILL(Agent 集成入口):https://github.com/teng-lin/notebooklm-py/blob/main/SKILL.md
- 官方改名说明:https://blog.google/innovation-and-ai/products/gemini-notebook/notebooklm-gemini-notebook/