article
README
🚀 PDF 搜索 for Zed
这是一个专门为 Zed 设计的文档搜索扩展,它能让你对 PDF 文档进行语义搜索,并将搜索结果用于 Zed 的 AI 助手,极大提升文档检索与使用效率。
🚀 快速开始
- 克隆仓库
git clone https://github.com/freespirit/pdfsearch-zed.git
- 为 MCP 服务器设置 Python 环境
cd pdfsearch-zed/pdf_rag
uv venv
uv sync
- 安装开发扩展到 Zed 点击安装开发扩展,按照指引完成操作。
- 构建搜索数据库
cd /path/to/pdfsearch-zed/pdf_rag
echo "OPENAI_API_KEY=sk-..." > src/pdf_rag/.env
# 根据文档大小,这可能需要几分钟。
# 您可以提供多个文件和目录作为参数。
# - 文件将被分块处理。
# - 目录中的文件被视为已分块。
uv run src/pdf_rag/rag.py build "file1.pdf" "dir1" "file2.md" ...
- 配置 Zed
"context_servers": {
"pdfsearch-context-server": {
"settings": {
"extension_path": "/path/to/pdfsearch-zed"
}
}
}
✨ 主要特性
- 支持对 PDF 文档进行语义搜索,并将结果用于 Zed 的 AI 助手。
- 支持多个 PDF 文件以及可选的其他文件格式。
- 具备自包含向量存储功能。
📦 安装指南
先决条件
当前版本需要以下内容:
- OpenAI API 键(用于生成嵌入)
- 系统上已安装
uv
⚠️ 重要提示
当前实现虽然需要 OpenAI API 键来生成嵌入,但我们计划在未来版本中实现自包含替代方案。社区反馈将帮助我们优先改进。
💻 使用示例
基础用法
- 打开 Zed 的 AI 助手面板。
- 输入
/pdfsearch加上您的搜索查询。 - 该扩展将搜索 PDF 并将相关部分添加到 AI 助手的上下文中。
🔧 技术细节
本项目主要由以下部分构成:
pdf_rag/:基于 Python 的 MCP 服务器实现。src/:Zed 扩展代码。extension.toml和Cargo.toml:Zed 扩展配置文件。
📄 许可证
文档未提及相关许可证信息。
🔮 未来改进
- [x] 自包含向量存储
- [ ] 自包含嵌入
- [ ] 首次运行时自动构建索引
- [ ] 可配置结果大小
- [x] 支持多个 PDF 文件
- [x] 可选:除 PDF 以外的其他文件格式
⚠️ 已知限制
- 首次使用前需要手动构建索引。
- 需要外部服务(OpenAI)。
扫码联系在线客服