FT.CREATE
crea un indice per la ricerca.
Sintassi
FT.CREATE index ON HASH [PREFIX count prefix [prefix ...]] SCHEMA field_name [AS alias] VECTOR [HNSW|FLAT] attribute_count [attribute_name attribute_value])
index
(obbligatorio): il nome assegnato all'indice. Se esiste già un indice con lo stesso nome, viene restituito un errore.ON HASH
(facoltativo): indica il tipo di dati HASH. È supportato solo il tipo di dati HASH.PREFIX [count] [prefix]
(facoltativo): indica le chiavi hash da indicizzare.SCHEMA hash_field_name
(obbligatorio): il nome del campo hash_field_name dopo SCHEMA identifica il nome del campo nell'hash.[AS alias]
assegna il nomealias
come alias per l'attributo nome campo.
Tipi di campi
VECTOR
(obbligatorio): campo vettoriale per la ricerca vettoriale:[HNSW|FLAT]
(obbligatorio): algoritmo designato.FLAT
(forza bruta) o HNSW (Hierarchical Navigable Small World).attribute_count
(obbligatorio): numero totale di nomi e valori degli attributi passati nella configurazione dell'algoritmo.attribute_name attribute_value
: coppie chiave/valore che definiscono la configurazione dell'indice, ma sono specifiche per uno dei due algoritmi disponibili.Attributi dell'algoritmo HNSW obbligatori:
DIM
(obbligatorio): numero di dimensioni del vettore. I valori accettati sono1
-32768
.TYPE
(obbligatorio): il tipo di vettore. È supportato soloFLOAT32
.DISTANCE_METRIC
(obbligatorio): deve essere uno dei seguenti valori:L2
,IP
oCOSINE
.
Attributi facoltativi dell'algoritmo HNSW:
EF_RUNTIME
(facoltativo): imposta il conteggio dei vettori da esaminare durante un'operazione di query. Il valore predefinito è10
e il valore massimo è4096
. Puoi impostare questo valore parametro per ogni query eseguita. Valori più elevati aumentano i tempi di query, ma migliorano il richiamo delle query.M
(facoltativo): il conteggio degli archi in uscita massimi consentiti per ogni nodo del grafico in ogni livello. Il numero massimo di archi in uscita è 2 milioni per il livello 0. Il valore predefinito è 16. Il numero massimo è 512.EF_CONSTRUCTION
(facoltativo): imposta il conteggio dei vettori da esaminare durante la creazione dell'indice. Il valore predefinito è200
e il valore massimo è4096
. Valori più elevati aumentano il tempo necessario per creare gli indici, ma migliorano il rapporto di richiamo.INITIAL_CAP
(facoltativo): determina la capacità del vettore iniziale dell'indice. Il valore predefinito è1024
. Questo parametro determina l'allocazione della memoria dell'indice.
Attributi dell'algoritmo FLAT obbligatori:
DIM
(obbligatorio): numero di dimensioni del vettore.TYPE
(obbligatorio): il tipo di vettore. È supportato soloFLOAT32
.DISTANCE_METRIC
(obbligatorio): deve essere uno dei seguenti valori:L2
,IP
oCOSINE
.
Attributi facoltativi dell'algoritmo FLAT:
INITIAL_CAP
(facoltativo): determina la capacità del vettore iniziale dell'indice. Questo parametro determina l'allocazione della memoria dell'indice.
Esempi
Esempio di HNSW:
FT.CREATE my_index_name SCHEMA my_hash_field_key VECTOR HNSW 10 TYPE FLOAT32 DIM 20 DISTANCE_METRIC COSINE M 4 EF_CONSTRUCTION 100
Esempio di FLAT:
FT.CREATE my_index_name SCHEMA my_hash_field_key VECTOR Flat 8 TYPE FLOAT32 DIM 20 DISTANCE_METRIC COSINE INITIAL_CAP 15000