OpenViking abandonne le stockage vectoriel RAG traditionnel et utilise plutôt un paradigme de système de fichiers. Il organise le contexte de l’agent (mémoires, ressources, compétences) sous les URI viking:// avec une structure à trois niveaux :
- L0 (Abstract): Résumé en une phrase pour une récupération rapide
- L1 (Overview): Informations essentielles et scénarios d’utilisation
- L2 (Details): Données originales complètes, chargées à la demande
Cela permet une récupération récursive par répertoires qui verrouille d’abord les répertoires à haut score, puis affine l’exploration du contenu. La trajectoire de récupération est entièrement observable, permettant aux utilisateurs de voir exactement comment le contexte est accédé.
Fonctionnalités clés :
- Gestion unifiée du contexte via un système de fichiers virtuel
- Chargement de contexte en plusieurs niveaux réduit la consommation de tokens
- Gestion automatique des sessions extrait les mémoires à long terme
- Trajectoires de récupération visualisées pour le débogage
OpenViking est construit avec Python, Go (AGFS) et C++. Il supporte les providers Volcengine Doubao, OpenAI et LiteLLM.