跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书GitHub 精选镜像AI 生图工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
PythonAI

Open Notebook 开源部署指南:接入 Gemini API 管理本地文档

介绍在 Mac 环境下通过 Docker 部署开源项目 Open Notebook,并集成 Google Gemini API 实现本地文档智能管理。步骤涵盖创建目录、获取 API Key、编写配置文件、启动容器及验证。提供 Web 界面访问、模型配置、测试及常见问题排查指南,帮助用户搭建隐私优先的 NotebookLM 替代品。

ApiHolic发布于 2026/3/21更新于 2026/8/1757 浏览
Open Notebook 开源部署指南:接入 Gemini API 管理本地文档

简介

Open Notebook 是一款开源项目,可作为 NotebookLM 的隐私优先替代品。本文介绍如何通过 Docker 部署并接入 Gemini 模型。

一、文档说明

  • GitHub 地址:https://github.com/lfnovo/open-notebook
  • Docker 官网:https://www.docker.com/
  • 适用场景:Mac 系统下通过 Docker 部署 lfnovo/open-notebook。仅配置 Google Gemini 模型(文本交互、TTS 等核心功能)
  • 前置条件:已安装 Docker Desktop、拥有可用 Google 账号(用于获取 Gemini API Key)。

二、操作流程

步骤 1:创建、进入专属部署目录

所有操作均在 /Users/open-notebook 目录下完成,先通过终端创建、进入该目录:

mkdir -p /Users/open-notebook
cd /Users/open-notebook

