Repolode
infiniflow

infiniflow/infinity

База данных для LLM-приложений с гибридным поиском по плотным и разреженным векторам, тензорам и полнотекстовым данным.

Звёзды
4,762
Форки
458
Открытые issues
150
Последний коммит
позавчера

Что это?

Infinity — база данных для приложений на базе LLM и RAG. Она хранит структурированные данные вместе с плотными эмбеддингами, разреженными эмбеддингами, тензорами (multi-vector) и полнотекстовым содержимым, а также выполняет запросы, объединяющие эти типы поиска с фильтрами в одном обращении.

Среди вариантов поиска есть несколько алгоритмов переранжирования, например RRF, взвешенная сумма и ColBERT. В проекте есть Python SDK для подключения к серверному процессу и документация по HTTP API. Сервер можно развернуть с помощью Docker или как бинарный файл в Linux, macOS и Windows под WSL2. Для работы требуется процессор x86_64 с поддержкой AVX2 и Python 3.11+.

Проект написан на C++20 и поставляется в виде одного бинарного файла без внешних зависимостей. В репозитории опубликованы результаты бенчмарков для векторных и полнотекстовых запросов; они доступны на странице бенчмарков проекта.

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

  • 01Гибридный поиск с фильтрацией, объединяющий запросы по плотным и разреженным векторам, тензорам и полнотекстовым данным.
  • 02Алгоритмы переранжирования, включая RRF, взвешенную сумму и ColBERT.
  • 03Python SDK для подключения клиента к AI-сценариям.
  • 04HTTP API наряду с интерфейсом на Python.
  • 05Сервер в виде единственного бинарного файла без внешних зависимостей, который можно развернуть через Docker.

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

  • Бэкенд для получения данных в RAG-пайплайнах, которым нужны семантический поиск и поиск по ключевым словам.
  • Семантический поиск по документам или каталогам товаров с фильтрами по метаданным.
  • Рекомендательные системы, сочетающие сходство эмбеддингов со структурированными условиями.
  • Создание прототипов LLM-приложений с базой данных, доступной из Python.

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

  1. 1

    Создать каталог данных для сервера Infinity

    sudo mkdir -p /var/infinity && sudo chown -R $USER /var/infinity
  2. 2

    Загрузить Docker-образ сервера Infinity

    docker pull infiniflow/infinity:nightly
  3. 3

    Запустить контейнер сервера Infinity

    docker run -d --name infinity -v /var/infinity/:/var/infinity --ulimit nofile=500000:500000 --network=host infiniflow/infinity:nightly
  4. 4

    Установить Python-клиент Infinity

    pip install infinity-sdk==0.7.5

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

  • Требуется процессор x86_64 с поддержкой AVX2.
  • Пользователям Windows необходимо запускать его через WSL или WSL2 с Docker.

В подборках

Темы

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

Что такое infinity?
База данных для LLM-приложений с гибридным поиском по плотным и разреженным векторам, тензорам и полнотекстовым данным. Infinity — база данных для приложений на базе LLM и RAG. Она хранит структурированные данные вместе с плотными эмбеддингами, разреженными эмбеддингами, тензорами (multi-vector) и полнотекстовым содержимым, а также выполняет запросы, объединяющие эти типы поиска с фильтрами в одном обращении.
infinity можно использовать бесплатно? Какая у него лицензия?
infinity распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
infinity всё ещё поддерживается?
Активно поддерживается. Последний коммит в infinity — 5 нояб. 2026 г..
Для чего можно использовать infinity?
Бэкенд для получения данных в RAG-пайплайнах, которым нужны семантический поиск и поиск по ключевым словам. Семантический поиск по документам или каталогам товаров с фильтрами по метаданным. Рекомендательные системы, сочетающие сходство эмбеддингов со структурированными условиями. Создание прототипов LLM-приложений с базой данных, доступной из Python.
Как установить infinity?
Создать каталог данных для сервера Infinity: sudo mkdir -p /var/infinity && sudo chown -R $USER /var/infinity Загрузить Docker-образ сервера Infinity: docker pull infiniflow/infinity:nightly Запустить контейнер сервера Infinity: docker run -d --name infinity -v /var/infinity/:/var/infinity --ulimit nofile=500000:500000 --network=host infiniflow/infinity:nightly Установить Python-клиент Infinity: pip install infinity-sdk==0.7.5
Где скачать infinity?
Исходный код и инструкции по установке — на GitHub: https://github.com/infiniflow/infinity

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

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

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

3,2 тыс.+23 за неделю1,3 тыс.C++Apache-2.0Обновлён 4 часа назад

Расширение с открытым исходным кодом для поиска векторов по сходству в Postgres: храните эмбеддинги и выполняйте поиск рядом с реляционными данными.

23,6 тыс.+67 за неделю1,4 тыс.COtherАктивно поддерживаетсяОбновлён 3 дня назад