项目简介
“obsidian-copilot” 是一个为写作和思考提供协作支持的项目。通过这个项目,用户只需撰写一个章节标题,协作助手就能够从相关的笔记和文档中检索出信息,为你草拟该部分的内容。这种模式被称为“检索增强生成”,适用于多种使用场景。举个例子,协作助手能够基于用户的日记帮助他们反思过去一周的经历。
功能特色
当前,obsidian-copilot 可以帮助用户完成以下任务:
- 根据用户的笔记草拟文稿章节
- 基于用户的日记条目帮助其回顾一周的情况
快速开始
如果您想开始使用 obsidian-copilot,可以按照以下步骤快速上手:
- 克隆项目代码,并更新路径到你的 obsidian 笔记库和 Hugging Face Hub 缓存:
git clone https://github.com/eugeneyan/obsidian-copilot.git
- 更新你的
~/.bashrc
或~/.zshrc
文件,添加OBSIDIAN_PATH
和TRANSFORMER_CACHE
路径配置,并执行source
命令加载配置:
export OBSIDIAN_PATH=/path/to/obsidian-vault/
export TRANSFORMER_CACHE=/path/to/.cache/huggingface/hub
如果尚未创建 Hugging Face Hub 缓存目录,你可以通过以下命令创建:
mkdir -p $TRANSFORMER_CACHE
- 构建 OpenSearch 和语义索引:
make build # 构建 Docker 镜像
make opensearch # 启动 OpenSearch 容器
- 在另一个终端中,构建项目所需的工件:
make build-artifacts
- 运行检索应用:
在停止 OpenSearch 容器后(使用 CTRL + C ),启动检索应用:
make run
- 安装协作助手插件,在社区插件设置中启用,并更新API密钥:
make install-plugin
工作原理
在用户输入一个章节标题时,obsidian-copilot 会:
- 通过关键字搜索和语义检索从用户的 obsidian 笔记库中提取相关的文档和片段
- 将检索到的内容用于生成章节的段落
- 并在新标签页中展示检索的上下文信息
贡献说明
如果你希望为“obsidian-copilot”项目贡献自己的力量,可以在项目根目录下运行以下命令安装预提交钩子:
pip install pre-commit && pre-commit install
待办事项
项目还有以下待办事项,欢迎感兴趣的用户参与:
- 增加对 Anthropic Claude(100k 上下文)的支持
- 评估是否直接发送完整文档而非文档片段
obsidian-copilot 是一个不断发展的项目,欢迎各地开发者贡献和改进。它不仅是一项技术创新,也为数字化笔记与写作带来了新的思路。通过灵活调用过往笔记,用户能够更有效地组织和呈现自己的想法。