Repolode
oceanbase

oceanbase/seekdb

Um banco de dados de busca nativo para IA que armazena dados vetoriais, de texto completo, estruturados e semiestruturados em um único mecanismo compatível com MySQL, para memória e recuperação de agentes.

Alternativa open source a:PineconeElasticsearch

Estrelas
3,165
Forks
414
Issues abertas
188
Último commit
há 3 horas

O que é?

seekdb é um banco de dados desenvolvido para cargas de trabalho de agentes de IA. Ele combina busca vetorial, busca de texto completo e filtros escalares em um único mecanismo, disponibilizando tudo por SQL para que a recuperação não dependa de sistemas separados nem da combinação de resultados no lado do cliente. É compatível com MySQL e oferece transações ACID completas. Também pode ser executado como uma biblioteca incorporada em Python ou Node.js, como servidor de nó único ou como parte de um cluster distribuído do OceanBase.

Para gerenciar o estado dos agentes, o projeto adiciona FORK DATABASE, que cria um snapshot do banco de dados usando copy-on-write, e MERGE TABLE, que confirma as alterações do sandbox no banco de dados principal. As gravações são indexadas de forma assíncrona por meio de um change stream em um índice delta HNSW, permitindo consultar vetores recém-gravados pouco depois de sua inserção. O projeto também oferece pacotes para Python (pylibseekdb, pyseekdb) e JavaScript (@oceanbase/seekdb-node), além de integração com LangChain, LlamaIndex e Dify.

Recursos principais

  • 01Filtros vetoriais, de texto completo e escalares combinados em uma única consulta SQL
  • 02Compatibilidade com o protocolo MySQL e transações ACID completas
  • 03Modo incorporado para Python e Node.js, além de implantação como servidor de nó único
  • 04Snapshots copy-on-write com FORK DATABASE e MERGE TABLE para sandboxes de agentes
  • 05Pipeline de indexação assíncrona com HNSW incremental para busca vetorial quase em tempo real

Casos de uso

  • Armazenamento persistente de memória e estado para agentes de IA
  • Backends de geração aumentada por recuperação (RAG) que precisam combinar busca vetorial e por palavras-chave
  • Experimentação em sandbox com dados de agentes, com opção de reverter ou mesclar alterações
  • Adição de busca semântica a uma aplicação existente baseada em MySQL

Início rápido

  1. 1

    Instale os pacotes Python (é necessário ter o Python 3.11 ou superior).

    python3 -m pip install -U pylibseekdb pymysql
  2. 2

    Salve o exemplo do README como example.py.

  3. 3

    Execute o exemplo; ele deve imprimir [{'value': 1}].

    python3 example.py

Antes de usar

  • O início rápido integrado de Python requer o Python 3.11 ou superior.
  • As plataformas compatíveis se limitam às listadas na página do pacote pylibseekdb.

Tópicos

Perguntas frequentes

O que é seekdb?
Um banco de dados de busca nativo para IA que armazena dados vetoriais, de texto completo, estruturados e semiestruturados em um único mecanismo compatível com MySQL, para memória e recuperação de agentes. seekdb é um banco de dados desenvolvido para cargas de trabalho de agentes de IA. Ele combina busca vetorial, busca de texto completo e filtros escalares em um único mecanismo, disponibilizando tudo por SQL para que a recuperação não dependa de sistemas separados nem da combinação de resultados no lado do cliente. É compatível com MySQL e oferece transações ACID completas. Também pode ser executado como uma biblioteca incorporada em Python ou Node.js, como servidor de nó único ou como parte de um cluster distribuído do OceanBase.
seekdb é gratuito? Qual é a licença?
seekdb é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
seekdb ainda é mantido?
Manutenção ativa. O último commit de seekdb foi em 21 de out. de 2026.
Para que posso usar seekdb?
Armazenamento persistente de memória e estado para agentes de IA Backends de geração aumentada por recuperação (RAG) que precisam combinar busca vetorial e por palavras-chave Experimentação em sandbox com dados de agentes, com opção de reverter ou mesclar alterações Adição de busca semântica a uma aplicação existente baseada em MySQL
Como instalar seekdb?
Instale os pacotes Python (é necessário ter o Python 3.11 ou superior).: python3 -m pip install -U pylibseekdb pymysql Salve o exemplo do README como example.py. Execute o exemplo; ele deve imprimir [{'value': 1}].: python3 example.py
Onde consigo seekdb?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/oceanbase/seekdb

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados