Поиск, данные и RAG Свое размещение бесплатно по выбранной лицензии; облако отдельно

Redis Vector Search

Redis Vector Search ищет близкие векторы и сочетает их с фильтрами; embeddings, документы и генерацию ответа готовят отдельные компоненты.

Что это

Redis Vector Search - возможность Redis Search, а не отдельная нейросеть. Она помогает находить близкие векторные представления текста или других данных. Это полезно для RAG и поиска похожих объектов, особенно если Redis уже есть в инфраструктуре.

В Redis 8 поиск и JSON входят в Open Source-дистрибутив. В более старой установке нельзя предполагать наличие команд FT.CREATE и FT.SEARCH: сначала проверьте версию и состав сервера.

До поиска нужно подготовить векторы и схему индекса. После поиска - проверить права пользователя и передать разрешенные фрагменты модели, если нужен ответ. База не читает PDF и не подтверждает правильность найденного факта сама.

Ключевые параметры

  • Категория: Векторные базы
  • Сложность: Для разработчика
  • Запуск: Около 30 минут
  • Open-source: Да
  • Данные: Не известно
  • Чувствительные данные: Только с настройками
API Код RAG redis-py node-redis Redis Insight Локальный desktop Сервер Self-hosted Cloud

Сильные стороны

  • Поддерживает точный FLAT и приближенный HNSW-поиск.
  • Векторный запрос можно сочетать с фильтрами метаданных.
  • Данные можно индексировать в HASH или JSON.
  • Для Redis 8 поиск доступен в Open Source-дистрибутиве.

Ограничения

  • Вектор запроса должен соответствовать размерности и представлению индекса.
  • HNSW ускоряет поиск ценой настройки и возможной потери полноты выдачи.
  • Индекс и исходные данные потребляют ресурсы сервера; нужен расчет объема.
  • Парсинг документов, embeddings, LLM и разграничение доступа остаются частью приложения.

Как использовать

1. Подготовка. Возьмите отдельный Redis 8 с доступом только с локального компьютера. Установите Python-пакет redis. Для первого теста используйте искусственные векторы, без загрузки документов или платной модели.
2. Настройка. В redis-cli выполните FT.CREATE demo_vectors ON JSON PREFIX 1 demo:v: SCHEMA $.vector AS vector VECTOR FLAT 6 TYPE FLOAT32 DIM 3 DISTANCE_METRIC COSINE. Добавьте JSON.SET demo:v:1 $ '{"vector":[1,0,0]}' и JSON.SET demo:v:2 $ '{"vector":[0,1,0]}'. Если команда неизвестна, проверьте сборку сервера.
3. Первый результат. В Python импортируйте Redis из redis и pack из struct. Создайте r = Redis(host="127.0.0.1", port=6381). Выполните r.execute_command("FT.SEARCH", "demo_vectors", "*=>[KNN 1 @vector $q AS distance]", "PARAMS", 2, "q", pack("<3f", 1, 0, 0), "SORTBY", "distance", "RETURN", 1, "distance", "DIALECT", 2). Ожидается ключ demo:v:1 с расстоянием около нуля. Если экземпляр использует другой порт, измените port.
4. Проверка. Повторите запрос с вектором [0,1,0]: ближайшим должен стать demo:v:2. Это проверка механики индекса, не качества смыслового поиска. Для реальных документов используйте одну embedding-модель, проверьте известные вопросы и фильтры доступа до передачи выдачи LLM.

Примеры сценариев

  • Найти фрагменты инструкции перед ответом модели.
  • Ограничить поиск метаданными разрешенного раздела.
  • Сравнить полноту точного и приближенного поиска.

Доступ и оплата

  • Модель оплаты: Open-source
  • Бесплатный тариф: Да
  • Работа в РФ: Нужно проверять
  • VPN: Не известно
  • Русский интерфейс: Не известно
  • Русский язык: Не известно

Для Redis 8+ действует выбор трех лицензий; собственное размещение требует инфраструктуры. Не путайте бесплатный локальный поиск с тарифом Redis Cloud и оплатой embedding-модели.

Когда не подходит

  • Искать по смыслу без embeddings
  • Считать ближайший фрагмент доказанным ответом
  • Заменить проверку прав одним промптом

Альтернативы

qdrant pgvector pinecone

Qdrant - специализированный векторный сервер. pgvector добавляет поиск в PostgreSQL. Pinecone предлагает управляемую инфраструктуру. Перенос требует согласовать схему, фильтры и модель embeddings, а не только сменить адрес.

Параметры для подборок

open-source Бесплатный тариф API vector-search semantic-search rag Для разработчиков rag-tools open-source-ai-tools

FAQ

Нужен отдельный Redis Stack?

Для Redis 8 поиск и JSON включены в Open Source-дистрибутив. Старую установку проверяйте отдельно: обычный Redis прежних версий может не иметь нужных команд.

Redis создает embeddings автоматически?

Описанный индекс хранит уже подготовленные векторы. Их генерацию и обновление нужно подключить отдельно.

Почему запрос не возвращает документы?

Проверьте наличие индекса, префикс ключей, JSONPath, размерность и тип вектора. Также проверьте завершение индексации и выбранные фильтры.

Что означает маленькое расстояние?

Близость в выбранном векторном пространстве. Она не гарантирует достоверность текста или право пользователя читать документ.

FLAT и HNSW одинаково точны?

FLAT выполняет точный поиск; HNSW - приближенный. Полноту и задержку оценивайте на своем наборе вопросов.

Лучше всего подходит

Типовые задачи

Добавить поиск похожих фрагментов к Redis Сочетать близость вектора и метаданные Проверить слой retrieval для RAG

Упоминания

Статьи, где встречается Redis Vector Search