You need to enable JavaScript to run this app.
文档中心
向量数据库VikingDB

向量数据库VikingDB

复制全文
下载 pdf
使用指南
数据库、空间和用户
复制全文
下载 pdf
数据库、空间和用户

当你开始使用 OpenViking,通常会先遇到三个概念:库、数据空间和 User。
它们分别回答三个问题:库决定你使用的是哪一套 OpenViking 服务;数据空间决定数据属于哪个相互隔离的工作区;User 决定是谁在使用,以及私有数据归谁所有。
Image

库:你购买的一套 OpenViking 服务

在控制台中创建的每一个 OpenViking 库,都是一个可以独立使用和管理的 OpenViking 实例。
库有自己的一套数据、配置和服务入口,也可以独立创建、监控和释放。每个库单独计费。

个人版库和企业版库有什么区别

两种版本使用相同的 OpenViking 核心能力,区别主要在于需要管理多少身份,以及是否需要多层数据隔离。

对比项

个人版库

企业版库

更适合

个人开发者、个人助手、单一 Agent

团队、企业应用、多 Agent、多终端用户

User

只有一个 User

可以创建多个 User

数据空间

使用默认数据空间,不能创建多数据空间

可以创建多个逻辑隔离的数据空间

典型使用方式

一套服务长期服务一个身份

按客户、部门、应用或环境组织数据和成员

  • 如果一套 OpenViking 只服务你自己或一个长期运行的 Agent,个人版通常就够用。
  • 如果同一个库要服务多个团队、客户、Agent 或终端用户,并且需要分别管理身份和数据,选择企业版。

OpenViking Context 企业版和个人版收费方案见:计费说明

数据空间:库里的独立工作区

数据空间是企业版库中的一级数据隔离边界,在 API 中称为 Account。
这里的 Account 不是你的火山引擎登录账号。你可以把它理解为:同一个库里的一间独立工作室。每间工作室有自己的成员、共享资料和 User 私有目录。
进入任何一个数据空间,你看到的目录都从 viking:// 开始:

viking://
├── resources/              数据空间内的共享资料
└── user/
    ├── alice/              Alice 的私有目录
    └── support-agent/      客服 Agent 的私有目录

两个数据空间里可以出现完全相同的路径,但它们仍然是两份相互隔离的数据。系统会根据请求所使用的凭证判断当前数据空间,不能通过修改路径进入另一个数据空间。

什么时候新建数据空间

当你需要下面这些边界时,适合新建数据空间:

  • 不同客户或租户的数据必须完全隔离;
  • 不同部门或项目的成员不能互相发现或访问数据;
  • 两组共享资料需要完全独立;
  • 数据需要按客户、业务或环境分别迁移、清理和审计。

如果你只是想区分同一团队里的不同使用者,或隔离个人记忆和个人会话,通常不必新建数据空间,为不同身份创建 User 即可。

User:谁在使用,私有数据就归谁

User 是 OpenViking 中可以被认证的使用身份,也是私有目录的所有者。
User 不一定是自然人,它也可以代表一个长期运行的 Agent,或一个代表业务系统访问 OpenViking 的服务身份。

User 和鉴权有什么关系

每个 User 都有自己的鉴权凭证。OpenViking 收到请求后,会根据凭证确定请求属于哪个数据空间、代表哪个 User,以及这个 User 是管理员还是普通用户。
因此,User 不只是一个目录名称。它同时决定了“你是谁”和“你能访问什么”。客户端不能只靠在请求中填写另一个 user_id,就切换成其他 User。

访问目标

普通 User 是否可以访问

当前数据空间的共享资源

可以,具体读写能力由权限设置决定

自己的 User 私有目录

可以

自己名下的 Peer 子空间

可以

同一数据空间中其他 User 的私有目录

不可以

其他数据空间的数据

不可以

管理员可以在所属数据空间内创建和移除 User、查看用户列表、管理凭证和管理员角色。管理员的“用户管理能力”和 User 的“目录所有权”是两件事:业务数据仍应使用实际所有者的身份读写。

说明

管理员操作当前需使用管控面 API,详见 数据库管理 API 使用说明

一个 User 目录里有什么

每个 User 都有一套自己的目录。下面以 Alice 为例:

Image

目录

你可以把什么放在这里

memories/

需要长期保留的用户画像、偏好、事件和经验,通过写入 session 并使用 commit_session 自动抽取

peers/

当前 User 与某个稳定交互对象相关的记忆或资料,每个 peer 下可放置使用目录路径隔离的资源、记忆

privacy/

需要保护的用户级敏感配置,不建议当作普通知识目录使用,用于保管 skill 中的敏感鉴权信息

resources/

只属于当前 User 的文档、知识和项目资料

sessions/

一次对话或任务中的消息、工具输入输出与历史记录

skills/

当前 User 拥有的技能定义及其相关文件

三种常见的 User 建模方式

可以使用 User 目录结构和 User 下的多 peer 隔离逻辑,灵活建模您的业务场景。
Image
场景示例:
Agent 是 User,最终用户是 Peer:User = customer-service-agent,Peer = customer-001、customer-002、customer-003
适合一个后端 Agent 使用统一凭证服务多个终端用户的场景。Agent 的通用上下文放在 User 根目录(资源、跨不同服务用户的经验记忆等),每位客户专属的上下文放在对应 Peer 子空间。业务系统必须可靠地识别 Peer,不能让终端用户任意切换成其他 Peer。
自然人是 User,不同 Agent 是 Peer:
User = alice,Peer = coding-agent、travel-agent、learning-agent
适合一个人同时使用多个 Agent,并希望这些 Agent 共享用户记忆和偏好的场景。

常见问题

新建数据空间会产生一个新的库吗?

不会。数据空间属于现有库,是库内的数据隔离单元。新建空间不会创建新的产品实例,不会额外增收费用。

同一个 user_id 可以出现在不同数据空间吗?

可以。User 只在所属数据空间内唯一;位于不同数据空间时,它们是两个不同身份。

多个 User 可以共享资料吗?

可以。将资料放在当前数据空间的 viking://resources/ 中。每个 User 私有目录里的内容默认不与其他 User 共享。

管理员等于所有 User 的数据所有者吗?

不等于。管理员负责 User、凭证和角色管理;User 仍然是自己私有目录的所有者。

每个终端用户都必须创建一个 User 吗?

不一定。如果终端用户需要独立凭证和完整私有目录,适合创建 User;如果由一个可信 Agent 统一服务多个客户,并只需要分别保存交互上下文,也可以把 Agent 建模为 User、把客户建模为 Peer。

最近更新时间:2026.09.13 16:12:30
这个页面对您有帮助吗?
有用
有用
无用
无用