viking 后端使用火山引擎 VikingDB 记忆库作为长期记忆存储。它是托管服务,无需自建向量库或本地 embedding,生产推荐。该后端还支持获取用户画像(get_user_profile),是当前唯一提供该能力的后端。
早期版本中的 viking_mem 后端已废弃,会被自动转为 viking,两者行为相同。
何时使用
- 生产环境,需要持久化与托管运维;
- 希望使用火山引擎记忆库的能力,包括用户画像;
- 已有火山引擎账号并具备相应的 AK/SK 或 IAM 凭证。
使用示例
初始化时若集合不存在,VeADK 会按 memory_type 自动创建。
也可以通过 backend_config 显式传入配置:
获取用户画像
构造参数
backend_config 支持以下配置项:
凭证获取顺序
后端优先使用显式传入或环境变量中的 volcengine_access_key 与 volcengine_secret_key;两者缺失时,会尝试从 VeFaaS IAM 文件读取凭证,适用于火山引擎云上部署场景。
region 与 memory_type 的默认值
region:未显式设置时读取环境变量 DATABASE_VIKING_REGION;仍为空时,byteplus 默认为 cn-hongkong,其余默认为 cn-beijing。
memory_type:未显式设置时读取环境变量 DATABASE_VIKINGMEM_MEMORY_TYPE(逗号分隔的字符串会被解析为列表);仍为空时默认为 ["sys_event_v1", "sys_profile_v1"]。
环境变量配置
index(即集合名)须满足 VikingDB 命名规则:以英文字母开头,仅包含字母、数字和下划线,长度 1–128,否则会报错。
viking 是唯一支持 get_user_profile(user_id) 的后端,可返回该用户的画像信息;其他后端调用该方法会返回空字符串。