
OpenViking
把 Agent 记忆、知识、技能装进一个库,上下文不再割裂
OpenViking 是一个面向 AI Agent 的自演化上下文数据库,把 Agent 记忆、知识 RAG 和技能(Skills)统一到同一套存储与检索层。它解决的是当前 Agent 开发中记忆、知识库、工具技能各自为政、上下文割裂的问题:对话历史存在向量库,文档知识另建 RAG 管道,技能又散落在插件系统里,导致 Agent 难以形成连贯的长期上下文。OpenViking 以数据库的形态提供统一上下文抽象,支持记忆的写入、检索与演化,内置 agentic RAG 能力,并可通过插件机制接入技能。项目用 Python 实现,提供 DSH 插件等集成方式,强调 self-evolving,即上下文会随使用不断更新和优化,而非静态索引。对需要长期记忆、多源知识融合和技能调度的 Agent 应用来说,它试图成为一层通用的上下文基础设施。
项目数据
使用教程
环境要求
- Python 3.10 或更高版本
- 可访问的 embedding 模型(云端或本地)
- 可访问的 VLM 模型(云端或本地)
- 可选:Docker(用于容器化生产部署)
安装与启动步骤
-
1确认 Python 版本
OpenViking 要求 Python 3.10+,先确认本机 python 版本满足要求,否则先升级 Python。
python --version -
2安装 OpenViking
通过 pip 安装 openviking 包,--upgrade 保证升级到最新版本。安装后同时获得 ov CLI 与 openviking-server。
pip install openviking --upgrade -
3初始化配置
运行 init 交互式配置 provider 与模型,结果写入 ~/.openviking/ov.conf。支持 Volcengine、OpenAI、Codex OAuth、Kimi、GLM 及本地 Ollama。
openviking-server init -
4检查配置连通性
doctor 用于检查配置是否正确以及能否连通所配置的模型服务,建议启动服务前先跑一遍。
openviking-server doctor -
5启动服务
直接运行 openviking-server 启动上下文数据库服务,保持该终端不关闭,另开终端执行后续 CLI 操作。
openviking-server -
6导入资源并检索
在另一个终端用 ov CLI 查看状态并导入一个仓库作为上下文资源,随后即可对该资源做检索。
ov status ov add-resource https://github.com/volcengine/OpenViking
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
~/.openviking/ov.conf | 是 | init 命令生成的配置文件,保存 provider 与模型设置 | /home/user/.openviking/ov.conf |
如何确认成功
在同一环境执行 openviking-server doctor 无报错,且另一个终端执行 ov status 能正常返回状态,即表示服务与 CLI 均已连通。
常见问题
Q:init 支持哪些模型提供方?
A:README 列出 Volcengine、OpenAI、Codex OAuth、Kimi、GLM,以及本地 Ollama。具体 provider 配置方式见官方 configuration 指南。
Q:配置文件写在哪里?
A:init 会把配置写入 ~/.openviking/ov.conf,需要修改模型或 provider 时编辑该文件后重新执行 doctor 校验。
Q:生产部署需要激活码吗?
A:不需要。开源服务端在 AGPLv3 许可下可部署到自有环境,无需激活密钥,但对外暴露前应先配置认证。
Q:服务端支持多用户吗?
A:支持账号与用户隔离,并提供可选的资源 ACL 控制,可参考官方多租户与 ACL 文档进行配置。
注意事项
- README 未给出端口、镜像名等部署细节,Docker 与服务器部署请参考官方 deployment 指南。
- 把服务暴露到 localhost 之外前,务必先按官方认证指南开启认证。
- 运行 openviking-server 后需保持终端会话,另开一个终端使用 ov CLI。
- 项目采用 AGPLv3 许可,商用与二次分发前请确认许可证要求。
核心亮点
- 统一记忆、RAG、技能三类上下文,减少多套存储与检索管道的拼接成本
- self-evolving 设计让上下文随交互持续更新,而非一次性静态索引
- Python 实现并提供插件机制,便于嵌入现有 Agent 框架和工具链
不足之处
- 作为上下文数据库,实际检索质量与演化效果依赖具体接入方式,需自行验证
- 项目热度高但生态与文档成熟度仍需在真实项目中检验
适用场景
- 构建需要长期记忆的对话式 Agent,跨会话保留用户偏好与历史
- 为 Agent 搭建统一知识库,把文档 RAG 与工具技能检索合并
- 多 Agent 协作场景下共享上下文与技能,避免各自维护独立记忆
替代项目
mem0、Letta、LlamaIndex
项目介绍
上一篇:llm-wiki-plugin
下一篇:last30days-skill
同类项目推荐
firecrawl
开源
网页抓取像喝水一样简单,开发者省下整周加班
The context API to search, scrape, and interact with the web at scale.
contoso-chat
开源
一键跑通 Azure RAG 应用,从代码到评估部署全流程
This sample has the full End2End process of creating RAG application with Prompty an···
graphify
开源
整个代码库画成一张图,找问题一眼定位
Turn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable k···
qiaomu-youtube-ai-podcast
开源
一站式索引AI播客,快速找到有文字稿和总结的节目
AI 播客索引:整理 AI 播客、中文简介、Transcript 状态和总结入口 | Curated AI podcast ···