OpenVikingとは?AIエージェントの記憶・知識・スキルを統一管理するコンテキストDB
OpenVikingはVolcano Engineが公開するAIエージェント向けのオープンソース・コンテキストデータベースです。記憶・知識・スキルをファイルシステムのように統一管理し、viking://による段階的な読み込みでトークン消費を抑えつつ検索過程も可視化できる仕組みを開発者向けに解説します。
OpenVikingは、ByteDance系クラウドのVolcano Engine(火山引擎)がGitHubで公開しているオープンソースの「AIエージェント向けコンテキスト・データベース」です。公式タグラインは「Self-evolving Context Database for AI Agents. Unify Agent Memory, Knowledge RAG and Skills.」で、エージェントの記憶・知識(リソース)・スキルを一つの仕組みで統一管理することを目指します。ベクトルDBのブラックボックス検索ではなく、ファイルシステムのパラダイムでコンテキストを扱う点が特徴です。
仕組み — viking:// と3階層ロード
OpenVikingの中核はviking://という仮想ファイルシステムのURI体系です。viking://resources/my_project/docs/api/のようにプロジェクトのドキュメントを、viking://user/{user_id}/memories/preferences/のようにユーザーの好みを、.../skills/や.../peers/のようにスキルやピア情報をディレクトリで表現します。エージェントはこれらのパスをls・tree・findで「閲覧」でき、検索の軌跡が可視化・デバッグ可能になります。

