FT.CREATE
cria um índice pesquisável.
Sintaxe
FT.CREATE index ON HASH [PREFIX count prefix [prefix ...]] SCHEMA field_name [AS alias] VECTOR [HNSW|FLAT] attribute_count [attribute_name attribute_value])
index
(obrigatório): é o nome que você dá ao índice. Se um índice com a mesma nome já existir, será retornado um erro.ON HASH
(opcional): indica o tipo de dados HASH. Somente o tipo de dados HASH é compatível.PREFIX [count] [prefix]
(opcional): indica quais chaves de hash devem ser indexadas.SCHEMA hash_field_name
(obrigatório): o hash_field_name após SCHEMA identifica o nome do campo. no hash.[AS alias]
atribui o nomealias
como um alias para o de nome do campo.
Tipos de campo
VECTOR
(obrigatório): campo vetorial para pesquisa vetorial:[HNSW|FLAT]
(obrigatório): algoritmo designado.FLAT
(força bruta) ou HNSW (Hierarchical Navigable Small World).attribute_count
(obrigatório): contagem total de nomes e valores do atributo. são transmitidos na configuração do algoritmo.attribute_name attribute_value
: pares de chave-valor que definem a configuração do índice, mas são específicos para um dos dois algoritmos disponíveis.Atributos obrigatórios do algoritmo HNSW:
DIM
(obrigatório): é a contagem de dimensões vetoriais. Os valores aceitos são de1
a32768
.TYPE
(obrigatório): o tipo de vetor. SomenteFLOAT32
é aceito.DISTANCE_METRIC
(obrigatório): precisa ser um dos seguintes:L2
,IP
ouCOSINE
.
Atributos opcionais do algoritmo HNSW:
EF_RUNTIME
(opcional): define a contagem de vetores a serem examinados durante uma operação de consulta. O padrão é10
, e o máximo é4096
. É possível definir esse valor de parâmetro para cada consulta executada. Valores mais altos aumentam o tempo das consultas, mas melhoram o recall da consulta.M
(opcional): a contagem máxima de arestas de saída permitidas para cada nó no gráfico em cada camada. O número máximo de arestas de saída é 2 milhões para a camada 0. O padrão é 16. O máximo é 512.EF_CONSTRUCTION
(opcional): define a contagem de vetores a serem examinados durante a criação do índice. O padrão é200
, e o máximo é4096
. Valores mais altos aumentam o tempo necessário para criar índices, mas melhoram a proporção de recuperação.INITIAL_CAP
(opcional): determina a capacidade vetorial inicial do índice. O padrão é1024
. Esse parâmetro determina a alocação de memória do índice.
Atributos obrigatórios do algoritmo FLAT:
DIM
(obrigatório): é a contagem de dimensões vetoriais.TYPE
(obrigatório): o tipo de vetor. Só há suporte paraFLOAT32
.DISTANCE_METRIC
(obrigatório): precisa ser um dos seguintes:L2
,IP
ouCOSINE
.
Atributos opcionais do algoritmo FLAT:
INITIAL_CAP
(opcional): determina a capacidade vetorial inicial do índice. Esse parâmetro determina a alocação de memória do índice.
Exemplos
Exemplo de 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
Exemplo de FLAT:
FT.CREATE my_index_name SCHEMA my_hash_field_key VECTOR Flat 8 TYPE FLOAT32 DIM 20 DISTANCE_METRIC COSINE INITIAL_CAP 15000