IA e LLMRetrieval

Ricerca per similarità vettoriale

Trova gli elementi più vicini per significato, filtrati per tag, dentro lo stesso motore che contiene gli elementi stessi.

indicizzata
HNSW
ricerca media
O(log N)
metriche di distanza
3
Passo 1 di 6
Crea l'indice

Dimensioni e metrica sono fisse per indice. I parametri HNSW si possono regolare quando serve.

Sessione di esempioplaying
# Crea l'indice
hotkv> VSIM.CREATEINDEX products 3 METRIC COSINE
OK

Una dimostrazione animata con comandi HotKV reali e risposte di esempio. Clicca su un passo qualsiasi per andarci. Comandi e risposte restano in inglese, esattamente come li digiti e li vedi in HotKV.

Il problema

Ricerca semantica, "altri simili" e deduplicazione si riducono tutti a una domanda. Quali elementi salvati sono più vicini a questo? Per rispondere di solito serve un database vettoriale dedicato accanto allo store principale, e ogni aggiornamento di prodotto deve essere scritto in entrambi.

Come lo gestisce HotKV

HotKV mantiene gli indici vettoriali HNSW nel motore. I dati dei prodotti vivono in chiavi normali, i vettori sono indicizzati con gli stessi nomi di chiave e i tag su quelle chiavi permettono a una ricerca di restare dentro una categoria o un tenant. Un solo percorso di scrittura, un solo sistema da gestire.

Passo dopo passo

Cosa succede, comando per comando

  1. 01

    Crea l'indice

    Dimensioni e metrica sono fisse per indice. I parametri HNSW si possono regolare quando serve.

    VSIM.CREATEINDEX products 3 METRIC COSINE
  2. 02

    Salva il prodotto

    I dati del prodotto sono un normale hash, con il nome di chiave che userà l'indice.

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

    Aggiungi i tag

    I tag sulla chiave permettono a una ricerca vettoriale di restare dentro una categoria.

    TAG.SET sku:1 shoes running
  4. 04

    Indicizza il suo vettore

    Il vettore entra nell'indice con lo stesso nome di chiave.

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

    Cerca per significato, dentro un tag

    Il testo della query viene trasformato in embedding, e tornano i prodotti più vicini che hanno il tag, con le loro distanze.

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

    Recupera cosa mostrare

    I risultati sono nomi di chiave, quindi i dati del prodotto sono a una lettura di distanza nello stesso server.

    HGETALL sku:1
Dove si usa

Scenari reali

Ricerca e-commerce

Gli acquirenti scrivono quello che vogliono con parole proprie. Il catalogo viene cercato per significato e filtrato sulla categoria e sul negozio in cui si trovano.

Rilevamento dei duplicati

Nuovi ticket di supporto o annunci vengono confrontati con quelli esistenti, e i quasi duplicati vengono uniti prima che li veda una persona.

Similarità di immagini e media

Gli embedding di un modello per immagini trovano foto o clip visivamente simili in tutta una libreria.

Integrato

Cosa ottieni

Indici HNSW

Ricerca approssimata dei vicini più prossimi che resta veloce su indici grandi, O(log N) in media.

VSIM.CREATEINDEXVSIM.SEARCH

Tre metriche

Coseno, L2 e prodotto scalare, scelti per indice.

METRIC

Filtri per tag

Limita una ricerca alle chiavi che hanno tutti i tag indicati.

TAG.SETFILTER

Persistente

Gli indici vengono conservati negli snapshot e nelle riscritture AOF come il resto dei tuoi dati.

VSIM.INFO

Domande frequenti

HotKV genera gli embedding?

No. Crea i vettori con il modello di embedding che preferisci e salvali con VSIM.SET.

In cosa è diversa dalle pipeline RAG?

VSIM è l'indice vettoriale generico. Le pipeline RAG si basano sulla stessa idea e aggiungono chunking, metadati e ricerca ibrida per parole chiave per i documenti.

Quali piani la includono?

La ricerca vettoriale e i tag sono comandi core e funzionano su ogni piano, senza bisogno di licenza.

Casi d'uso correlati

Provalo sul tuo carico di lavoro

HotKV parla il protocollo Redis, quindi puoi puntarci un client esistente ed eseguire questi stessi comandi.