如何将 Quivr Brain 分享给同事并配置访问权限?
【免费下载链接】quivrOpiniated RAG for integrating GenAI in your apps 🧠 Focus on your product rather than the RAG. Easy integration in existing products with customisation! Any LLM: GPT4, Groq, Llama. Any Vectorstore: PGVector, Faiss. Any Files. Anyway you want.项目地址: https://gitcode.com/GitHub_Trending/qui/quivr
如果你已经在 Quivr 中建好一个 Brain,需要让同事也能向它提问、查看或维护其中的内容,这篇文档给出从发起邀请到对方接收的完整操作路径:在 Brain Studio 的 People 页签中填写对方邮箱并指定 Viewer、Editor 或 Owner 三种角色之一,对方通过邮件中的邀请链接接受邀请后即可按所获权限使用这个 Brain。前提是你在浏览器中登录 Quivr 且对这个 Brain 有分享资格(见下文角色限制)。
先选角色:Viewer、Editor、Owner 能做什么
Quivr 中共享 Brain 的权限分为三档(见 docs/features/brain-sharing.mdx):
| 角色 | 向 Brain 提问 | 下载文件 | 删除文件 |
|---|---|---|---|
| Viewer | 可以 | 不可以 | 不可以 |
| Editor | 可以 | 可以 | 不可以 |
| Owner | 可以 | 可以 | 可以 |
选择标准很直接:对方只需要查资料就给 Viewer;需要拿走 Brain 里的文件给 Editor;需要参与维护、清理过时内容的给 Owner。
系统还会按操作者自身的角色限制能分配的角色,这一限制定义在 People 页签的角色类型文件 中:
- Owner 可分配 Viewer、Editor、Owner 三种角色;
- Editor 只能分配 Viewer 和 Editor;
- Viewer 不能分配任何角色。
也就是说,只有 Owner 能把某人提升为 Owner。
发起分享邀请:在 People 页签填写邮箱并指定角色
分享流程按 官方文档 的五个步骤走:
- 进入 Brain Studio(应用内的 Studio 页面);
- 选择要分享的那个 Brain;
- 打开 People 页签;
- 在 "Invite new users" 区域填入对方邮箱地址,并从下拉框中选择角色;
- 点击 Invite 按钮发送邀请。
People 页签的界面由 PeopleTab.tsx 渲染,实际包含两部分:
- Invite new users:每一行是一个待邀请用户(邮箱 + 角色),点击 "Add new user" 可以增加更多行,一次性邀请多人;
- Users with access:列出当前已有访问权限的用户,是核对邀请是否生效的入口(见下文验证)。
发起邀请后,Quivr 会向对方邮箱发送一封邀请邮件。邀请链接的格式为{部署地址}/invitation/{brainId},这个拼接逻辑可以在 useShareBrain.ts 中看到。
被邀请人如何接收邀请
对方点击邮件中的链接后进入邀请页(/invitation/{brainId}),该页面的行为定义在 useInvitation.ts:
- 页面加载时会调用
GET /brains/{brainId}/subscription获取 Brain 名称和所分配的角色,页面上显示这两个信息,并提供Accept和Reject两个按钮; - 如果访问者没有登录,会先被重定向到登录页;根据官方文档,没有 Quivr 账号的人会先被要求注册账号,之后才能访问 Brain;
- 点击 Accept 调用
POST /brains/{brainId}/subscription/accept,成功后刷新 Brain 列表并把该 Brain 设为当前 Brain,然后跳转到/chat,对方即可开始使用; - 点击 Reject 调用
POST /brains/{brainId}/subscription/decline,放弃本次邀请。
邀请方也可以通过 frontend/lib/api/brain/brain.ts 中的getBrainUsers(GET /brains/{brainId}/users)看到当前拥有权限的成员列表及角色。
验证与结果判断
完成一次分享的核对点有两个:
- 邀请方:回到 People 页签的 "Users with access" 区域,对方邮箱出现在列表中且角色与你分配的一致,说明该成员已拥有权限;
- 被邀请方:接受邀请后跳转到聊天页,Brain 出现在其列表中并能正常提问,说明邀请已生效。
一个明确的失败信号:如果邀请页加载时GET /brains/{brainId}/subscription返回 404,前端会提示 "invitation not found" 并把用户重定向回首页——此时说明该邀请不存在或已失效,需要邀请方重新发起分享。
已知限制
- 邀请邮件只发送一次:官方文档明确提示,如果对方丢失了邮件,将无法通过原邮件进入 Brain,你必须重新共享一次(来源:docs/features/brain-sharing.mdx)。
- 角色不可越权分配:如前所述,Editor 无法把人升为 Owner,权限提升操作必须由 Owner 执行。
- 删除 Brain 与退订是同一个接口:brain.ts 中
DELETE /brains/{brainId}/subscription对应 Owner 删除 Brain 的动作,误用会直接删掉 Brain 而不是仅取消共享,操作前留意确认。
下一步
分享之后,Owner 仍可在 People 页签中调整成员角色或移除其访问权限,相关的角色分配限制与成员管理逻辑参见 People 页签源码。
【免费下载链接】quivrOpiniated RAG for integrating GenAI in your apps 🧠 Focus on your product rather than the RAG. Easy integration in existing products with customisation! Any LLM: GPT4, Groq, Llama. Any Vectorstore: PGVector, Faiss. Any Files. Anyway you want.项目地址: https://gitcode.com/GitHub_Trending/qui/quivr
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考