1.前言

       平时我们让 Claude code分析众多长文档,一眨眼就会把昂贵的Token烧光,甚至直接触发每日使用限制。为了缓解这个问题,我们可以通过一个开源插件(notebooklm-py),给 Claude 连上了一个免费的“超级外脑”——Google 的 NotebookLM。配置好之后,它的工作模式就变成了这样:

  1. 遇到海量文档时,Claude 不再自己傻傻地读,而是全自动把文件全丢给 NotebookLM。
  2. 由 Google 的免费算力帮你进行长文本阅读、交叉比对和总结。
  3. 最后,Claude 只需要花极少的一丁点额度,把 Google 总结好的结果拿回来排版润色成你想要的样子。

简单来说,这就是一套NotebookLM 免费干重活,Claude 花小钱做装潢的终极省钱工作流。

前置准备:

  1. 本地已配置好的 Claude Code 运行环境(Windows 环境

  2. 一个Google 账号(能访问 NotebookLM 即可)


2.对策

       本地 AI 编程助手的 Token 燃烧速度太快了。 当你想让 Claude Code 阅读 30 个 PDF 文档并交叉比对时,光是加载上下文就能瞬间吃光你的日限额。而 Google 的 NotebookLM 拥有目前市面上最强、且完全免费的长文本 RAG 能力,单 Notebook 支持 50 个数据源,主打“无幻觉”。notebooklm-py 这个开源逆向工程包,加上一套基于 Markdown 的 Skill 系统,巧妙地把 NotebookLM 变成了 Claude 的外包“资料处理员”。脏活累活丢给 Google 的免费算力,Claude 只负责最后的逻辑组装和输出。

3.配置

主要就两行命令,但有些小毛病

pip install notebooklm-py
notebooklm login

pip install notebooklm-py安装很顺畅

notebooklm login 登录就有点便秘

先安装 pip install playwright

在登录会报错notebooklm login

(base) PS C:\Users\asus> notebooklm login
Opening browser for Google login...
Using persistent profile: C:\Users\asus\.notebooklm\browser_profile
Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "D:\ProgramData\anaconda3\Scripts\notebooklm.exe\__main__.py", line 5, in <module>
  File "D:\ProgramData\anaconda3\Lib\site-packages\notebooklm\notebooklm_cli.py", line 164, in main
    cli()
  File "D:\ProgramData\anaconda3\Lib\site-packages\click\core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\ProgramData\anaconda3\Lib\site-packages\click\core.py", line 1078, in main
    rv = self.invoke(ctx)
         ^^^^^^^^^^^^^^^^
  File "D:\ProgramData\anaconda3\Lib\site-packages\click\core.py", line 1688, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\ProgramData\anaconda3\Lib\site-packages\click\core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\ProgramData\anaconda3\Lib\site-packages\click\core.py", line 783, in invoke
    return __callback(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\ProgramData\anaconda3\Lib\site-packages\notebooklm\cli\session.py", line 208, in login
    context = p.chromium.launch_persistent_context(
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\ProgramData\anaconda3\Lib\site-packages\playwright\sync_api\_generated.py", line 14861, in launch_persistent_context
    self._sync(
  File "D:\ProgramData\anaconda3\Lib\site-packages\playwright\_impl\_sync_base.py", line 115, in _sync
    return task.result()
           ^^^^^^^^^^^^^
  File "D:\ProgramData\anaconda3\Lib\site-packages\playwright\_impl\_browser_type.py", line 164, in launch_persistent_context
    result = await self._channel.send_return_as_dict(
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\ProgramData\anaconda3\Lib\site-packages\playwright\_impl\_connection.py", line 83, in send_return_as_dict
    return await self._connection.wrap_api_call(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\ProgramData\anaconda3\Lib\site-packages\playwright\_impl\_connection.py", line 559, in wrap_api_call
    raise rewrite_error(error, f"{parsed_st['apiName']}: {error}") from None
playwright._impl._errors.Error: BrowserType.launch_persistent_context: Executable doesn't exist at C:\Users\asus\AppData\Local\ms-playwright\chromium-1208\chrome-win64\chrome.exe
╔════════════════════════════════════════════════════════════╗
║ Looks like Playwright was just installed or updated.       ║
║ Please run the following command to download new browsers: ║
║                                                            ║
║     playwright install                                     ║
║                                                            ║
║ <3 Playwright Team                                         ║
╚════════════════════════════════════════════════════════════╝

然后听他的,先第一步:运行完整的 Playwright 安装命令,注意:这个过程可能会根据你的网速稍微花一点时间,因为它会下载匹配当前版本的完整浏览器内核。请确保它跑完 100% 并返回命令行提示符

playwright install

再第二步:再次尝试登录

notebooklm login

这里在网页登录失败,会报错,登录成功也会报错,反正很奇怪

问了gemini,他建议:

① 删除残留的浏览器配置文件夹

在你的 PowerShell 中运行以下命令,强制删除报错信息中提到的那个 browser_profile 文件夹(放心,这只是 Playwright 专用的临时配置,不会影响你平时使用的 Chrome/Edge 浏览器):

Remove-Item -Recurse -Force C:\Users\asus\.notebooklm\browser_profile

② 重新运行登录命令

清理干净后,再次运行:

notebooklm login

但结果也没啥两样,我真的笑了下一步部署这个skill

notebooklm skill install

检查状态

notebooklm skill status

4.使用

等我先摸索一周,有空更新一下

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