### OpenViking: AIエージェントのためのコンテキストデータベース
[English](README.md) / [中文](README_CN.md) / 日本語
Webサイト ·
GitHub ·
Issues ·
ドキュメント
[![][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]
👋 コミュニティに参加しよう
📱
Larkグループ ·
WeChat ·
Discord ·
X
---
## 概要
### エージェント開発における課題
AI時代において、データは豊富ですが、高品質なコンテキストは得がたいものです。AIエージェントを構築する際、開発者はしばしば以下の課題に直面します:
- **断片化されたコンテキスト**: メモリはコードに、リソースはベクトルデータベースに、スキルは散在しており、統一的な管理が困難です。
- **急増するコンテキスト需要**: エージェントの長時間タスクは実行のたびにコンテキストを生成します。単純な切り詰めや圧縮は情報の損失につながります。
- **検索効果の低さ**: 従来のRAGはフラットなストレージを使用し、グローバルな視点が欠けているため、情報の全体的なコンテキストを理解することが困難です。
- **観察不能なコンテキスト**: 従来のRAGの暗黙的な検索チェーンはブラックボックスのようで、エラー発生時のデバッグが困難です。
- **限定的なメモリの反復**: 現在のメモリはユーザーとのやり取りの記録に過ぎず、エージェント関連のタスクメモリが不足しています。
### OpenVikingのソリューション
**OpenViking**は、AIエージェント専用に設計されたオープンソースの**コンテキストデータベース**です。
私たちは、エージェントのためのミニマリストなコンテキストインタラクションパラダイムを定義し、開発者がコンテキスト管理の煩雑さから完全に解放されることを目指しています。OpenVikingは従来のRAGの断片化されたベクトルストレージモデルを捨て、革新的に**「ファイルシステムパラダイム」**を採用して、エージェントに必要なメモリ、リソース、スキルの構造化された組織を統一します。
OpenVikingを使えば、開発者はローカルファイルを管理するようにエージェントの頭脳を構築できます:
- **ファイルシステム管理パラダイム** → **断片化を解決**: ファイルシステムパラダイムに基づく、メモリ、リソース、スキルの統一的なコンテキスト管理。
- **階層型コンテキストローディング** → **トークン消費を削減**: L0/L1/L2の3層構造、オンデマンドでロードし、コストを大幅に削減。
- **ディレクトリ再帰検索** → **検索効果を向上**: ネイティブのファイルシステム検索手法をサポートし、ディレクトリ位置決めとセマンティック検索を組み合わせて、再帰的で精密なコンテキスト取得を実現。
- **可視化された検索軌跡** → **観察可能なコンテキスト**: ディレクトリ検索軌跡の可視化をサポートし、ユーザーが問題の根本原因を明確に観察し、検索ロジックの最適化を導くことを可能に。
- **自動セッション管理** → **コンテキストの自己反復**: 会話中のコンテンツ、リソース参照、ツール呼び出しなどを自動的に圧縮し、長期メモリを抽出して、使うほどエージェントを賢く。
---
## クイックスタート
### ローカルデプロイ
#### 前提条件
OpenVikingを始める前に、環境が以下の要件を満たしていることを確認してください:
- **Pythonバージョン**: 3.10以上
- **Rustツールチェーン**: Cargo(RAGFSおよびCLIコンポーネントのソースビルドに必要)
- **C++コンパイラ**: GCC 9以上 または Clang 11以上(コア拡張のビルドに必要)
- **オペレーティングシステム**: 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は3つのVLMプロバイダーをサポートしています:
| プロバイダー | 説明 | APIキーの取得 |
|----------|-------------|-------------|
| `volcengine` | Volcengine Doubaoモデル | [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) |
##### プロバイダー固有の注意事項