用 AI 把 Zotero 论文库变成“会聊天的图书馆”——AIZotero 实战指南
为什么要给 Zotero 再配一个 AI 助手?
很多科研人、工程师、研究生把 Zotero 当成“第二大脑”——文献一键抓取、标签随便打、PDF 直接预览。可当论文攒到上千篇,新问题就冒出来了:
-
“这篇 40 页的 paper 到底讲了什么?” -
“半年前读的某篇论文,结论里那段公式怎么推导?” -
“老板突然问:‘我们组有没有人研究过量子纠错?’”
传统做法是:打开 PDF → 全文搜索 → 头脑风暴 → 打开笔记 → 手动整理。
AIZotero 的做法是:让 AI 直接读论文,然后和你聊天。
AIZotero 是什么?
一句话版本:
AIZotero = 本地 Zotero 图书馆 + AI 聊天窗口 + 全文搜索 + 本地记忆。
它不会把 PDF 上传到云端,也不会修改 Zotero 的任何数据,只是在你的电脑上开一个“会说话的阅读室”。
主要能力一览
能力 | 一句话说明 | 技术关键词 |
---|---|---|
本地连接 | 自动识别电脑里的 Zotero 7 | aiohttp |
AI 解析 | 把 PDF 转成 Markdown,再让 AI 总结 | markitdown , OpenAI API |
聊天记忆 | 你和 AI 的对话自动存 SQLite | SQLite |
实时搜索 | 标题、摘要、标签多维度秒搜 | FastAPI |
数学公式 | 完美渲染 LaTeX | KaTeX |
5 分钟快速上手(含常见问题)
1. 环境检查
依赖 | 最低版本 | 检查方法 |
---|---|---|
Python | 3.13 | python --version |
Node.js | 18 | node -v |
Zotero | 7+ | 打开“关于”确认 |
包管理器 | UV + PNPM | uv --version && pnpm -v |
FAQ:我只有 Python 3.11 怎么办?
答:建议用pyenv
或conda
新建 3.13 环境,不会影响老项目。
2. 安装步骤(全部本地完成)
# 1️⃣ 克隆仓库
git clone https://github.com/your-org/aizotero.git
cd aizotero
# 2️⃣ 装后端依赖(推荐用 uv)
uv sync # 等价于 pip install -r requirements.txt,但更快
# 3️⃣ 装前端依赖
cd frontend
pnpm install
3. 启动开发模式
开两个终端:
# 终端 A:后端(FastAPI)
uv run uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
# 终端 B:前端(Vite + Vue3)
cd frontend
pnpm dev
浏览器打开 http://localhost:5173,出现“AI Paper Assistant”即成功。
FAQ:端口被占用怎么办?
答:改端口即可:uvicorn app.main:app --reload --port 8001
。
第一次使用的三件小事
-
配置 AI 服务
点击右上角齿轮 → 填入 OpenAI 兼容的base_url
和api_key
→ 保存。
(没有 API?可以本地部署 Ollama 做免费替代) -
连接 Zotero
只要本地已安装 Zotero 7,AIZotero 会自动发现;第一次会提示授权,点击“允许”即可。 -
开始阅读
-
列表页:搜索、标签过滤、批量操作。 -
点击任意论文 → 左侧 PDF,右侧 AI 聊天。 -
问一句:“这篇论文的创新点是什么?”AI 会引用原文段落并给出中文摘要。
-
深入功能:你可能关心的 7 个问题
1. AI 真的“看懂”了 PDF 吗?
流程拆解:
PDF → markitdown → Markdown → OpenAI → 答案
-
图表会被转成文字描述,公式用 $$...$$
保证可渲染。 -
如果论文扫描版,文字识别先过 OCR,再由 AI 纠错。
2. 聊天数据存在哪?
-
路径: aizotero/data/cache/chat.db
-
格式:SQLite,每条记录包含 paper_id
,question
,answer
,timestamp
。 -
隐私:永远不会离开本机,换电脑把文件夹拷走即可。
3. 如何导出对话?
在聊天窗口右上角 → Export as Markdown → 得到标准 .md
文件,可直接放 Obsidian、Notion 继续加工。
4. 搜索到底有多快?
实测 3000 篇论文,关键词搜索 < 200 ms。
原理:FastAPI 的异步路由 + SQLite FTS5 全文索引。
5. 数学公式会乱码吗?
不会。AIZotero 使用 KaTeX 渲染,常见符号覆盖率 99.9%,甚至能识别手写体 \mathcal{H}
。
6. 能离线用吗?
-
纯离线:只要把 AI 服务换成本地 LLM(如 Ollama 的 llama3)。 -
半离线:PDF 解析和 AI 回答需要网络,但 Zotero 元数据读取完全离线。
7. 会不会把论文“泄露”给 AI 厂商?
不会。
-
PDF → Markdown 的转换在本地完成。 -
只有 Markdown 文本被发送到 AI 接口,可自建。 -
代码开源,可自行审计。
技术架构:一张图看懂数据流向
层级 | 技术 | 职责 |
---|---|---|
前端 | Vue3 + TypeScript + TailwindCSS v4 | 交互界面、拖拽布局 |
后端 | FastAPI + SQLite + aiohttp | API、搜索、缓存 |
文档解析 | markitdown + ThreadPoolExecutor | PDF → Markdown |
AI 接口 | OpenAI 兼容 | 问答、总结 |
存储 | SQLite | 聊天记录、缓存 |
开发者的 4 个常用命令
# 跑单测
uv run pytest -v
# 自动格式化
uv run black . && uv run ruff check . --fix
# 前端类型检查
cd frontend && pnpm type-check
# 一键提交(已配置 lefthook)
git add .
uv run lefthook run pre-commit
git commit -m "feat: add tag filter"
真实场景:3 位用户的 1 天
角色 | 任务 | 传统流程 | AIZotero 流程 | 节省时间 |
---|---|---|---|---|
研一学生 | 写开题报告 | 打开 20 篇 PDF → 人工摘要 | 选中 20 篇 → 一键 AI 总结 | 2h → 15 min |
算法工程师 | 复现论文 | 手动抄公式 → 反复对照 | 直接问 AI:“公式 (3) 的推导步骤?” | 30 min → 3 min |
产品经理 | 竞品调研 | 印象笔记 + 微信文件传输 | 边读边问 AI,对话导出 Markdown | 1 day → 2 h |
常见问题 FAQ(持续更新)
Q:Windows 可以用吗?
A:可以。Windows 10/11 实测通过,安装步骤完全一致。
Q:M1/M2 芯片的 Mac 需要额外配置吗?
A:不需要。UV 和 PNPM 会自动拉取 arm64 原生依赖。
Q:支持 Zotero 6 吗?
A:不支持。Zotero 7 的本地 API 与 6 差异较大,建议升级。
Q:PDF 超过 100 MB 会卡吗?
A:不会。转换阶段使用多线程,100 MB 论文 < 30 秒完成。
Q:如何卸载?
A:直接删除 aizotero
文件夹即可,不会留下注册表或隐藏文件。
下一步:把 AIZotero 变成自己的“第二大脑”
-
建标签体系:给论文打“方法 / 数据集 / 基线”三类标签,AI 回答会引用标签。 -
定期导出对话:每周把 .md
丢进 Obsidian,形成个人知识库。 -
写阅读笔记:在 AI 回答后面手动补充实验细节,AI 会记住上下文。
结语
AIZotero 不是“又一个 AI 工具”,而是把 Zotero 已经做得很好的“管理”能力,延伸到“理解”和“对话”。
如果你每天要和论文打交道,它会像一位 24 小时在线的研究助理——安静、高效、不占工位。
开源地址、安装脚本、使用视频都在 GitHub:
github.com/your-org/aizotero
欢迎提 Issue,也欢迎 Star 让项目走得更远。