### OpenViking:AI 智能体的上下文数据库
[English](README.md) / 中文 / [日本語](README_JA.md)
官网 ·
GitHub ·
问题反馈 ·
文档
[![][release-shield]][release-link]
[![][github-stars-shield]][github-stars-link]
[![][github-issues-shield]][github-issues-shield-link]
[![][github-contributors-shield]][github-contributors-link]
[![][license-shield]][license-shield-link]
[![][last-commit-shield]][last-commit-shield-link]
👋 加入我们的社区
📱
飞书群 ·
微信群 ·
Discord ·
X
---
✨ **2026年5月更新**:更新 OpenViking 在 User Memory、Agent Memory 和知识库问答三场景上的评测结果。→ 见 [评测结果](#-评测结果)。
## 概述
### 智能体开发面临的挑战
在 AI 时代,数据丰富,但高质量的上下文却难以获得。在构建 AI 智能体时,开发者经常面临以下挑战:
- **上下文碎片化**:记忆存储在代码中,资源在向量数据库中,技能分散在各处,难以统一管理。
- **上下文需求激增**:智能体的长运行任务在每次执行时都会产生上下文。简单的截断或压缩会导致信息丢失。
- **检索效果不佳**:传统 RAG 使用扁平化存储,缺乏全局视图,难以理解信息的完整上下文。
- **上下文不可观察**:传统 RAG 的隐式检索链像黑盒,出错时难以调试。
- **记忆迭代有限**:当前记忆只是用户交互的记录,缺乏智能体相关的任务记忆。
### OpenViking 解决方案
**OpenViking** 是专为 AI 智能体设计的开源**上下文数据库**。
我们的目标是为智能体定义一个极简的上下文交互范式,让开发者完全告别上下文管理的烦恼。OpenViking 抛弃了传统 RAG 的碎片化向量存储模型,创新性地采用 **"文件系统范式"** 来统一组织智能体所需的记忆、资源和技能。
使用 OpenViking,开发者可以像管理本地文件一样构建智能体的大脑:
- **文件系统管理范式** → **解决碎片化**:基于文件系统范式统一管理记忆、资源和技能。
- **分层上下文加载** → **降低 Token 消耗**:L0/L1/L2 三层结构,按需加载,显著节省成本。
- **目录递归检索** → **提升检索效果**:支持原生文件系统检索方式,结合目录定位和语义搜索,实现递归精准的上下文获取。
- **可视化检索轨迹** → **可观察上下文**:支持目录检索轨迹可视化,让用户清晰观察问题根源,指导检索逻辑优化。
- **自动会话管理** → **上下文自迭代**:自动压缩对话中的内容、资源引用、工具调用等,提取长期记忆,让智能体越用越聪明。
---
## 快速开始
### 本地部署
#### 前置条件
在开始使用 OpenViking 之前,请确保您的环境满足以下要求:
- **Python 版本**:3.10 或更高版本
- **Rust 工具链**:Cargo(从源码构建 RAGFS 和 CLI 组件需要)
- **C++ 编译器**:GCC 9+ 或 Clang 11+(构建核心扩展需要,必须支持 C++17)
- **操作系统**:Linux、macOS、Windows
- **网络连接**:需要稳定的网络连接(用于下载依赖和访问模型服务)
#### 1. 安装
##### Python 包
```bash
pip install openviking --upgrade --force-reinstall
```
##### Rust CLI(可选)
```bash
npm i -g @openviking/cli
```
或从源码构建:
```bash
cargo install --git https://github.com/volcengine/OpenViking ov_cli
```
#### 2. 模型准备
OpenViking 需要以下模型能力:
- **VLM 模型**:用于图像和内容理解
- **Embedding 模型**:用于向量化和语义检索
##### 支持的 VLM 提供商
OpenViking 支持多种 VLM 提供商:
| 提供商 | 描述 | 设置方式 |
|----------|-------------|-------------|
| `volcengine` | 火山引擎豆包模型 | [Volcengine 控制台](https://console.volcengine.com/ark/region:ark+cn-beijing/overview?briefPage=0&briefType=introduce&type=new&utm_content=OpenViking&utm_medium=devrel&utm_source=OWO&utm_term=OpenViking) |
| `openai` | OpenAI 官方 API | [OpenAI 平台](https://platform.openai.com) |
| `azure` | Azure OpenAI 服务 | [Azure OpenAI 服务](https://portal.azure.com) |
| `openai-codex` | 通过 ChatGPT/Codex OAuth 使用 Codex VLM | 使用 `openviking-server init` |
##### 提供商特定说明