Repolode
oceanbase

oceanbase/seekdb

AI-ориентированная поисковая база данных: хранит векторные, полнотекстовые, структурированные и полуструктурированные данные в одном совместимом с MySQL движке для памяти и поиска агентов.

Open source альтернатива:PineconeElasticsearch

Звёзды
3,165
Форки
414
Открытые issues
188
Последний коммит
10 часов назад

Что это?

seekdb — база данных для рабочих нагрузок AI-агентов. Она объединяет векторный и полнотекстовый поиск со скалярными фильтрами в одном движке и предоставляет к ним доступ через SQL, поэтому для поиска не нужны отдельные системы и объединение результатов на стороне клиента. База совместима с MySQL и поддерживает полнофункциональные ACID-транзакции. Её можно использовать как встраиваемую библиотеку из Python или Node.js, запускать как односерверный экземпляр или развернуть в составе распределённого кластера OceanBase.

Для управления состоянием агентов в проекте есть FORK DATABASE, создающая снимок базы данных по модели copy-on-write, и MERGE TABLE, которая переносит изменения из изолированной среды обратно в основную базу. Записи индексируются асинхронно через поток изменений в дельта-индекс HNSW, поэтому новые векторы можно искать вскоре после добавления. Проект также предоставляет пакеты для Python (pylibseekdb, pyseekdb) и JavaScript (@oceanbase/seekdb-node), а также интеграции с LangChain, LlamaIndex и Dify.

Ключевые возможности

  • 01Векторный и полнотекстовый поиск со скалярными фильтрами в одном SQL-запросе
  • 02Совместимость с протоколом MySQL и полнофункциональные ACID-транзакции
  • 03Встраиваемый режим для Python и Node.js, а также развёртывание в виде односерверного экземпляра
  • 04Снимки по модели copy-on-write с помощью FORK DATABASE и MERGE TABLE для изолированных сред агентов
  • 05Асинхронная индексация с инкрементальным HNSW для векторного поиска почти в реальном времени

Сценарии использования

  • Постоянная память и хранение состояния AI-агентов
  • Бэкенды для генерации с дополненной поиском (RAG), которым нужны и векторный, и поисковый по ключевым словам механизмы
  • Эксперименты с данными агентов в изолированной среде с возможностью отката или слияния изменений
  • Добавление семантического поиска в существующее приложение на базе MySQL

Быстрый старт

  1. 1

    Установите пакеты Python (требуется Python 3.11 или новее).

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

    Сохраните пример из README как example.py.

  3. 3

    Запустите пример: он должен вывести [{'value': 1}].

    python3 example.py

Что важно знать

  • Встроенное краткое руководство по Python требует Python 3.11 или новее.
  • Поддерживаются только платформы, перечисленные на странице пакета pylibseekdb.

Темы

Частые вопросы

Что такое seekdb?
AI-ориентированная поисковая база данных: хранит векторные, полнотекстовые, структурированные и полуструктурированные данные в одном совместимом с MySQL движке для памяти и поиска агентов. seekdb — база данных для рабочих нагрузок AI-агентов. Она объединяет векторный и полнотекстовый поиск со скалярными фильтрами в одном движке и предоставляет к ним доступ через SQL, поэтому для поиска не нужны отдельные системы и объединение результатов на стороне клиента. База совместима с MySQL и поддерживает полнофункциональные ACID-транзакции. Её можно использовать как встраиваемую библиотеку из Python или Node.js, запускать как односерверный экземпляр или развернуть в составе распределённого кластера OceanBase.
seekdb можно использовать бесплатно? Какая у него лицензия?
seekdb распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
seekdb всё ещё поддерживается?
Активно поддерживается. Последний коммит в seekdb — 21 окт. 2026 г..
Для чего можно использовать seekdb?
Постоянная память и хранение состояния AI-агентов Бэкенды для генерации с дополненной поиском (RAG), которым нужны и векторный, и поисковый по ключевым словам механизмы Эксперименты с данными агентов в изолированной среде с возможностью отката или слияния изменений Добавление семантического поиска в существующее приложение на базе MySQL
Как установить seekdb?
Установите пакеты Python (требуется Python 3.11 или новее).: python3 -m pip install -U pylibseekdb pymysql Сохраните пример из README как example.py. Запустите пример: он должен вывести [{'value': 1}].: python3 example.py
Где скачать seekdb?
Исходный код и инструкции по установке — на GitHub: https://github.com/oceanbase/seekdb

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты