Sobre o projeto
OpenViking é um banco de dados de contexto open-source para agentes de IA, publicado pela volcengine. Seu objetivo é dar aos agentes um lugar persistente para armazenar conhecimento, lembrar usuários e reutilizar experiência entre sessões, unificando memória de agente, RAG de conhecimento e habilidades em um único sistema.
Conceito central: o contexto é organizado como um sistema de arquivos virtual sob o esquema de URI viking://. Os agentes operam nele com comandos familiares semelhantes a arquivos, como ls, tree, read, write, find, search e grep, navegando por diretórios, lendo ou editando conteúdo e pesquisando dentro de um escopo de diretório. Os resumos de diretório suportam carregamento sob demanda.
Os tipos de contexto incluem recursos (documentos, repositórios, páginas web), memórias (preferências e experiências do usuário) e habilidades (definições de como executar tarefas). Cada item tem uma URI viking:// para navegação e recuperação.
Carregamento em camadas: os diretórios contêm resumos L0 (resumos de uma frase para verificações de relevância), visões gerais L1 (estrutura e pontos-chave para planejamento) e detalhes completos L2 carregados apenas quando necessário. Isso visa reduzir tokens e latência, permitindo que os agentes avaliem a relevância antes de ler arquivos completos.
Recuperação: a busca vetorial encontra diretórios candidatos e depois explora seus conteúdos. O comando find executa uma consulta diretamente, enquanto search pode usar o contexto da sessão para planejar a recuperação. O README faz referência a pesquisas sobre consulta e manutenção cientes de diretório (TrieHI) e sobre RAG eficiente em tokens para documentos estruturados (VikingRAG).
Sessões e memória: confirmar uma sessão arquiva a conversa e inicia a extração em segundo plano. As políticas de memória controlam o que é retido, e os candidatos são comparados com memórias existentes para criação, mesclagem ou omissão. Com o VikingBot habilitado, ov compile usa uma habilidade para organizar o material de origem em um wiki, grafo de conhecimento ou relatório.
A introdução rápida requer Python 3.10+ e acesso a um modelo de embedding e um VLM (nuvem ou local). A instalação é via pip install openviking, seguida por openviking-server init, doctor e start. A configuração é gravada em ~/.openviking/ov.conf, com provedores suportados incluindo Volcengine, OpenAI, Codex OAuth, Kimi, GLM e Ollama local. O pacote inclui a CLI ov para adicionar recursos, verificar o status de tarefas, listar e visualizar a árvore do sistema de arquivos e executar consultas find/grep.
Integrações: integrações nativas são documentadas para Claude Code, Codex, Cursor, TRAE, OpenClaw, Hermes, OpenCode, pi, DeerFlow, DSH, Doubao Work e LangChain/LangGraph, usando hooks, MCP, plugins ou suporte integrado. Caminhos gerais de integração incluem Agent Plugins 1.0 e clientes MCP. SDKs são fornecidos para Python, Go e TypeScript, juntamente com uma API HTTP.
Outros componentes: um aplicativo de desktop beta para macOS e Windows x64 que configura integrações locais de agentes, inspeciona eventos de recall e captura e sincroniza memórias e habilidades locais; VikingBot, um framework de agentes construído sobre OpenViking, instalável via pip install "openviking[bot]" e iniciado com openviking-server --with-bot mais ov chat; e um web studio para navegar pelo contexto e experimentar a busca semântica, também disponível como demonstração hospedada.
Implantação: o servidor open-source roda sob AGPLv3 sem chave de ativação, suporta contas e isolamento de usuários, além de ACLs de recursos opcionais, e pode ser implantado via Docker. A autenticação deve ser configurada antes de expô-lo além do localhost. As edições comerciais incluem um SaaS gerenciado na Volcano Engine e uma edição autogerenciada/BYOC com implantação distribuída e suporte oficial.
O README relata avaliações de benchmark em memória de usuário em conversas longas (LoCoMo) e tarefas de agente multi-turno (tau2-bench), com scripts de reprodução no diretório benchmark. Ele também lista projetos parceiros e canais da comunidade (Lark, WeChat, Discord, X). O licenciamento difere por componente: projeto principal AGPLv3, crates/ov_cli e exemplos Apache 2.0, third_party sob suas licenças originais.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.