步骤 2:获取有效 Gemini API Key

  1. 访问获取地址:Google AI Studio 官网 (https://aistudio.google.com/)(需登录 Google 账号)
  2. 登录后,Google AI Studio 页面点击页面左下角点「Get API key」

API Key 入口

  1. 然后右上角点创建 API 密钥,给密钥取个名字,可以创建项目或者导入已有项目

创建密钥

  1. 成功后可以看到 API key 了,复制

API Key 列表

步骤 3:编写核心配置文件

需创建 2 个配置文件:docker.env(环境变量,含 Gemini 密钥)和 docker-compose.yml(容器部署配置),配置内容固定可直接复用。

3.1 编写 docker.env 文件
  1. 作用:存储 Gemini API Key、数据库等环境变量,确保容器启动时加载有效配置。
touch docker.env && open -e docker.env
  1. 粘贴以下配置内容,替换 GEMINI_API_KEY 为你的有效密钥,保存时需选择'格式→制作纯文本':
# 核心配置:Gemini API Key(必填,替换为你的有效密钥)
GEMINI_API_KEY=你上一步复制的的 Gemini 有效 API Key
# 数据库配置(固定不变,直接保留)
SURREAL_ADDRESS=localhost
SURREAL_PORT=8000
SURREAL_USER=root
SURREAL_PASS=root
SURREAL_NAMESPACE=open_notebook
SURREAL_DATABASE=production
3.2 编写 docker-compose.yml 文件

作用:定义容器镜像、端口映射、数据持久化等部署规则,无需修改。

touch docker-compose.yml && open -e docker-compose.yml

粘贴以下配置内容,直接保存(纯文本格式):

version: '3.8'
services:
  open_notebook:
    # 官方单容器镜像(稳定兼容 Gemini,无需修改)
    image: lfnovo/open_notebook:v1-latest-single
    # 端口映射:8502(Web 界面)、5055(API 服务,必需)
    ports:
      - "8502:8502"
      - "5055:5055"
    # 加载当前目录的 docker.env 环境变量
    env_file:
      - ./docker.env
    # 数据持久化:本地文件夹保存笔记和数据库,删除容器不丢失数据
    volumes:
      - ./notebook_data:/app/data
      - ./surreal_single_data:/mydata
    # 容器异常自动重启(保障服务稳定性)
    restart: always

步骤 4:启动容器并验证状态

4.1 启动容器

首次运行会自动拉取官方镜像,视网络情况需 1-5 分钟,耐心等待:

# 彻底启动(先停止删除旧容器,再后台启动新容器,确保配置生效)
docker compose down && docker compose up -d

启动成功标识:终端输出 Container open-notebook-open_notebook-1 Started 或末尾显示「Done」。

4.2 验证容器运行状态
# 查看容器状态,STATUS 列显示「running」即为正常
docker compose ps

若 STATUS 显示「exited」,说明启动失败,执行以下命令查看日志排查:

# 实时查看容器日志,按 Ctrl+C 退出
docker compose logs -f open_notebook
4.3 验证 Gemini 密钥加载成功(可选)

确认容器已读取到有效密钥:

docker compose exec open_notebook env | grep GEMINI_API_KEY

正常输出:GEMINI_API_KEY=你的有效密钥(说明加载成功)。

步骤 5:模型配置与使用

5.1 访问 Web 界面
  1. 打开 Mac 浏览器(Safari/Chrome),输入地址:
http://localhost:8502
  1. 打开成功

Web 界面

若 8502 端口被占用,修改 docker-compose.yml 中 8502:8502 为 8503:8502,重启容器后访问 http://localhost:8503。

5.2 配置 Gemini 模型

优先选择兼容模型(避免新模型可用性问题),操作如下:

  1. 进入 Web 界面后,点击侧边栏「⚙️Settings」→「Models」,可以看到可以配置四个类型的模型,先添加了对应模型,然后设置默认模型(可选)
  2. 配置聊天模型:在「Provider」下拉框中选择 Google(兼容性最好,无配额限制),「Model Name」输入你想要的模型 → 点击保存

模型配置

模型选择

  1. 配置默认模型

默认模型

可选配置其他模型(按官方推荐):

  • Language 语言:gemini-2.0-flash、gemini-2.5-pro-preview-06-05
  • TTS 文本转语音:gemini-2.5-flash-preview-tts、gemini-2.5-pro-preview-tts
  • Embedding 嵌入:text-embedding-004
5.3 调用 Gemini 模型测试
  1. 回到主界面,点击「New Notebook」新建笔记

新建笔记

  1. 创建成功后打开,面板分为三个部分
  • Sources 板块:用于添加知识来源(如文档、链接、文件等);
  • Notes 板块:用于记录基于来源的见解、观察;
  • Chat with Notebook 板块:集成 AI 对话功能(当前采用 Gemini Pro 模型),可通过提问理解笔记本内的内容(需先添加来源 / 笔记提供上下文)。

在输入框输入测试指令(如'解释 Docker 的核心优势''Vite 与 Webpack 核心区别解析')

测试输入

  1. 点击输入框右侧「发送」按钮(箭头图标),等待 1-3 秒,即可看到 Gemini 模型输出结果,点击保存按钮即可保存到「Notes」下

测试结果

  1. 数据持久化验证:创建笔记后关闭浏览器/容器,重新启动后,笔记仍保存在 /Users/open-notebook/notebook_data 文件夹中,不会丢失。

如果你需要更复杂的配置,比如远程服务器部署,可以去它的 GitHub 页面查看详细文档。

三、常见问题排查

报错现象核心原因解决方案
API key not valid / API_KEY_INVALIDGemini API Key 无效/过期/复制错误重新获取有效密钥,替换 docker.env 中的值,重启容器
Model is not a LanguageModel: None模型配置未加载/密钥未生效/模型名称错误1. 确认密钥有效;2. 选择 gemini-pro 而非新模型;3. 执行 docker compose down && up -d 彻底重启
500 Internal Server Error后端处理请求异常(密钥/网络/模型问题)查看容器日志定位原因;确保网络能访问 Google;验证密钥加载成功
无法访问 http://localhost:8502端口被占用/容器未正常启动1. 执行 lsof -i:8502 查看端口占用;2. 修改 yml 端口映射(如 8503:8502);3. 重启容器
gemini-2.0-flash 报错新模型可用性有限/账号无权限切换为 gemini-pro 或 gemini-1.5-flash,优先保障基础功能正常

四、关键注意事项

  1. Gemini API Key 为个人凭证,请勿泄露给他人,避免被盗用额度
  2. Gemini 免费额度有限,可在 Google AI Studio 查看额度使用情况,额度耗尽需升级付费方案
  3. Gemini 不支持语音转文字(STT),仅支持文字输入和文本转语音(TTS)
  4. 笔记数据保存在 /Users/open-notebook/notebook_data,请勿手动删除该文件夹
  5. 修改任何配置后,必须执行 docker compose down && docker compose up -d 彻底重启容器,否则配置不生效

目录

  1. 简介
  2. 一、文档说明
  3. 二、操作流程
  4. 步骤 1:创建、进入专属部署目录
  5. 步骤 2:获取有效 Gemini API Key
  6. 步骤 3:编写核心配置文件
  7. 3.1 编写 docker.env 文件
  8. 核心配置:Gemini API Key(必填,替换为你的有效密钥)
  9. 数据库配置(固定不变,直接保留)
  10. 3.2 编写 docker-compose.yml 文件
  11. 步骤 4:启动容器并验证状态
  12. 4.1 启动容器
  13. 彻底启动(先停止删除旧容器,再后台启动新容器,确保配置生效)
  14. 4.2 验证容器运行状态
  15. 查看容器状态,STATUS 列显示「running」即为正常
  16. 实时查看容器日志,按 Ctrl+C 退出
  17. 4.3 验证 Gemini 密钥加载成功(可选)
  18. 步骤 5:模型配置与使用
  19. 5.1 访问 Web 界面
  20. 5.2 配置 Gemini 模型
  21. 5.3 调用 Gemini 模型测试
  22. 三、常见问题排查
  23. 四、关键注意事项
  • 免费图片AI生成工具免费生成了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 免费图片视频在线生成30秒,将你的创意变成现实开始设计
  • X/Twitter免费视频下载器免登陆无限额度免费视频解析下载了解详情
  • 100+免费在线小游戏爽一把
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • 基于 AR 的低代码可视化远程协作与工业巡检方案
  • macOS 安装 Claude Code 完整教程
  • 智谱清影 2.0:AIGC 视频技术突破与产业价值解析
  • 用PyTorch实现SAC:最大熵Actor-Critic
  • 用 WebGIS 和百度天气做一个复古天气预报页
  • iOS 26 Liquid Glass TabBar 设计与实现
  • 基础算法核心模板指南:快速排序、归并排序与二分查找等
  • Windows 系统部署 RabbitMQ 及 Erlang 环境配置指南
  • DankDroneDownloader:大疆无人机固件自由下载终极指南
  • SkyWalking - .NET / C++ / Lua 探针现状与社区支持
  • Windows 资源管理器增强:QTTabBar 中文优化版实战指南
  • OpenClaw 本地部署实战:从零搭建可控 AI Agent 框架
  • Cursor 发布 Automations 功能,AI 全天候自动处理代码任务
  • Seedance 2.0 实操教程:从入门到 AI 导演模式
  • 思源黑体 NotoSansSC-Regular.otf 字体介绍与特点
  • 圣女司幼幽-Z-Turbo 模型部署与提示词优化指南
  • Qt Creator 配置 GitHub Copilot 插件指南
  • 预训练语言模型与 BERT 实战应用
  • C++ 继承基础:概念定义、访问权限与默认成员函数
  • 大模型基础:架构、微调与工程应用指南

相关免费在线工具

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online