Redis®*: Zapytania

Ta dokumentacja jest częścią przewodnika Wyszukiwanie wektorowe i RAG. Pełny przewodnik znajdziesz tutaj: Wyszukiwanie semantyczne, rekomendacje i retrieval-augmented generation z Redis.

👋 Witamy w dokumentacji Stackhero!

Stackhero oferuje gotowe do użycia rozwiązanie Redis cloud, które zapewnia szereg korzyści, w tym:

  • Wbudowany web UI Redis Commander.
  • Nieograniczona wielkość i transfer wiadomości.
  • Bezproblemowe aktualizacje za pomocą jednego kliknięcia.
  • Optymalna wydajność i wysoki poziom bezpieczeństwa dzięki prywatnej, dedykowanej infrastrukturze.

Oszczędzaj czas i uprość sobie życie: wystarczy 5 minut, aby przetestować rozwiązanie hostingu Redis cloud od Stackhero!

Zapytanie K nearest neighbors (KNN) wygląda następująco. Wektor przekazywany jest jako surowe bajty float32 w formacie little-endian:

FT.SEARCH chunksIndex "*=>[KNN 5 @embedding $queryVector AS score]"
  PARAMS 2 queryVector "<rawBytes>"
  SORTBY score
  RETURN 2 content score
  DIALECT 2

Aby połączyć wyszukiwanie podobieństwa z filtrami, po prostu zamień * na wyrażenie filtrujące:

FT.SEARCH chunksIndex "(@documentId:{doc42} @publishedAt:[1735689600 +inf])=>[KNN 5 @embedding $queryVector AS score]"
  PARAMS 2 queryVector "<rawBytes>"
  SORTBY score
  DIALECT 2

Zapytania wektorowe wymagają DIALECT 2. Jeśli to pominiesz, zapytanie użyje starszej składni i zwróci błąd.