🔍 Obsidian的Copilot
Obsidian的Copilot是一个免费和开源的ChatGPT界面,直接集成在Obsidian中。它设计简约,使用简单直接。
- 💬 在Obsidian中的ChatGPT用户界面。
- 🛠️ 使用Copilot命令提示AI,快速获得写作结果。
- 🚀 用AI为你的第二大脑加速。
- 🧠 与你过去的笔记对话,获得洞见。
我的目标是使这个AI助手本地优先和注重隐私。它有一个本地向量存储,可以与本地模型一起工作,实现完全离线的聊天和问答!更多功能正在开发中。敬请关注!
如果你喜欢Obsidian的Copilot,请考虑赞助这个项目,或点击下面的按钮捐赠。这将帮助我继续推进这个项目,建立一个注重隐私的AI体验。谢谢!
特别感谢我们的赞助者: @Arlorean, @dashinja, @emaynard, @scmarinelli, @borthwick
🎉 备受期待的v2.5.0版本:Vault问答(测试版)模式(支持本地嵌入)!Claude 3!🎉🎉🎉
备受期待的最大更新终于到来!
全新的Vault问答(测试版)模式允许你与整个保险库对话,由本地向量存储提供支持。提问并获得带有引用源的答案!
更重要的是,通过Ollama本地嵌入和本地聊天模型,这种模式可以完全离线工作!这是朝着真正私密和本地化AI助手在Obsidian内部发展的一大步!
由于Claude 3模型今天(2024年3月4日)刚刚发布,我也在这个版本中加入了它们。前往Anthropic的网站获取你的API密钥,现在你可以在设置中找到它。
(非常感谢@AntoineDao与我一起开发Vault问答模式!)
免费模型
OpenRouter.ai目前托管了一些最好的开源模型,比如MistralAI的新模型,查看他们的网站了解所有他们提供的好东西!
LM Studio和Ollama是在你自己的机器上运行本地模型的两个最佳选择。请查看这里的超级简单设置指南。不要忘记在使用本地模型时发挥你的创造力,自定义提示!
🛠️ 功能
- 直接在Obsidian的Copilot聊天窗口中与ChatGPT对话。
- 无需重复登录。使用你自己的API密钥(本地存储)。
- 无月费。只为你使用的付费。
- 支持OpenAI、Azure、Google、Claude 3、OpenRouter和由LM Studio和Ollama提供支持的本地模型。
- 无需购买ChatGPT Plus即可使用GPT-4。
- 没有像ChatGPT Plus那样的GPT-4使用上限。
- 一键复制任何消息为markdown格式。
- 一键保存整个对话为笔记。
- 使用超长笔记作为上下文,通过切换到"长笔记问答"模式开始围绕它的讨论。
- 通过选择"Vault问答"模式与你的整个保险库对话。提问并获得带引用的回答!
- 所有问答模式都由本地向量存储的检索增强提供支持。无需将你的数据发送到基于云的向量搜索服务!
- 简单的命令可以简化、添加表情、总结、翻译、改变语气、修正语法、重写成推文/线程、计算标记等。
- 根据你的需求设置自己的参数,如LLM温度、最大标记数、对话上下文(请注意API成本)。
- 用户自定义提示!你可以添加、应用、编辑、删除你的自定义提示,这些都会保存在你的本地Obsidian环境中!发挥创意使用你自己的提示模板,天空才是极限!
- 使用LM Studio和Ollama支持离线聊天的本地模型。
🎬 演示
🤗 Copilot新手?新手快速指南:
- 与ChatGPT聊天,将消息复制到笔记,将整个对话保存为笔记
- 围绕你过去的笔记进行问答
- 修正语法和拼写、总结、简化、添加表情、移除URL
- 生成词汇表、目录
- 翻译成你选择的语言
- 你可以在命令面板中找到所有Copilot命令
要使用Copilot,你需要来自LLM提供商的API密钥,如OpenAI、Azure OpenAI、Gemini、OpenRouter(免费!)。你也可以使用LM Studio或Ollama离线使用它!
一旦你在Copilot设置中输入了有效的API密钥,别忘了点击保存并重新加载。如果你是新用户并在设置时遇到问题,请开一个issue并详细描述。
💬 用户自定义提示:创建任意数量的Copilot命令!
你可以添加、应用、编辑和删除你自己的自定义Copilot命令,所有这些都保存在你的本地Obsidian环境中! 看看下面这个演示视频!
🧠 高级自定义提示!释放你的创造力,充分利用长上下文窗口!
这个视频展示了高级自定义提示是如何工作的。这种模板形式为长上下文窗口模型带来了更多可能性。如果你有自己创意十足的酷炫用例,请不要犹豫,在讨论区或YouTube评论区分享它们!
🔧 Copilot设置
设置页面让你可以根据需要设置自己的温度、最大标记数、对话上下文。
随着我获得访问权限,新模型将被添加进来。
你还可以使用自己的系统提示,在不同的嵌入提供商之间选择,如OpenAI、CohereAI(他们的试用API是免费的,而且相当稳定!)和Huggingface Inference API(免费但有时会超时)。
⚙️ 安装
Obsidian的Copilot现在可以在Obsidian社区插件中找到!
- 打开社区插件设置页面,点击浏览按钮。
- 在搜索栏中搜索"Copilot",找到这个确切名称的插件。
- 点击安装按钮。
- 安装完成后,通过在社区插件设置页面切换其开关来启用Copilot插件。 现在你可以在左侧边栏看到聊天图标,点击它将在右侧打开聊天面板!别忘了查看命令面板中可用的Copilot命令!
⛓️ 手动安装
- 前往最新发布版本
- 下载
main.js
、manifest.json
、styles.css
,并将它们放在你的保管库的.obsidian/plugins/obsidian-copilot/
目录下 - 打开Obsidian设置 > 社区插件,并开启
Copilot
。
🔔 注意
- 默认情况下不保存聊天历史。请使用"保存为笔记"来保存它。笔记将以
Chat-年_月_日-时_分_秒
为标题,你可以根据需要更改其名称。 - "新建聊天"会清除所有先前的聊天历史。再次提醒,如果你想保存聊天,请使用"保存为笔记"。
- "将长笔记用作上下文"为活动的长笔记创建一个本地向量索引,这样你就可以与超过模型上下文窗口长度的笔记进行对话!要开始问答,请在模式选择下拉菜单中从"聊天"切换到"问答"。
- 如果需要,你可以在设置中的"上下文中的对话轮次"中设置一个很长的上下文。
📣 再次提醒,如果你使用GPT-4并设置了长上下文,请始终注意API成本!
🤔 常见问题(提交问题前请先阅读)
"你没有访问此模型的权限"
- 你需要有访问某些模型(如GPT-4或Azure模型)的权限才能使用它们。如果没有,请在他们的等待列表上注册!
- 我看到的一个常见误解是,一些人认为获得ChatGPT Plus订阅就可以访问GPT-4 API。这并不总是正确的。你需要有GPT-4 API的访问权限才能在此插件中使用GPT-4模型。请先检查你是否能在OpenAI playground中成功使用你的模型 https://platform.openai.com/playground?mode=chat。如果不能,你可以在这里申请GPT-4 API访问权限 https://openai.com/waitlist/gpt-4-api。一旦你获得API访问权限,你就可以在没有ChatGPT Plus订阅的情况下使用此插件的GPT-4!
- 参考问题:https://github.com/logancyang/obsidian-copilot/issues/3#issuecomment-1544583676
它没有使用我的笔记作为上下文
- 请不要忘记在模式选择下拉菜单中切换到"问答"以开始问答。Copilot在"聊天"模式下没有你的笔记作为上下文。
- 事实上,在开始问答之前,你不必点击右侧的按钮。直接在下拉菜单中切换到问答模式就足够让Copilot读取笔记作为上下文。右侧的按钮仅用于当你想手动重建活动笔记的索引时,比如当你想切换上下文到另一个笔记,或者你认为当前索引因为切换了嵌入提供者而损坏等情况。
- 参考问题:https://github.com/logancyang/obsidian-copilot/issues/51
使用Huggingface作为嵌入提供者时问答无响应
- Huggingface推理API可以免费使用。它有时会频繁出现503或504等错误,因为他们的服务器有问题。如果这对你来说是个问题,请考虑使用OpenAI或CohereAI作为嵌入提供者。只需记住,OpenAI的成本更高,特别是在使用很长的笔记作为上下文时。
"配额不足"
- 这可能是因为你没有为你的OpenAI账户设置付款,或者你超过了每月最大限额。OpenAI对个人用户使用其API有上限,通常为120美元。
- 参考问题:https://github.com/logancyang/obsidian-copilot/issues/11
"超出上下文长度"
- GPT-3.5的上下文令牌限制为4096,GPT-4为8K(根据OpenAI,公众很快就能使用32K版本)。**所以如果你在Copilot设置中设置了一个大的令牌限制,你可能会遇到这个错误。**请注意,Copilot命令背后的提示也会占用令牌,所以请限制你的消息长度和最大令牌数以避免这个错误。(对于无限上下文的问答,请使用下拉菜单中的"问答"模式!需要Copilot v2.1.0。)
- 参考问题:https://github.com/logancyang/obsidian-copilot/issues/1#issuecomment-1542934569
Azure问题
- 第一次获取所有Azure凭证正确有点棘手。我的建议是先在终端中使用
curl
进行测试,确保能得到响应,然后在Copilot设置中设置正确的参数。示例:curl https://你的资源名称.openai.azure.com/openai/deployments/你的部署名称/completions?api-version=版本\ -H "Content-Type: application/json" \ -H "api-key: 你的API密钥" \ -d "{ \"prompt\": \"从前有一个\", \"max_tokens\": 5 }"
- 参考问题:https://github.com/logancyang/obsidian-copilot/issues/98
在提出问题时,请包含相关的控制台日志。你可以在Copilot的设置中底部开启"调试模式"以获得更多控制台消息!
📝 计划功能(欢迎反馈)
- 新模式
- 聊天模式(原对话模式):你现在可以在对话中同时提供多个笔记作为上下文,适用于具有扩展上下文窗口的LLM。
- 问答模式:你可以索引任何文件夹,并使用本地搜索索引和检索增强生成(RAG)系统进行问答会话。
- 支持嵌入PDF作为上下文
- 与强大的AI代理互动,它了解你的保管库,可以搜索、筛选并使用你的笔记作为上下文工作。以前所未有的方式探索、头脑风暴和研究!
🙏 感谢
你知道即使是Alexa上的计时器也需要互联网接入吗?在这个由企业主导的互联网时代,我仍然相信有强大技术专注于隐私的空间。Obsidian中一个出色的本地AI代理是这个插件的最终形态。如果你认同我的愿景,请考虑赞助这个项目或给我买杯咖啡!
也请帮忙在Twitter、Reddit或任何其他你使用的社交媒体平台上分享Obsidian的Copilot插件,帮助传播这个消息。
你可以在Twitter/X上找到我 @logancyang。