viking://resources/volcengine/OpenViking/
├── README.md
├── docs/
│ ├── agent-integrations/
│ └── quickstart/
└── examples/情報の読み込みは3階層で段階的に行われます。まずL0(Abstract)で約100トークンの一文要約を読み、関連性を判定します。次にL1(Overview)で約2,000トークンの構造・要点を把握して計画を立てます。本当に必要な場合のみL2(Details)で完全な原データを読み込みます。ディレクトリ検索もスコアの高い場所から段階的に掘り下げ、必要な深さまでしか読まないためトークン消費を抑えられます。さらに、会話内容からユーザーの好みやエージェントの経験を自動でメモリ化する「self-evolving」の仕組みも備えています。
なぜ従来のRAGでは足りないのか
従来のベクトルDB型RAGは、埋め込みベクトルの類似度計算で関連チャンクを取得する仕組みが中心です。この方式には、(1)チャンクが選ばれた理由が見えにくいブラックボックス性、(2)まとめて注入することによるトークン消費の膨張、(3)検索プロセスを追跡しにくいこと、(4)検索結果をメモリとして再利用・進化させる仕組みが乏しいこと、といった課題が指摘されてきました。OpenVikingはファイルシステムという馴染み深いパラダイムと、L0/L1/L2の段階的読み込みでこれらに対応しようとしています。
OpenVikingと従来のRAG・エージェント内蔵メモリの比較
| 観点 | OpenViking | 従来のベクトルDB型RAG | エージェント内蔵メモリ |
|---|---|---|---|
| 管理単位 | ファイルシステム風のディレクトリ(メモリ/リソース/スキル) | ベクトル化されたチャンク | 会話ログやプロンプト内の断片 |
| 検索の可視性 | ls/tree/findで軌跡を確認できる | 類似度スコアによるブラックボックス | 内部状態が非公開なことが多い |
| トークン効率 | L0→L1→L2の段階読み込みで必要な深さのみ取得 | 関連チャンクをまとめて注入しがち | 会話履歴の蓄積でコンテキストが肥大化しやすい |
| メモリの自己進化 | セッションから自動でメモリ化(self-evolving) | 明示的な再インデックスが必要な場合が多い | エージェントやフレームワーク依存 |
| スキル管理 | viking://.../skills/として統一管理 | 別システムで管理することが多い | 標準化された仕組みを持たないことが多い |
対応エージェント・モデル
OpenVikingは複数のエージェント環境・モデルとの連携を想定しています。Claude Code の MCP 連携ガイドで扱うようなMCPクライアントに加え、Codex、OpenClaw で RAG ナレッジベースを作る手順で解説したOpenClaw、Hermes、Cursor、TRAE、OpenCode、pi、Agent Plugins 1.0、LangChain/LangGraph等が挙げられ、詳細は公式docsのAgent integrationsに記載されています。
- Claude Code
- Codex
- OpenClaw
- Hermes
- Cursor
- TRAE
- OpenCode
- pi
- Agent Plugins 1.0
- MCPクライアント
- LangChain/LangGraph
既定モデルはDoubao 2.0 Pro(VLM)とDoubao-embedding-vision-251215(埋め込み)で、OpenAI・Codex OAuth・Kimi・GLM、ローカルのOllamaにも対応します。
クイックスタート
公式READMEに沿ったセットアップは以下の通りです。
pip install openviking --upgrade
openviking-server init
openviking-server doctor
openviking-server起動後はovコマンドでコンテキストを操作します。
ov status
ov add-resource https://github.com/volcengine/OpenViking
ov ls viking://resources/
ov tree viking://resources/volcengine -L 2
ov find "what is openviking"ベンチマーク(開発元公表値)
以下はOpenViking 0.3.22時点の公式README記載の値で、開発元による公表値である点に留意してください。
| 指標 | 導入前 | 導入後 |
|---|---|---|
| LoCoMo(OpenClaw) | 24.20% | 82.08% |
| LoCoMo(Hermes) | 33.38% | 82.86% |
| LoCoMo(Claude Code) | 57.21% | 80.32% |
| tau2-bench(Retail) | 70.94% | 77.81%(+6.87pt) |
| tau2-bench(Airline) | 54.38% | 66.25%(+11.87pt) |
同READMEでは、入力トークンが34.3〜91.0%削減され、クエリ遅延も58.45〜66.10%改善したとされています。
ライセンスと商用利用の注意
OpenViking本体はGitHubでAGPLv3として公開され、crates/ov_cliとexamplesはApache 2.0です。商用SaaS組み込み時はAGPLの条件(ソースコード開示義務等)に注意が必要です。Volcano Engineはマネージド版(中国向け)、BytePlusのグローバル提供予定版、BYOC・エアギャップ向けのSelf-Managed Editionも用意します。基礎論文「VikingMem」(arXiv 2605.29640)はVLDB 2026採択済みです。
中小企業・受託開発での使いどころ
一般論として、社内ナレッジをAIエージェントに参照させる場面や、長期運用するサポートBotがやり取りを記憶として蓄積していく場面では、検索過程が可視化でき必要な情報だけ段階的に読み込める仕組みが有用と考えられます。ドキュメント量が増えるほどベクトル検索のノイズが問題になりやすいため、ディレクトリを整理できる設計は情報の追加・更新が多い運用と相性が良い場合があります。
よくある質問
従来のRAGと何が違うのですか?
従来のベクトルDB型RAGは埋め込み類似度によるブラックボックス検索が中心ですが、OpenVikingはviking://というファイルシステム風のURIでメモリ・知識・スキルを表現し、ls/tree/findで検索過程を可視化でき、L0/L1/L2の段階的読み込みで必要な深さのみ読む点が異なります。
無料で使えますか?
OpenViking本体はAGPLv3のオープンソースソフトウェアとして無料で利用できます。ただしcrates/ov_cliとexamplesはApache 2.0です。商用SaaSに組み込む場合はAGPLの条件(ソースコード開示義務など)の確認が必要です。別途Volcano Engineの商用マネージド版もあります。
Claude Codeで使うにはどうすればよいですか?
公式のAgent integrationsにClaude Codeを含む各エージェントとの連携手順が記載されています。基本方式は、OpenVikingのrecallをエージェントのコンテキストに注入し、セッションで得た情報を自動でメモリにコミットするというものです。
日本語の文書は扱えますか?
公式README・ドキュメントには日本語対応の明確な言及がありません。既定の埋め込みモデルはDoubao-embedding-vision-251215ですが、OpenAIやOllama等の別モデルにも対応しているため、日本語文書の扱いやすさは選択する埋め込みモデルの性能に依存すると考えられます。導入前に自社文書での検証をおすすめします。
まとめ
OpenVikingは、AIエージェントのメモリ・知識・スキルをファイルシステムのパラダイムで統一管理し、viking://によるURI体系とL0/L1/L2の段階的読み込みで検索の可視性とトークン効率を両立させようとするオープンソースのコンテキストデータベースです。ベンチマーク値は開発元の公表値である点を踏まえ、AGPLv3のライセンス条件を理解した上で、自社のエージェント運用への適用を検討する価値があるプロジェクトです。
お気軽にご相談ください
お問い合わせ