19,095 颗星背后:notebooklm-py 把 NotebookLM 变成了可编程的 AI Agent 工具

Google NotebookLM 是目前最接近「让 AI 真正读懂你文档」的产品——上传几篇论文,它能生成播客、PPT、Quiz、闪卡,还能就文档内容进行带引用的对话。但它的核心痛点也很明显:没有官方 API,所有操作都得在网页上手动点。

开发者 Teng Lin 用逆向工程补上了这个缺口。notebooklm-py 是一个非官方的 Python SDK + CLI + AI Agent Skill,2025 年 1 月发布,至今已拿下 19,095 颗 Star、2,564 个 Fork,最新版本 v0.8.2 三天前(2026-09-02)刚发布。


它到底能做什么

这个库的本质是逆向 NotebookLM 的内部 RPC 协议(Google 的 batchexecute 协议,和 Google Photos、Translate 用的是同一套机制),把原本只在网页 UI 里存在的功能全部暴露成了 Python API、CLI 命令和 AI Agent Skill 三种调用方式。

NotebookLM 网页版有的,它都有:

  • 创建/管理笔记本、添加来源(URL、PDF、YouTube、Google Drive)
  • 问答对话(带原文引用)
  • 生成 Audio Overview(播客风格,4 种格式、3 种时长、50+ 语言)
  • 生成 Video Overview、Slide Deck、Quiz、闪卡、信息图、思维导图
  • 分享与权限管理

网页版没有、它有:

  • 批量下载:一次导出所有产物,指定格式(MP3/MP4/PDF/PNG/CSV/JSON/Markdown)
  • 结构化导出:Quiz 和闪卡可以导出为 JSON 或 Markdown,不只是网页里的交互视图
  • 思维导图 JSON 提取:拿到完整的层级数据,自己接可视化工具
  • PPT 下载:网页只给 PDF,它可以下 PPTX
  • 来源全文提取:拿到任意来源被索引后的完整文本
  • 程序化分享:批量配置权限,不用在 UI 里一个个点

v0.8.0(2026-08-03)新增的两个集成值得关注:

  • MCP Server:通过 Model Context Protocol 暴露工具,Claude Desktop、Roo Code、Cursor 这些支持 MCP 的客户端可以直接连
  • REST API Server:单租户自托管,给 HTTP 客户端用

v0.8.2(2026-09-02)刚引入了 Android 后端,可以用 NotebookLM 的原生移动 API 作为 Web 后端的替代方案,安装 android extra 后 --backend android 切换。


三种使用方式

1. Python API(异步,适合应用集成)

import asyncio
from notebooklm import NotebookLMClient

async def main():
    async with await NotebookLMClient.from_storage() as client:
        nb = await client.notebooks.create("Research")
        await client.sources.add_url(nb.id, "https://arxiv.org/abs/2310.06825", wait=True)
        result = await client.chat.ask(nb.id, "这篇论文的核心贡献是什么?")
        print(result.answer)
        # 生成播客并下载
        status = await client.artifacts.generate_audio(nb.id, instructions="用中文做一集有趣的播客")
        await client.artifacts.wait_for_completion(nb.id, status.task_id)
        await client.artifacts.download_audio(nb.id, "podcast.mp3")

asyncio.run(main())

2. CLI(适合快速操作和脚本)

pip install "notebooklm-py[browser]"
playwright install chromium
notebooklm login          # 打开浏览器登录 Google 账号

notebooklm create "我的研究项目"
notebooklm source add "https://example.com/paper.pdf"
notebooklm ask "核心发现是什么?"
notebooklm generate audio "做一个深度讨论风格"
notebooklm download audio ./podcast.mp3
notebooklm generate quiz --difficulty hard
notebooklm download quiz --format json ./quiz.json

3. AI Agent Skill(Claude Code / OpenClaw)

notebooklm skill install

装完之后在 Claude Code 里直接用自然语言操作:

  • 「把这篇论文做成播客」
  • 「下载 Quiz 的 Markdown 版本」
  • 「给我生成一份深度研究摘要」

它内置了 SKILL.md,Claude Code 装好后直接能认 /notebooklm 命令,不需要记任何 API 用法。


适合谁,不适合谁

适合:

  • 用 Claude Code、Codex、OpenClaw 等编程 Agent 的人,想让 AI 在对话中引用你自己的文档库(而不是训练数据)
  • 研究人员,一次性处理大量 PDF / 论文,做批量分析和内容生成
  • 内容创作者,把文档批量转成播客、PPT、Quiz
  • 想给 AI Agent 搭「知识记忆层」的人——NotebookLM 本身就是最好的 RAG 引擎,接进来比自建省事得多

不适合:

  • 需要稳定生产环境的人(它用未公开 API,Google 随时可能改)
  • 纯 NotebookLM 普通用户,偶尔用一下的人,网页 UI 完全够
  • 企业需要 SLA 保证的场景,官方 Enterprise API 才是正途

认证方式

没有 Google API Key,靠 Playwright 浏览器抓 Cookie。三种模式:

方式 优点 缺点
--browser-cookies chrome 最省事,登录一次复用 需要手动导出 Cookie
--browser msedge 支持企业 SSO 需要 Edge
交互式 notebooklm login 通用 每次都要开浏览器

Cookie 有时效,长期运行需要定期刷新。


实际用法举例

如果你在用 Claude Code 处理一个代码库,可以这样把它接进来:

# 安装 skill
notebooklm skill install

# 在 Claude Code 里
/notebooklm create "Project Memory"
/notebooklm source add ./docs/architecture.md
/notebooklm source add ./readme.md
/notebooklm generate audio "用轻松的方式介绍这个项目架构"

NotebookLM 做的是「基于文档的推理」——Gemini 在后端读完你的文档,回答问题时自带引用,不容易 hallucinate。这和让大模型直接读上下文相比,Token 消耗完全在 NotebookLM 侧,Claude Code 只需要拿到最终答案。


下一步建议

想快速验证?按这个顺序:

第一步(5 分钟):安装体验

pip install "notebooklm-py[browser]"
playwright install chromium
notebooklm login
notebooklm create "Test"
notebooklm source add "https://en.wikipedia.org/wiki/Artificial_intelligence"
notebooklm ask "AI 的定义是什么?"

第二步(如果你用 Claude Code):

notebooklm skill install
# 然后在 Claude Code 对话里直接用自然语言

第三步(如果想批量处理):
参考文档中的 Recipes 章节——「零 Token 研究卸载」模式:把 30 份文档扔进 notebook,让 NotebookLM 做分析,你的 Agent 只处理最终结果。


相关链接


  • 19k Star 的项目,证明市场对「NotebookLM 可编程化」有真实需求。官方不动,社区先动——这是开源最好的剧本。*

评论区

0 条评论

登录后可评论。