AI i LLMWyszukiwanie

Wyszukiwanie podobieństwa wektorowego

Znajduj najbliższe elementy według znaczenia, filtrowane tagiem, w tym samym silniku, który przechowuje same elementy.

indeksowane
HNSW
średnie wyszukiwanie
O(log N)
miary odległości
3
Krok 1 z 6
Utwórz indeks

Wymiary i miara są stałe dla indeksu. Parametry HNSW można dostroić w razie potrzeby.

Przykładowa sesjaplaying
# Utwórz indeks
hotkv> VSIM.CREATEINDEX products 3 METRIC COSINE
OK

Animowany przegląd z prawdziwymi poleceniami HotKV i przykładowymi odpowiedziami. Kliknij dowolny krok, aby do niego przejść. Polecenia i odpowiedzi pozostają po angielsku, dokładnie tak, jak je wpisujesz i widzisz w HotKV.

Problem

Wyszukiwanie semantyczne, „więcej takich” i deduplikacja sprowadzają się do jednego pytania. Które zapisane elementy są najbliższe temu? Odpowiedź zwykle oznacza dedykowaną bazę wektorową obok głównego magazynu, a każda aktualizacja produktu musi być zapisana w obu.

Jak radzi sobie z tym HotKV

HotKV przechowuje indeksy wektorowe HNSW w silniku. Dane produktów żyją w zwykłych kluczach, wektory są indeksowane pod tymi samymi nazwami kluczy, a tagi na tych kluczach pozwalają wyszukiwaniu pozostać w kategorii lub u tenanta. Jedna ścieżka zapisu, jeden system do uruchomienia.

Krok po kroku

Co się dzieje, polecenie po poleceniu

  1. 01

    Utwórz indeks

    Wymiary i miara są stałe dla indeksu. Parametry HNSW można dostroić w razie potrzeby.

    VSIM.CREATEINDEX products 3 METRIC COSINE
  2. 02

    Zapisz produkt

    Dane produktu to zwykły hash, pod nazwą klucza, której użyje indeks.

    HSET sku:1 name "Trail runner" price 89
  3. 03

    Otaguj go

    Tagi na kluczu pozwalają wyszukiwaniu wektorowemu pozostać w kategorii.

    TAG.SET sku:1 shoes running
  4. 04

    Zaindeksuj jego wektor

    Wektor trafia do indeksu pod tą samą nazwą klucza.

    VSIM.SET products sku:1 0.12 0.80 0.31
  5. 05

    Szukaj według znaczenia, w obrębie tagu

    Tekst zapytania jest osadzany, a najbliższe produkty z tagiem wracają wraz z odległościami.

    VSIM.SEARCH products 3 0.10 0.82 0.29 FILTER shoes
  6. 06

    Pobierz to, co pokazać

    Wyniki to nazwy kluczy, więc dane produktu są o jeden odczyt dalej, na tym samym serwerze.

    HGETALL sku:1
Gdzie się sprawdza

Scenariusze z życia

Wyszukiwanie w e-commerce

Kupujący wpisują, czego chcą, własnymi słowami. Katalog jest przeszukiwany według znaczenia i filtrowany do kategorii oraz sklepu, w którym są.

Wykrywanie duplikatów

Nowe zgłoszenia lub oferty są porównywane z istniejącymi, a prawie-duplikaty są scalane, zanim zobaczy je człowiek.

Podobieństwo obrazów i mediów

Embeddingi z modelu obrazów znajdują wizualnie podobne zdjęcia lub klipy w całej bibliotece.

Wbudowane

Co dostajesz

Indeksy HNSW

Przybliżone wyszukiwanie najbliższych sąsiadów, które pozostaje szybkie na dużych indeksach, średnio O(log N).

VSIM.CREATEINDEXVSIM.SEARCH

Trzy miary

Cosinus, L2 i iloczyn skalarny, wybierane dla każdego indeksu.

METRIC

Filtry tagów

Ogranicz wyszukiwanie do kluczy, które mają każdy z podanych tagów.

TAG.SETFILTER

Trwałe

Indeksy są zachowywane w migawkach i przepisaniach AOF jak reszta Twoich danych.

VSIM.INFO

Częste pytania

Czy HotKV generuje embeddingi?

Nie. Twórz wektory wybranym modelem embeddingów i zapisuj je przez VSIM.SET.

Czym to się różni od potoków RAG?

VSIM to ogólny indeks wektorowy. Potoki RAG opierają się na tym samym pomyśle i dodają dzielenie na fragmenty, metadane i hybrydowe wyszukiwanie słów kluczowych dla dokumentów.

Które plany to zawierają?

Wyszukiwanie wektorowe i tagi to polecenia podstawowe i działają w każdym planie, bez licencji.

Powiązane przypadki użycia

Wypróbuj na własnym obciążeniu

HotKV mówi protokołem Redis, więc możesz skierować na niego istniejącego klienta i uruchomić te same polecenia.