)
环境Win11WSL2Ubuntu24.04一、相关文档记忆提供程序Memory Providersopenviking简介openviking快速开始在线服务OpenViking Service火山引擎云产品介绍二、配置hermes健康检查uadminUD26:~$ curl http://127.0.0.1:1933/health{status:ok,healthy:true,version:0.4.10,auth_mode:dev}切换记忆提供者uadminUD26:~$ hermes config set memory.provider openviking✓ Set memory.provider openviking in /home/uadmin/.hermes/config.yaml~/.hermes/config.yamlmemory: flush_min_turns: 6 memory_char_limit: 2200 memory_enabled: true nudge_interval: 10 provider: openviking user_char_limit: 1375 user_profile_enabled: true查看记忆状态hermes memory statusuadminUD26:~$ hermes memory status Memory status ──────────────────────────────────────── Built-in: always active Provider: openviking Plugin: installed ✓ Status: not available ✗ Missing: ✗ OPENVIKING_ENDPOINT ✗ OPENVIKING_API_KEY ✗ OPENVIKING_ACCOUNT ✗ OPENVIKING_USER ✗ OPENVIKING_AGENT ✗ OPENVIKING_RECALL_LIMIT ✗ OPENVIKING_RECALL_SCORE_THRESHOLD ✗ OPENVIKING_RECALL_MAX_INJECTED_CHARS ✗ OPENVIKING_RECALL_TIMEOUT_SECONDS ✗ OPENVIKING_RECALL_REQUEST_TIMEOUT_SECONDS ✗ OPENVIKING_RECALL_FULL_READ_LIMIT ✗ OPENVIKING_RECALL_PREFER_ABSTRACT ✗ OPENVIKING_RECALL_RESOURCES Installed plugins: • byterover (API key / local) • hindsight (API key / local) • holographic (local) • honcho (API key / local) • mem0 (API key / local) • openviking (API key / local) ← active • retaindb (API key / local) • supermemory (requires API key)报了一堆Missing可以忽略在~/.hermes/.env中配置OPENVIKING_ENDPOINT就不报Missing还是配上吧# 外部记忆openviking# openviking服务端点需要配置配了不报MissingOPENVIKING_ENDPOINThttp://127.0.0.1:1933.env更多配置~/.hermes/.env# 外部记忆openviking # openviking服务端点需要配置配了不报Missing OPENVIKING_ENDPOINThttp://127.0.0.1:1933 # dev 模式无认证不需要root_api_key OPENVIKING_API_KEY # OpenViking 里的租户 / 用户 / agent 标识用来隔离不同用户/助手的记忆空间。 # 租户 account ID OPENVIKING_ACCOUNTdefault # 用户 ID OPENVIKING_USERdefault # 这是 Hermes 在 OpenViking 中的对等 ID (peer ID)可以设置为 hermes OPENVIKING_AGENThermes # 以下召回相关参数为可选测试不配有默认值前期不需要配置 # 自动召回最多注入的记忆条数 OPENVIKING_RECALL_LIMIT6 # 召回的最低相关性分数低于此分数的记忆不注入 OPENVIKING_RECALL_SCORE_THRESHOLD0.15 # 单次召回注入的总字符数上限 OPENVIKING_RECALL_MAX_INJECTED_CHARS4000 # 召回整体超时秒 OPENVIKING_RECALL_TIMEOUT_SECONDS4.0 # 召回单次 HTTP 请求超时秒 OPENVIKING_RECALL_REQUEST_TIMEOUT_SECONDS3.0 # 每次召回最多读取几篇完整 L2 正文 OPENVIKING_RECALL_FULL_READ_LIMIT2 #为 true 时只用摘要L0不读完整正文 OPENVIKING_RECALL_PREFER_ABSTRACTfalse #为 true 时召回范围包含 resources知识库资源默认只召回记忆 OPENVIKING_RECALL_RESOURCESfalse再查看记忆状态hermes memory statusuadminUD26:~$ hermes memory status Memory status ──────────────────────────────────────── Built-in: always active Provider: openviking Plugin: installed ✓ Status: available ✓ Installed plugins: • byterover (API key / local) • hindsight (API key / local) • holographic (local) • honcho (API key / local) • mem0 (API key / local) • openviking (API key / local) ← active • retaindb (API key / local) • supermemory (requires API key)查看日志tail -f ~/.hermes/logs/gateway.loghermes logs -f三、测试Hermes 聊天框核心测试方法进入 Hermes 对话界面后按以下 3 个层级测试从基础连通到核心长期记忆能力逐步验证。1. 显式工具调用测试最快验证连通性直接发指令让 Hermes 调用 OpenViking 专属工具能成功执行就代表链路完全打通。存储记忆测试发送指令用 viking_remember 保存一条事实我的测试标记为 openviking-20260723开发环境是 WSL2 Ubuntu 24.04正常情况下 Hermes 会调用viking_remember工具返回执行成功的结果内容会写入 OpenViking 的用户记忆库。语义检索测试紧接着换表述提问验证召回能力用 viking_search 搜索和我的开发环境相关的内容或者直接自然提问我之前存的测试标记是什么能准确返回对应内容说明语义检索正常。目录浏览测试验证 OpenViking 文件系统范式是否可用用 viking_browse 浏览 viking:// 根目录能返回resources/、user/等目录结构说明文件系统层级功能正常。2. 自动跨会话记忆测试验证核心长期记忆能力这个测试可以验证 Hermes 是否自动同步对话、会话结束自动提取记忆以及跨会话召回的核心能力a. 在当前对话里说一段独特的、不会出现在内置记忆里的内容比如我接下来的开发任务是给 Hermes 记忆OpenViking 配置阿里云百炼模型和本地的模型。b. 正常结束当前 Hermes 会话退出 CLI/TUI等待 10-20 秒让会话提交后触发 OpenViking 的自动记忆提取c. 重新打开一个全新的 Hermes 会话直接提问我接下来优先级最高的开发任务是什么如果新会话能准确召回上一轮的内容说明 OpenViking 的长期持久化记忆、跨会话自动召回完全生效。3. 资源导入与分级加载测试进阶验证 OpenViking 特性如果要验证 OpenViking 的核心能力可以测试资源导入和分层读取用 viking_add_resource 导入这个文档https://hermes-agent.ac.cn/docs/user-guide/features/memory-providers导入完成后验证分级加载给我这个资源的 L0 摘要能返回100 token 的精简摘要就代表 L0/L1/L2 分层加载功能正常。三、OpenViking 侧反向验证确认数据写入外部存储如果要确认数据确实写入了 OpenViking而不是 Hermes 内置的MEMORY.md/USER.md可以从 OpenViking 侧反向验证1. OpenViking CLI 检索验证如果你安装了openviking包直接在终端执行检索ov命令需要后续先配置一下ov find 测试标记能搜到你刚才在 Hermes 里存储的内容就说明数据确实持久化到了 OpenViking 数据库。2. 本地存储目录验证本地部署的 OpenViking 数据默认存在~/.openviking/data目录或你ov.conf里配置的storage.workspace路径可以查看目录下是否生成了对应的记忆、资源文件确认持久化正常。四、OpenViking CLIov命令这是OpenViking 的客户端工具文档OpenViking CLI 配置指南远程自定义 只有 root key 的配置需要 --account 和 --user。 本地自定义 本地默认 URLhttp://127.0.0.1:1933 本地无鉴权服务通常不需要 API Key。ov命令之前的提示uadminUD26:~$ ov find 测试标记 OPENVIKING LANGUAGE Current: English ? Choose language ↑/↓ choose · Enter select · Esc back · CtrlC exit › English 简体中文 语言已切换为简体中文。 ov find 测试标记 ╭─ 配置错误 ───────────────────────────────────────────────────────────╮ │ 未检测到 ovcli.conf。请先运行 ov config 创建配置再使用服务器命令。 │ ╰──────────────────────────────────────────────────────────────────────╯ 下一步 ov config 创建配置可以通过ov config命令配置稍微麻烦也可以手动配置~/.openviking/ovcli.conf文件快捷设置语言uadminUD26:~$ ov language zh-CN语言已切换为简体中文。uadminUD26:~$ ov language enLanguage set to English.这个命令会创建~/.openviking/ovcli.settings.confov config配置ov configuadminUD26:~$ ov config ██████╗ ██████╗ ███████╗███╗ ██╗██╗ ██╗ ██╗ ██╗ ██╗ ██╗ ███╗ ██╗ ██████╗ ██╔═══██╗██╔══██╗██╔════╝████╗ ██║██║ ██║ ██║ ██║ ██╔╝ ██║ ████╗ ██║██╔════╝ ██║ ██║██████╔╝█████╗ ██╔██╗ ██║██║ ██║ ██║ █████╔╝ ██║ ██╔██╗ ██║██║ ███╗ ██║ ██║██╔═══╝ ██╔══╝ ██║╚██╗██║╚██╗ ██╔╝ ██║ ██╔═██╗ ██║ ██║╚██╗██║██║ ██║ ╚██████╔╝██║ ███████╗██║ ╚████║ ╚████╔╝ ██║ ██║ ██╗ ██║ ██║ ╚████║╚██████╔╝ ╚═════╝ ╚═╝ ╚══════╝╚═╝ ╚═══╝ ╚═══╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═══╝ ╚═════╝ ╭──────────────────────────── AI Agent 上下文数据库 ────────────────────────────╮ │ │ │ ⢻⣶⣄ │ │ ⠈⣿⣿⣟⢦⡀ │ │ ⣿⣿⣿⡌⢻⣦⡀ │ │ ⣿⣿⣿⣧ ⠹⣿⣦⡀ 当前配置 none │ │ ⢀⣿⣿⣿⣿ ⢹⣿⣷⡀ 状态 未配置 │ │ ⣼⣿⣿⣿⡟ ⠈⣿⣿⣷ VLM: 未知 │ │ ⢀⣼⣿⣿⣿⣿⣁⣀⣤⣤⣿⣿⣿⡄ ⡀ Embedding: 未知 │ │ ⢀⣾⡿⠿⠛⢛⣿⣿⣿⣿⣿⣿⣿⣿⡇⢀⣼⠃ 已保存配置 0 │ │ ⢀⣰⣿⣿⣿⣿⣿⠿⠟⠛⠋⣡⣿⠇ 配置目录 ~/.openviking │ │ ⠠⣶⣾⣿⣿⣿⣶⣤⣀ ⠾⠟⠛⠉⠉ ⣀⣤⣾⡿⠃ │ │ ⠙⢿⣿⣿⣿⣿⣿⣿⣷⣶⣶⣶⣶⣶⣿⣿⣿⡿⠟⠁ │ │ ⠈⠛⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠿⠛⠉ │ │ ⠈⠉⠉⠉⠁ │ ╰──────────────────────────────────────────────────────────── v0.4.11.dev0 ─────╯ ◆ 你想配置什么 ? 选择操作 ↑/↓ 选择 · Enter 确认 · Esc 返回 · CtrlC 退出 › 添加配置 切换配置 编辑配置 删除配置 用户管理 选择添加配置 ---------------------------------------------------------------------------------------- ◆ 创建新的 OpenViking 配置。 ? CLI 要连接到哪里 ↑/↓ 选择 · Enter 确认 · Esc 返回 · CtrlC 退出 › OpenViking 服务火山引擎云 自定义 选择自定义 ---------------------------------------------------------------------------------------- ? 配置名称可选 Enter 继续 · Esc 返回 · CtrlC 退出 留空将自动生成名称。 回车默认 ---------------------------------------------------------------------------------------- ? 服务器 URL Enter 继续 · Esc 返回 · CtrlC 退出 默认值 http://127.0.0.1:1933 回车默认 ---------------------------------------------------------------------------------------- ? API Key 类型 ↑/↓ 选择 · Enter 确认 · Esc 返回 · CtrlC 退出 本地服务可不填如果启用了认证请填写。 › 无密钥 / 本地开发 User API Key Root API Key 回车默认 ---------------------------------------------------------------------------------------- ? 账户 ID Enter 继续 · Esc 返回 · CtrlC 退出 本地无密钥身份。 默认值 default 回车默认 ---------------------------------------------------------------------------------------- ? 保存本地配置名称 ↑/↓ 选择 · Enter 确认 · Esc 返回 · CtrlC 退出 选择这个本地 CLI 配置的名称。 保存为 ovcli.conf.name当前配置为 ovcli.conf。 › 设置自定义本地名称 使用生成名称custom-d01089 返回 选择使用生成名称custom-d01089 ---------------------------------------------------------------------------------------- ? 保存配置 ↑/↓ 选择 · Enter 确认 · Esc 返回 · CtrlC 退出 › 保存并设为当前配置 仅保存 取消 回车默认 ---------------------------------------------------------------------------------------- ✓ 已保存配置 custom-d01089并设为当前配置。 保存到 /home/uadmin/.openviking/ovcli.conf.custom-d01089 当前配置 /home/uadmin/.openviking/ovcli.conf 下一步 运行 ov --help 查看可用命令。配置文件ovcli.conf~/.openviking/ovcli.conf{ account: default, user: default }手动配置ovcli.conf创建并配置文件~/.openviking/ovcli.confapi_key没有可以不写。{ url: http://127.0.0.1:1933, api_key: 你的服务端密钥, account: default, user: default }ov命令测试ov find 测试标记uadminUD26:~$ ov find 测试标记 cmd: ov find --uri -n 10 测试标记 10 results Ranked by relevance · limit 10 final results 1. memory · Level 2 · score 0.439 viking://user/default/peers/hermes/memories/preferences/user/开发环境配置.md - 开发环境为 WSL2 Ubuntu 24.04 - 当前测试标记为 openviking-20260723 2. memory · Level 2 · score 0.427 viking://user/default/peers/hermes/memories/preferences/mem_210444957cc5.md 开发环境是 WSL2 Ubuntu 24.04测试标记为 openviking-20260723 3. memory · Level 2 · score 0.348 viking://user/default/memories/cases/viking记忆保存与搜索验证.md # viking记忆保存与搜索验证 ## Task Signature 用户保存开发环境相关事实后执行语义搜索验证记忆可被正确检索再浏览viking根目录确认仓库结构... ...命令帮助ov --help